W tym przykładzie nauczysz się obliczać silnię liczby wprowadzonej przez użytkownika.
Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w C:
- C Typy danych
- Operatorzy programowania C.
- C if… else Statement
- C jak pętla
Silnia liczby dodatniej n jest wyrażona wzorem:
factorial of n (n!) = 1 * 2 * 3 * 4… .n
Silnia liczby ujemnej nie istnieje. Silnia 0 to 1.
Silnia liczby
#include int main() ( int n, i; unsigned long long fact = 1; printf("Enter an integer: "); scanf("%d", &n); // shows error if the user enters a negative integer if (n < 0) printf("Error! Factorial of a negative number doesn't exist."); else ( for (i = 1; i <= n; ++i) ( fact *= i; ) printf("Factorial of %d = %llu", n, fact); ) return 0; )
Wynik
Wpisz liczbę całkowitą: 10 Silnia 10 = 3628800
Ten program pobiera dodatnią liczbę całkowitą od użytkownika i oblicza silnię przy użyciu for
pętli.
Ponieważ silnia liczby może być bardzo duża, typ zmiennej silni jest deklarowany jako unsigned long long
.
Jeśli użytkownik wprowadzi liczbę ujemną, program wyświetli niestandardowy komunikat o błędzie.
Silnię liczby można również znaleźć za pomocą rekursji.