Писање факторијалног програма у Питхону

Writing Factorial Program Python



Факторијал броја је број који добијете након множења свих бројева од 1 до тог броја. Факторијал броја је означен симболом '!'. На пример, ако желимо да сазнамо фактор 4, означен са 4 !, онда би резултат био 1к2к3к4 = 24. Постоји много начина да сазнамо факторијел броја. Факторијал се може одредити у Питхону помоћу уграђене функције за петље и рекурзивне функције. Овај водич приказује како се факторијал броја може одредити помоћу различитих функција Питхона.

Пример 1: Пронађите факторијел броја помоћу уграђене функције

Питхон има уграђену функцију по имену факторијел () под математика модул. Следећа скрипта израчунава факторијел било ког броја помоћу уграђеног факторијел () функција. У овој скрипти, било који важећи цео број ће се узети као улаз, а функција ће израчунати факторску вредност тог броја и одштампати факторску вредност улазног броја.







#!/уср/бин/енв питхон3
# Увези математички модул
увоз математика
# Узмите било које бројеве вредности
н= инт(улазни('Унесите било који број:'))
# Сазнајте факторијел
чињеница= математика.факторски(н)
# Одштампајте резултат факторијела
принт('Фактор %д је %д'%(н,чињеница))

Оутпут



Након покретања скрипте, 3 се даје као улазни број, а излаз 3 !, 6 се штампа.







Пример 2: Пронађите факторијел броја помоћу петље

Следећа скрипта приказује како можете израчунати факторијал било ког броја без употребе било које уграђене функције у Питхону. Овде, за петља се користи за израчунавање факторијела броја. Било која улазна целобројна вредност биће узета и сачувана као именована променљива н . Променљива по имену чињеница се користи за складиштење факторског резултата и иницијализује се на 1 пре уласка у петљу. Ако је вредност од н је више од један или једнак један, тада ће петља понављати 1 до н+1 пут и израчунаће факторску вредност. У супротном случају, петља ће проверити да ли је вредност н једнака 0 или негативна. Ако је вредност н 0, тада ће факторски резултат бити 1; а ако је вредност н негативан цео број, тада ће се одштампати порука о грешци.

#!/уср/бин/енв питхон3

# Узмите нумеричку вредност и сачувајте у н
н= инт(улазни('Унесите било који број:'))
# Иницијализујте променљиву
чињеница= 1
# Сазнајте факторијел ако је улазни број већи од 0
акон> = 1:
# Итерирајте петљу да бисте повећали бројеве унутар 1 до н
заиу домет (1,н+1):
чињеница=чињеница * и
# Одштампајте фцаториал резултат
принт('Фактор %д је %д.'%(н,чињеница))
елсе:
акон== 0:
# Одштампајте резултат 0!
принт('Факторијал',н, 'је')
елсе:
# Одштампајте поруку о грешци
принт(„Морате унети било који позитиван број“)

Оутпут



Скрипта се извршава три пута, према следећем снимку екрана. Скрипта се извршава за улазне вредности 1, 6 и -8. Излази су приказани према улазним вредностима.

Пример 3: Пронађите факторијел броја помоћу рекурзивне функције

Функција која се позива током извршавања функције назива се рекурзивна функција. Следећа скрипта приказује начин израчунавања факторијала било ког целог броја помоћу рекурзивне функције. Након што за унос узмемо цео број, рекурзивна функција фацториал_ресурсиве () ће бити позван, са улазном вредношћу као аргументом. Ако је улазна вредност 0 или 1, биће враћено 1. Ако је улазна вредност негативна, вредност аргумента ће бити враћена. Ако је улазна вредност већа од 1, функција ће се позвати тако што ће одузимати аргумент за 1 изнова и изнова све док не израчуна резултат факторијела.

#!/уср/бин/енв питхон3
# Узмите нумеричку вредност
број= инт(улазни('Унесите било који број:'))
# Дефинишите рекурзивну функцију за израчунавање факторијела
деффацториал_рецурсиве(н):
# Чувајте факторске резултате од 0 и 1
акон== 0 илин== 1:
резултат= 1
# Сачувајте улазни број за негативну вредност
елифн< 1:
резултат=н
# Пронађите факторски резултат на рекурзиван начин
елсе:
резултат=н*факторски_рекурзивни(н-1)
# Врати резултат
повратакрезултат
# Позовите функцију
чињеница=фацториал_рецурсиве(број)
# Одштампајте резултат за позитиван број
акочињеница> = 0:
принт('Фактор %д је %д.'%(број,чињеница))
елсе:
# Одштампајте поруку за негативан број
принт(„Морате унети било који позитиван број“)

Оутпут

На следећем снимку екрана, скрипта се извршава три пута са вредностима 1, -5 и 8.

Пример 4: Пронађите факторијел броја са руковањем изузетком

Горња три скрипта само проверава да ли је број позитиван или негативан. Следећа скрипта израчунава факторијал путем уграђене функције фацториал () са руковањем изузецима. Ако корисник унесе било који унос без вредности целог броја, тада ће се генерисати изузетак и штампаће се порука о грешци.

#!/уср/бин/енв питхон3
# Увези математички модул
увоз математика
# Дефинишите три блок
покушати:
# Узмите нумеричку вредност
н= инт(улазни('Унесите било који број:'))
акон> = 0:
# Сазнајте факторијел
чињеница= математика.факторски(н)
# Одштампајте резултат факторијела
принт('Фактор %д је %д'%(н,чињеница))
елсе:
# Подигните изузетак ако је број негативан
подићи Изузетак(„Морате унети било који позитиван број“)
# одштампајте поруку о грешци за фракцијски унос
осим ВалуеЕррор:
принт('Морате да унесете цео број')
# Одштампајте поруку о грешци за негативан унос
осим Изузетак каоИ:
принт('Грешка:%с')

Оутпут

Скрипта се извршава три пута са вредностима х, -3 и 7 на следећем снимку екрана. Овде се изузетак генерише за вредност „х“.

Закључак

Овај водич приказује неке од различитих начина на које можете израчунати факторску вредност броја у Питхону. Концепт факторијала броја и методе засноване на Питхону за израчунавање факторијала треба да буду јасне читаоцу након читања овог водича.