Šiame pavyzdyje išmoksite apskaičiuoti vartotojo įvesto skaičiaus faktorialą.
Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C programavimo temas:
- C duomenų tipai
- C programavimo operatoriai
- C jei … dar pareiškimas
- C kilpai
Teigiamo skaičiaus n faktorą pateikia:
factorial of n (n!) = 1 * 2 * 3 * 4… .n
Neigiamo skaičiaus faktorialas neegzistuoja. 0 faktorius yra 1.
Skaičio faktorius
#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; )
Rezultatas
Įveskite sveiką skaičių: 10 koeficientas iš 10 = 3628800
Ši programa paima iš vartotojo teigiamą sveikąjį skaičių ir apskaičiuoja faktorialą naudodama for
kilpą.
Kadangi skaičiaus faktorialas gali būti labai didelis, faktoriaus kintamojo tipas deklaruojamas kaip unsigned long long
.
Jei vartotojas įveda neigiamą skaičių, programa rodo pasirinktinį klaidos pranešimą.
Skaičiaus faktorialą taip pat galite rasti naudodami rekursiją.