Pagsulat ng Factorial Program sa Python

Writing Factorial Program Python



Ang factorial ng isang numero ay ang numero na nakukuha mo pagkatapos ng pagpaparami ng lahat ng mga numero mula 1 hanggang sa numerong iyon. Ang kadahilanan ng isang numero ay tinukoy ng simbolong ‘!’. Halimbawa Ang factorial ay maaaring matukoy sa Python gamit ang built-in na function para sa loop at recursive function. Ipinapakita ng tutorial na ito kung paano matutukoy ang factorial ng isang numero gamit ang iba't ibang mga pag-andar ng Python.

Halimbawa 1: Hanapin ang factorial ng isang numero gamit ang built-in na pagpapaandar

Ang Python ay may built-in na function na pinangalanan factorial () sa ilalim ng matematika modyul Kinakalkula ng sumusunod na script ang factorial ng anumang bilang gamit ang isang built-in factorial () pagpapaandar Sa script na ito, ang anumang wastong bilang ng integer ay kukuha bilang input, at kakalkulahin ng pagpapaandar ang halaga ng kadahilanan ng numerong iyon at mai-print ang halagang halaga ng input number.







#! / usr / bin / env python3
# Mag-import ng module ng matematika
angkat matematika
# Kumuha ng anumang mga halaga ng numero
n= int(input('Ipasok ang anumang numero:'))
# Alamin ang factorial
katotohanan= matematika.kadahilanan(n)
# I-print ang resulta ng factorial
mag-print('Ang kadahilanan ng% d ay% d'%(n,katotohanan))

Paglabas



Matapos patakbuhin ang script, ang 3 ay ibinigay bilang input number at ang output ng 3 !, 6, ay nakalimbag.







Halimbawa 2: Hanapin ang factorial ng isang numero gamit ang loop

Ipinapakita ng sumusunod na script kung paano mo makakalkula ang factorial ng anumang numero nang hindi gumagamit ng anumang built-in na function sa Python. Narito, ang para sa loop ay ginagamit upang makalkula ang factorial ng isang numero. Ang anumang halaga ng input integer ay kukuha at maiimbak bilang variable na pinangalanan n . Isang variable na pinangalanan katotohanan ay ginagamit upang iimbak ang resulta ng kadahilanan at isinalin mula sa 1 bago pumasok sa loop. Kung ang halaga ng n ay higit sa isa o katumbas ng isa, pagkatapos ay ang loop ay umuulit para sa 1 hanggang n + 1 beses at makakalkula ang halaga ng factorial. Kung hindi man, susuriin ng loop kung ang halaga ng n ay katumbas ng 0 o negatibo. Kung ang halaga ng n ay 0, kung gayon ang resulta ng kadahilanan ay 1; at kung ang halaga ng n ay isang negatibong integer, pagkatapos ang isang mensahe ng error ay mai-print.

#! / usr / bin / env python3

# Kumuha ng numerong halaga at itabi sa n
n= int(input('Ipasok ang anumang numero:'))
# Ipasimula ang variable
katotohanan= 1
# Alamin ang factorial kung ang input number ay higit sa 0
kungn> = 1:
# Iterate ang loop sa maraming mga numero sa loob ng 1 hanggang n
para saakosa saklaw (1,n +1):
katotohanan=katotohanan * i
# I-print ang resulta ng fcatorial
mag-print('Ang factorial ng% d ay% d.'%(n,katotohanan))
iba pa:
kungn== 0:
# I-print ang resulta ng 0!
mag-print('Ang kadahilanan ng',n, 'ay')
iba pa:
# I-print ang mensahe ng error
mag-print('Kailangan mong maglagay ng anumang positibong numero')

Paglabas



Ang script ay naisakatuparan ng tatlong beses, ayon sa sumusunod na screenshot. Isinasagawa ang script para sa mga halaga ng pag-input na 1, 6, at -8. Ang mga output ay ipinapakita ayon sa mga halaga ng pag-input.

Halimbawa 3: Hanapin ang factorial ng isang numero gamit ang recursive function

