Pisanie programu czynnikowego w Python

Pisanie programu czynnikowego w Python
Skutpicie liczby to liczba, którą otrzymujesz po pomnożeniu wszystkich liczb od 1 do tej liczby. Czynnik liczby jest oznaczony przez '!„Symbol. Na przykład, jeśli chcemy znaleźć czynnik 4, oznaczony 4!, wówczas wynik byłby 1x2x3x4 = 24. Istnieje wiele sposobów na znalezienie liczby. Twierdzenie można określić w Pythonie za pomocą wbudowanej funkcji dla funkcji pętli i rekurencyjnych. Ten samouczek pokazuje, w jaki sposób można określić czynnik liczby za pomocą różnych funkcji Pythona.

Przykład 1: Znajdź czynnik liczby za pomocą wbudowanej funkcji

Python ma wbudowaną funkcję o nazwie silnia() pod matematyka moduł. Poniższy skrypt oblicza czynnik dowolnej liczby za pomocą wbudowanego silnia() funkcjonować. W tym skrypcie każdy prawidłowy numer liczby całkowitych zostanie przyjęty jako wejście, a funkcja obliczy wartość czynnikową tego numeru i wydrukuje wartość czynnikową numeru wejściowego.

#!/usr/bin/env python3
# Importuj moduł matematyki
Importuj matematyka
# Weź dowolne wartości liczbowe
n = int (input („Wprowadź dowolną liczbę:”))
# Znajdź czynnik
fakt = matematyka.czynnik (n)
# Wydrukuj wynik czynnika
Drukuj („Factoria %D to %d” %(n, fakt))

Wyjście

Po uruchomieniu skryptu 3 jest podawane jako numer wejściowy i wyjście 3!, 6, jest drukowane.

Przykład 2: Znajdź czynnik liczby za pomocą pętli

Poniższy skrypt pokazuje, w jaki sposób możesz obliczyć czynnik dowolnej liczby bez użycia wbudowanej funkcji w Python. Tutaj Do Pętla służy do obliczenia czynnika liczby. Każda wartość liczby całkowitych wejściowych zostanie pobrana i przechowywana jako wymieniona zmienna N. Zmienna o nazwie fakt jest używany do przechowywania wyniku czynnikowego i jest inicjowany do 1 przed wejściem do pętli. Jeśli wartość N jest więcej niż jeden lub równy jednemu, wówczas pętla będzie iterować przez 1 do n+1 razy i będzie obliczyć wartość czynnikową. W przeciwnym razie pętla sprawdzi, czy wartość n jest równa 0, czy ujemna. Jeśli wartość n wynosi 0, wówczas wynik czynnikowy wyniesie 1; a jeśli wartość n jest negatywną liczbą całkowitą, zostanie wydrukowany komunikat o błędzie.

#!/usr/bin/env python3
# Weź wartość liczbową i przechowuj w n
n = int (input („Wprowadź dowolną liczbę:”))
# Zainicjuj zmienną
FAKT = 1
# Dowiedz się, czy numer wejściowy to więcej niż 0
Jeśli n> = 1:
# Iteruj pętlę do wielu liczb w odległości 1 do n
Dla i w zakresie (1, n+1):
fakt = fakt * i
# Wydrukuj wynik fcatorial
wydruku.„ %(n, fakt))
w przeciwnym razie:
Jeśli n == 0:
# Wydrukuj wynik 0!
Drukuj („The Factorial of”, n, „is”)
w przeciwnym razie:
# Wydrukuj komunikat o błędzie
Drukuj („musisz wprowadzić dowolny numer dodatni”)

Wyjście

Skrypt jest wykonywany trzykrotnie, zgodnie z następującym zrzutem ekranu. Skrypt jest wykonywany dla wartości wejściowych 1, 6 i -8. Wyjścia są pokazane zgodnie z wartościami wejściowymi.

