Дать определение рекурсивной функции, которая принимает в качестве аргумента целое число и возвращает факториал этого аргумента.
Напоминаем, что 3 факториал, записывается как 3!, что равно 3 х 2!, при этом 0!, по определению, равен 1. В общем случае n! = n * (n - 1)!.
Проверьте это в программе, которая использует цикл для того, чтобы позволить пользователю вводить различные значения, для которых программа вычисляет факториал.
#include <iostream.h>
#include <stdlib.h>
int main()
{
int ;
double ;
system("PAUSE");
return 0;
}
void countdown(int n)
{
cout « "Counting down ..." « n « "\n";
if (n > 0)
countdown(n-1); // функция вызывает саму себя
cout « n « ": Kaboom!\n";
}
2 комментария:
Good good good......
//7.5
#include
int fact(int n);
int main()
{
int val;
std::cout << "Enter value: ";
std::cin >> val;
std::cout << "Factorial "<< val << "! = " << fact(val) << std::endl;
std::cin.get();
std::cin.get();
return 0;
}
int fact(int n)
{
int fct;
if (n == 0) return 1;
fct = fact(n - 1)*n;
return fct;
}
Отправить комментарий