Ang pagpapaandar na tumatawag sa sarili nito habang isinasagawa ang pagpapaandar ay tinatawag na recursive function. Ipinapakita ng sumusunod na script ang paraan upang makalkula ang factorial ng anumang bilang ng integer gamit ang isang recursive function. Matapos kunin ang bilang ng integer bilang input, ang recursive function factorial_resursive () tatawagin, na may halaga ng pag-input bilang isang argument. Kung ang halaga ng pag-input ay 0 o 1, pagkatapos ang 1 ay ibabalik. Kung negatibo ang halaga ng pag-input, ibabalik ang halaga ng argument. Kung ang halaga ng pag-input ay higit sa 1, pagkatapos tatawagin ng function ang sarili nito sa pamamagitan ng pagbabawas ng argument sa pamamagitan ng 1 nang paulit-ulit hanggang sa makalkula nito ang resulta ng factorial.

#! / usr / bin / env python3
# Kumuha ng halagang bilang
numero= int(input('Ipasok ang anumang numero:'))
# Tukuyin ang recursive function upang makalkula ang factorial
deffactorial_recursive(n):
# Iimbak ang factorial na resulta ng 0 at 1
kungn== 0 on== 1:
resulta= 1
# Iimbak ang numero ng pag-input para sa negetive na halaga
elifn< 1:
resulta=n
# Hanapin ang resulta ng factorial sa recursive na paraan
iba pa:
resulta=n * factorial_recursive(n-1)
# Ibalik ang resulta
bumalik karesulta
# Tumawag sa pagpapaandar
katotohanan=factorial_recursive(numero)
# I-print ang resulta para sa positibong numero
kungkatotohanan> = 0:
mag-print('Ang factorial ng% d ay% d.'%(numero,katotohanan))
iba pa:
# I-print ang mensahe para sa negatibong numero
mag-print('Kailangan mong maglagay ng anumang positibong numero')

Paglabas

Sa sumusunod na screenshot, ang script ay naisakatuparan ng tatlong beses sa mga halagang 1, -5, at 8.

Halimbawa 4: Hanapin ang factorial ng isang numero na may pagbubukod sa pagbubukod

Sinusuri lamang ng tatlong mga script sa itaas kung positibo o negatibo ang numero. Kinakalkula ng sumusunod na script ang factorial sa pamamagitan ng isang built-in na factorial () na function na may pagbubukod sa pagbubukod. Kung ang gumagamit ay nagbibigay ng anumang pag-input nang walang halaga ng integer, magkakaroon ng isang pagbubukod, at isang mensahe ng error ay mai-print.

#! / usr / bin / env python3
# Mag-import ng module ng matematika
angkat matematika
# Defie ang try block
subukan mo:
# Kumuha ng halagang bilang
n= int(input('Ipasok ang anumang numero:'))
kungn> = 0:
# Alamin ang factorial
katotohanan= matematika.kadahilanan(n)
# I-print ang resulta ng factorial
mag-print('Ang kadahilanan ng% d ay% d'%(n,katotohanan))
iba pa:
# Taasan ang pagbubukod kung ang numero ay negatibo
taasan Pagbubukod('Kailangan mong maglagay ng anumang positibong numero')
# i-print ang mensahe ng error para sa praksyonal na input
maliban sa ValueError:
mag-print('Kailangan mong ipasok ang numero ng integer')
# I-print ang mensahe ng error para sa negatibong pag-input
maliban sa Pagbubukod bilangAt:
mag-print('Error:% s'% At)

Paglabas

Ang script ay naisakatuparan ng tatlong beses sa mga halagang h, -3, at 7 sa sumusunod na screenshot. Dito, nabubuo ang pagbubukod para sa halagang, 'h.'

Konklusyon

Ipinapakita ng tutorial na ito ang ilan sa iba't ibang mga paraan na maaari mong kalkulahin ang factorial na halaga ng isang numero sa Python. Ang konsepto ng factorial ng isang bilang at mga pamamaraan na nakabatay sa Python para sa pagkalkula ng factorial ay dapat na malinaw sa mambabasa pagkatapos basahin ang tutorial na ito.