Faktoriālās programmas rakstīšana Python

Writing Factorial Program Python



Skaitļa koeficients ir skaitlis, ko iegūstat, reizinot visus skaitļus no 1 līdz šim skaitlim. Skaitļa faktoriālu apzīmē ar simbolu “!”. Piemēram, ja mēs vēlamies noskaidrot faktoriālu 4, kas apzīmēts ar 4 !, tad rezultāts būtu 1x2x3x4 = 24. Ir daudz veidu, kā noskaidrot skaitļa faktoriālu. Faktoriālu var noteikt programmā Python, izmantojot iebūvēto funkciju cilpas un rekursīvajām funkcijām. Šī apmācība parāda, kā skaitļa faktoriālu var noteikt, izmantojot dažādas Python funkcijas.

1. piemērs: Atrodiet skaitļa faktoriālu, izmantojot iebūvēto funkciju

Python ir iebūvēta funkcija ar nosaukumu faktoriāls () saskaņā matemātika modulis. Šis skripts aprēķina jebkura skaitļa koeficientu, izmantojot iebūvēto faktoriāls () funkciju. Šajā skriptā par ievadi tiks uzskatīts jebkurš derīgs vesels skaitlis, un funkcija aprēķinās šī skaitļa faktoriālo vērtību un izdrukās ievades numura faktoriālo vērtību.







#!/usr/bin/env python3
# Importēt matemātikas moduli
importēt matemātika
# Ņemiet jebkādas skaitļu vērtības
n= int(ievadi('Ievadiet jebkuru numuru:'))
# Uzziniet faktoriālu
fakts= matemātika.faktoriāls(n)
# Izdrukājiet faktoriāla rezultātu
drukāt(' %D koeficients ir %d'%(n,fakts))

Izeja



Pēc skripta palaišanas 3 tiek ievadīts kā ievades numurs, un iznākums 3 !, 6 tiek izdrukāts.







2. piemērs: Atrodiet skaitļa faktoriālu, izmantojot cilpu

Šis skripts parāda, kā jūs varat aprēķināt jebkura skaitļa koeficientu, neizmantojot nevienu Python iebūvēto funkciju. Lūk, priekš cilpa tiek izmantota, lai aprēķinātu skaitļa faktoriālu. Jebkura ievadītā vesela skaitļa vērtība tiks ņemta un saglabāta kā mainīgais n . Mainīgais ar nosaukumu fakts tiek izmantots, lai saglabātu faktoriālo rezultātu, un pirms ievadīšanas ciklā tiek inicializēts uz 1. Ja vērtība n ir vairāk nekā viens vai vienāds ar vienu, tad cilpa atkārtosies 1 līdz n+1 reizes un aprēķinās faktoriālo vērtību. Pretējā gadījumā cilpa pārbaudīs, vai n vērtība ir vienāda ar 0 vai negatīva. Ja n vērtība ir 0, tad faktoriālais rezultāts būs 1; un ja n vērtība ir negatīvs vesels skaitlis, tiks izdrukāts kļūdas ziņojums.

#!/usr/bin/env python3

# Ņem skaitlisku vērtību un glabā n
n= int(ievadi('Ievadiet jebkuru numuru:'))
# Inicializējiet mainīgo
fakts= 1
# Uzziniet faktoriālu, ja ievades numurs ir lielāks par 0
jan> = 1:
# Atkārtojiet ciklu, lai reizinātu skaitļus no 1 līdz n
priekšiiekšā diapazons (1,n+1):
fakts=fakts * i
# Izdrukājiet fkatorisko rezultātu
drukāt(' %D koeficients ir %d.'%(n,fakts))
citādi:
jan== 0:
# Izdrukājiet rezultātu 0!
drukāt('Faktoriāls',n, 'ir')
citādi:
# Izdrukājiet kļūdas ziņojumu
drukāt('Jums jāievada jebkurš pozitīvs skaitlis')

Izeja



Skripts tiek izpildīts trīs reizes saskaņā ar šo ekrānuzņēmumu. Skripts tiek izpildīts ievades vērtībām 1, 6 un -8. Izejas tiek parādītas atbilstoši ievades vērtībām.

