Рубрики

C Программа для факториала числа

Факториал неотрицательного целого числа — это умножение всех целых чисел, меньших или равных n. Например, факториал 6 равен 6 * 5 * 4 * 3 * 2 * 1, что равно 720.

рекурсивные:

// C программа для поиска факториала с заданным числом

  
#include <stdio.h>

  
// Функция для поиска факториала данного числа

unsigned int factorial(unsigned int n)

{

    if (n == 0)

        return 1;

    return n * factorial(n - 1);

}

  
// Код драйвера

int main()

{

    int num = 5;

    printf("Factorial of %d is %d",

           num, factorial(num));

    return 0;

}

Выход:

Factorial of 5 is 120

Итеративный:

#include <stdio.h>

  
// Функция для поиска факториала данного числа

unsigned int factorial(unsigned int n)

{

    int res = 1, i;

    for (i = 2; i <= n; i++)

        res *= i;

    return res;

}

  
// Код драйвера

int main()

{

    int num = 5;

    printf("Factorial of %d is %d",

           num, factorial(num));

    return 0;

}

Выход:

Factorial of 5 is 120

Решение в одну строку (с использованием тернарного оператора):

// C ++ программа для поиска факториала с заданным числом

  
#include <iostream>

  

int factorial(int n)

{

    // одна строка для поиска факториала

    return (n == 1 || n == 0)

               ? 1

               : n * factorial(n - 1);

}

  
// Код драйвера

int main()

{

    int num = 5;

    printf("Factorial of %d is %d",

           num, factorial(num));

    return 0;

}
// Этот код предоставлен Rithika palaniswamy.

Выход:

Factorial of 5 is 120

Используя метод tgamma ():

Пример:

Input: n = 4
Output: 24

Синтаксис:

tgamma(n+1)=n!
It works upto 20! because c can't store large value

Реализация: используйте заголовочный файл math.h для этого

#include <math.h>
#include <stdio.h>

  

int main()

{

  

    // используем long long int

    // для больших значений n

    int n = 4;

  

    // tgamma (n + 1) = n!

    n = tgamma(n + 1);

  

    printf("%d", n);

    return 0;

    // Этот код предоставлен Soumyadip Basak

}

Выход:

24

Вышеуказанные решения вызывают переполнение для больших чисел. Пожалуйста, обратитесь к факториалу большого числа для решения, которое работает для больших чисел.

Пожалуйста, обратитесь к полной статье о программе для факториала числа для более подробной информации!

Рекомендуемые посты:

C Программа для факториала числа

0.00 (0%) 0 votes