Введение
В этом практическом занятии мы научимся находить факториал заданного числа с использованием рекурсии в языке программирования C. Факториал обозначается символом '!' и представляет собой произведение всех положительных целых чисел, меньших или равных заданному числу. Например, факториал числа 5 равен 5 x 4 x 3 x 2 x 1 = 120.
Инициализировать функцию main()
В функции main мы объявляем переменные для хранения введенного значения и вычисленного факториала. Затем мы просим пользователя ввести значение, для которого будет найден факториал.
#include <stdio.h>
int main()
{
int num, factorial;
printf("Enter a number: ");
scanf("%d", &num);
}
Создать функцию для вычисления факториала с использованием рекурсии
Теперь мы создадим функцию под названием "factorial", которая принимает целочисленный параметр "num" и возвращает целочисленное значение. В этой функции мы будем использовать рекурсию для вычисления факториала заданного числа. Если значение заданного числа равно 1 или 0, мы вернем 1, так как факториал обоих значений равен 1. Если заданное число больше 1, мы вычислим его факториал с использованием рекурсии и вернем значение.
int factorial(int num)
{
if(num == 0 || num == 1)
{
return 1;
}
else
{
return num * factorial(num-1);
}
}
Вызвать функцию факториала в функции main и вывести результат
Теперь мы вызовем функцию "factorial" внутри функции "main" и передадим введенное значение в качестве параметра. Затем мы сохраним возвращаемое значение в переменную "factorial" и выведем результат в консоль.
#include <stdio.h>
int factorial(int num);
int main()
{
int num, factorial;
printf("Enter a number: ");
scanf("%d", &num);
factorial = fact(num);
printf("Factorial of %d is %d", num, factorial);
return 0;
}
Компилировать и запустить программу
Теперь, когда программа написана, сохраните файл под именем'main.c' в директории '~/project/'. Откройте терминал и перейдите в директорию, содержащую файл'main.c'. Используйте следующую команду для компиляции программы:
gcc main.c -o main
После успешной компиляции программы используйте следующую команду для запуска программы:
./main
Полный код файла'main.c'
Используйте этот код в качестве ссылки при необходимости.
#include <stdio.h>
int factorial(int num);
int main()
{
int num, factorial;
printf("Enter a number: ");
scanf("%d", &num);
factorial = factorial(num);
printf("Factorial of %d is %d", num, factorial);
return 0;
}
int factorial(int num)
{
if(num == 0 || num == 1)
{
return 1;
}
else
{
return num * factorial(num-1);
}
}
Резюме
В этом практическом занятии мы узнали, как вычислять факториал заданного числа с использованием рекурсии на C. Мы создали функцию, которая использует рекурсию для нахождения факториала, и функцию main для ввода числа и вызова функции факториала.