Przykład 3: Znajdź czynnik liczby za pomocą funkcji rekurencyjnej

Funkcja, która wywołuje się podczas wykonywania funkcji, nazywa się funkcją rekurencyjną. Poniższy skrypt pokazuje sposób obliczenia czynnika dowolnego numeru liczb całkowitych za pomocą funkcji rekurencyjnej. Po przyjęciu liczby całkowitej jako wejścia, funkcja rekurencyjna factorial_resursive () zostanie wywołane, z wartością wejściową jako argumentu. Jeśli wartość wejściowa wynosi 0 lub 1, wówczas 1 zostanie zwrócony. Jeśli wartość wejściowa jest ujemna, wartość argumentu zostanie zwrócona. Jeśli wartość wejściowa jest więcej niż 1, funkcja wywoła się odejmując argument przez 1.

#!/usr/bin/env python3
# Weź wartość liczbową
numer = int (input („Wprowadź dowolny numer:”))
# Zdefiniuj funkcję rekurencyjną, aby obliczyć czynnik
def factorial_recursive (n):
# Przechowuj wynik czynnikowy 0 i 1
Jeśli n == 0 lub n == 1:
wynik = 1
# Przechowuj numer wejściowy dla wartości nerwowej
Elif n < 1:
wynik = n
# Znajdź wynik czynnikowy w sposób rekurencyjny
w przeciwnym razie:
wynik = n*factorial_recursive (n-1)
# Zwróć wynik
Wynik zwrotu
# Wywołaj funkcję
FACT = factorial_recursive (liczba)
# Wydrukuj wynik dla liczby dodatniej
Jeśli fakt> = 0:
wydruku.„ %(liczba, fakt))
w przeciwnym razie:
# Wydrukuj wiadomość dla numeru ujemnego
Drukuj („musisz wprowadzić dowolny numer dodatni”)

Wyjście

W poniższym zrzucie ekranu skrypt jest wykonywany trzy razy z wartościami 1, -5 i 8.

Przykład 4: Znajdź czynnik liczby z obsługą wyjątków

Powyższe trzy skrypty sprawdzają tylko, czy liczba jest dodatnia, czy ujemna. Poniższy skrypt oblicza czynnik za pośrednictwem funkcji wbudowanej () z obsługą wyjątków. Jeśli użytkownik podaje jakiekolwiek dane wejściowe bez wartości całkowitej, zostanie wygenerowany wyjątek, a komunikat o błędzie zostanie wydrukowany.

#!/usr/bin/env python3
# Importuj moduł matematyki
Importuj matematyka
# Defie the try blok
próbować:
# Weź wartość liczbową
n = int (input („Wprowadź dowolną liczbę:”))
Jeśli n> = 0:
# Znajdź czynnik
fakt = matematyka.czynnik (n)
# Wydrukuj wynik czynnika
Drukuj („Factoria %D to %d” %(n, fakt))
w przeciwnym razie:
# Podnieś wyjątek, jeśli liczba jest ujemna
Podnieś wyjątek („musisz wprowadzić dowolny numer dodatni”)
# Wydrukuj komunikat o błędzie dla wprowadzania frakcyjnego
Z wyjątkiem ValueerRor:
drukuj („musisz wprowadzić numer liczby całkowitej”)
# Wydrukuj komunikat o błędzie dla negatywnych danych wejściowych
z wyjątkiem wyjątku jako E:
Drukuj („Błąd: %s ' %e)

Wyjście

Skrypt jest wykonywany trzykrotnie z wartościami h, -3 i 7 na poniższym zrzucie ekranu. Tutaj wyjątek jest generowany dla wartości „H.'

Wniosek

Ten samouczek pokazuje różne sposoby obliczenia wartości czynnikowej liczby w Pythonie. Koncepcja wzroku liczby i metod opartych na Pythonie do obliczania czynnika powinna być jasna dla czytelnika po przeczytaniu tego samouczka.