3. piemērs: Atrodiet skaitļa faktoriālu, izmantojot rekursīvo funkciju

Funkciju, kas sevi izsauc funkcijas izpildes laikā, sauc par rekursīvo funkciju. Šis skripts parāda veidu, kā aprēķināt jebkura vesela skaitļa koeficientu, izmantojot rekursīvu funkciju. Pēc vesela skaitļa skaitļa ievades tiek izmantota rekursīvā funkcija factorial_resursive () tiks izsaukts, ievadot vērtību kā argumentu. Ja ievadītā vērtība ir 0 vai 1, tad tiks atgriezta 1. Ja ievades vērtība ir negatīva, argumenta vērtība tiks atgriezta. Ja ievades vērtība ir lielāka par 1, tad funkcija pati sevi izsauks, atkal un atkal atņemot argumentu ar 1, līdz tā aprēķinās koeficienta rezultātu.

#!/usr/bin/env python3
# Ņem skaitlisku vērtību
numurs= int(ievadi('Ievadiet jebkuru numuru:'))
# Definējiet rekursīvo funkciju, lai aprēķinātu koeficientu
deffaktorial_recursive(n):
# Saglabājiet faktoriālo rezultātu 0 un 1
jan== 0 vain== 1:
rezultāts= 1
# Saglabājiet ievades numuru negatīvai vērtībai
elifsn< 1:
rezultāts=n
# Atrodiet faktisko rezultātu rekursīvā veidā
citādi:
rezultāts=n*faktoriālais_rekursīvs(n-1)
# Atgrieziet rezultātu
atgrieztiesrezultāts
# Izsauciet funkciju
fakts=faktorial_recursive(numurs)
# Izdrukājiet pozitīva skaitļa rezultātu
jafakts> = 0:
drukāt(' %D koeficients ir %d.'%(numurs,fakts))
citādi:
# Izdrukājiet ziņojumu par negatīvu skaitli
drukāt('Jums jāievada jebkurš pozitīvs skaitlis')

Izeja

Nākamajā ekrānuzņēmumā skripts tiek izpildīts trīs reizes ar vērtībām 1, -5 un 8.

4. piemērs. Atrodiet skaitļa faktoriālu ar izņēmumu apstrādi

Iepriekš minētie trīs skripti tikai pārbauda, ​​vai skaitlis ir pozitīvs vai negatīvs. Šis skripts aprēķina faktoriālu, izmantojot iebūvētu faktorial () funkciju ar izņēmumu apstrādi. Ja lietotājs ievada ievadi bez vesela skaitļa vērtības, tiks ģenerēts izņēmums un tiks izdrukāts kļūdas ziņojums.

#!/usr/bin/env python3
# Importēt matemātikas moduli
importēt matemātika
# Atturiet mēģinājuma bloku
pamēģini:
# Ņem skaitlisku vērtību
n= int(ievadi('Ievadiet jebkuru numuru:'))
jan> = 0:
# Uzziniet faktoriālu
fakts= matemātika.faktoriāls(n)
# Izdrukājiet faktoriāla rezultātu
drukāt(' %D koeficients ir %d'%(n,fakts))
citādi:
# Palieliniet izņēmumu, ja skaitlis ir negatīvs
paaugstināt Izņēmums('Jums jāievada jebkurš pozitīvs skaitlis')
# izdrukājiet kļūdas ziņojumu par daļēju ievadi
izņemot ValueError:
drukāt('Jums jāievada vesels skaitlis')
# Drukas kļūdas ziņojums par negatīvu ievadi
izņemot Izņēmums Un:
drukāt('Kļūda:%s'%Un)

Izeja

Skripts tiek izpildīts trīs reizes ar vērtībām h, -3 un 7 nākamajā ekrānuzņēmumā. Šeit izņēmums tiek ģenerēts vērtībai “h”.

Secinājums

Šī apmācība parāda dažus dažādus veidus, kā aprēķināt skaitļa faktoriālo vērtību programmā Python. Pēc šīs apmācības izlasīšanas lasītājam ir jābūt skaidram skaitļa faktoriāla jēdzienam un faktoru aprēķināšanas metodēm, kas balstītas uz Python.