Wprowadzenie do programu faktorowego w C ++

Wszyscy badaliśmy silnię matematyki, łatwo to obliczyć. Ale staje się to skomplikowane, gdy musimy obliczyć silnię dla dużej liczby. W tym artykule zobaczymy, jak obliczyć silnię w języku C ++. Silnia jest oznaczona wykrzyknikiem, tj.! znak. Czynnik dla liczby ujemnej nie istnieje. Możemy obliczyć silnię tylko dla liczby dodatniej. Poniżej znajdują się przykładowe przykłady, które pokazują obliczenia silni dla liczb od 0 do 10.
Uwaga: Współczynnik 0 wynosi zawsze 1.

  • Silnia 0! = 1
  • Silnia 1! = 1
  • Silnia 2 = 2 * 1 = 2
  • Silnia 3! = 3 * 2 * 1 = 6
  • Silnia 4! = 4 * 3 * 2 * 1 = 24
  • Silnia 5! = 5 * 4 * 3 * 2 * 1 = 120
  • Silnia 6! = 6 * 5 * 4 * 3 * 2 * 1 = 720
  • Silnia z 7! = 7 * 6 * 5 * 4 * 3 * 2 * 1 = 5040
  • Silnia 8! = 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 40320
  • Silnia 9! = 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 362880
  • Silnia 10! = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = 3628800

Jak obliczyć czynnikowy w języku C ++ przy użyciu różnych metod?

Tutaj omówimy sposób obliczania silni w języku C ++ przy użyciu różnych metod, takich jak instrukcja if-else, dla pętli, metody rekurencji i funkcji za pomocą przykładów:

Przykład 1: Program czynnikowy w języku C ++ przy użyciu instrukcji if-else

Kod:

#include
using namespace std;
int main()
(
int num, i, fact_num = 1;
cout << "Enter the positive number to find the factorial: ";
cin >> num;
// if entered number is negative show the error
if (num< 0)
cout << "Error! You have entered negative number and Factorial for negative number does not exist.";
else
(
for(i = 1; i <= num; ++i)
(
fact_num*= i; // factorial = factorial*i;
)
cout << "Factorial of the entered number is " << fact_num;
)
return 0;
)

Wyjaśnienie powyższego kodu: W powyższym przykładzie zainicjalizowaliśmy trzy zmienne, tj. Num, I i fact_num. Tutaj do obliczenia silni użyliśmy instrukcji if-else. Jeśli jeszcze, instrukcja ma sprawdzić warunek przed obliczeniem silni dla wprowadzonej liczby. Jeśli liczba wprowadzona przez użytkownika jest ujemna, generowany jest błąd, który pokazuje Błąd! Wpisałeś liczbę ujemną, a funkcja czynnikowa dla liczb ujemnych nie istnieje. Jeśli wprowadzona liczba jest dodatnia, przeniesie kontrolę do instrukcji else, w której podany jest warunek obliczania silni.

Wynik:

Tutaj liczba wprowadzona przez użytkownika jest ujemna, dlatego pokazuje komunikat o błędzie.

Tutaj liczba wprowadzona przez użytkownika jest dodatnia, stąd daje wynik dla silni 5, tj. 120

Przykład 2: Program czynnikowy w języku C ++ przy użyciu pętli For

Kod:

#include
using namespace std;
int main()
(
int i, fact_num = 1, num;
cout << "Enter random number to find the factorial: ";
cin >> num;
for(i = 1; i <= num; i++)
(
fact_num = fact_num * i;
)
cout << "Factorial of the given number is " << fact_num;
return 0;
)

Wyjaśnienie powyższego programu: Aby obliczyć silnię, zastosowaliśmy metodę pętli. W pętli for wspominaliśmy o pewnych warunkach obliczania silni. Tutaj mamy zainicjalizowaną zmienną I z 1, która jest liczbą, którą zajmie dla i wynosi 1. Następnie wspomnieliśmy o warunku, że zmienna I powinna być równa i mniejsza niż liczba wprowadzona przez użytkownika. Następnie wspomnieliśmy o warunku przyrostu, aby za każdym razem zwiększać wartość zmiennej I w procesie iteracji.

Wynik:

Tutaj obliczyliśmy silnię dla 10.

Przykład 3: Program czynnikowy w języku C ++ przy użyciu metody rekurencyjnej

Kod:

#include
using namespace std;
int factorial(int num);
int main()
(
int num, fact_num;
cout << "Enter random number to find the factorial:";
cin >> num;
if(num < 0)
cout << "Negative integer factorial is not described." << endl;
else
(
fact_num = factorial(num);
cout << "Factorial of the given number is " << fact_num;
)
return 0;
)
int factorial(int num)
(
if (num == 0)
return 1;
else
return(num * factorial(num - 1));
)

Wyjaśnienie powyższego programu: W tym przypadku zastosowaliśmy metodę rekurencji do obliczenia silni. Metoda rekurencji jest dość podobna do metody funkcji. Metoda rekurencyjna jest najczęściej stosowana do łatwego rozwiązania problemu. Tutaj zadeklarowaliśmy silnię jako funkcję i przekazujemy num jako parametr. W metodzie silniejszej użyliśmy instrukcji if-else, aby sprawdzić, czy wprowadzona liczba jest dodatnia, czy nie, tak jak w pierwszym przykładzie. Następnie wywołaliśmy metodę czynnikową, w której wykonywane są instrukcje dla silni.

Wynik:

Przykład 4: Program czynnikowy w języku C ++ z wykorzystaniem funkcji

Kod:

#include
using namespace std;
int factorial(int n);
int main()
(
int num, fact_num = 1;
cout << "Enter random number to find the factorial: ";
cin >> num;
cout <<"Factorial of the given number is "<< factorial(num);
return 0;
)
int factorial(int n)
(
int count_num, result = 1;
for (count_num = 1; count_num <= n; count_num ++)
result = result * count_num;
return result;
)

Wyjaśnienie powyższego programu: W celu obliczenia silni dla liczby zastosowaliśmy metodę funkcji. Najpierw tworzymy funkcję silni i przekazujemy n jako parametr do przechowywania wartości liczbowej. W metodzie głównej zadeklarowaliśmy dane wejściowe, aby umożliwić użytkownikowi wprowadzenie wartości i dane wyjściowe w celu wydrukowania silni. Następnie wywołujemy funkcję silnią, w której zdefiniowana jest logika silni.

Wynik:

Wniosek

W tym artykule widzieliśmy programy, jak obliczyć silnię liczby w języku C ++ przy użyciu instrukcji warunkowych, dla pętli, metody rekurencji i funkcji wraz z przykładami. Mam nadzieję, że ten artykuł pomoże ci zrozumieć działanie silni w języku C ++.

Polecane artykuły

To jest przewodnik po programie Factorial w C ++. Tutaj omawiamy sposób obliczania silni w c ++ różnymi metodami. Możesz również przejrzeć nasze inne powiązane artykuły, aby dowiedzieć się więcej-

  1. Silnia w PHP
  2. Silnia w C
  3. Silnia w Pythonie
  4. Najlepszy kompilator C ++
  5. Program czynnikowy w JavaScript