ВУЗ:
Составители:
Рубрика:
94
{
f(); f(10); f(9, 99);
return 0;
}
void f(int a, int b)
{
cout<<"a= "<< a <<", b= "<<b<<'\n';
}
Рекурсия
Языки C и C++ поддерживают рекурсию. Рекурсивная функция – это
функция, которая содержит вызов этой же функции. Вызов функции может
осуществляться и через другую функцию.
Пример. Вычисление факториала n!=1*2*…*n. Соотношение
n! = (n -1)! * n
позволяет реализовать рекурсивную функцию вычисления n!.
#include <iostream>
using namespace std;
int fn(int n);
int main()
{
int n,m;
cout<<"\n n=";cin>>n;
m=fn(n);
cout<<"\n "<<n<<"!= "<<m<<"\n";
return 0;
}
int fn(int n)
{
// Вычисление факториала
if (n==1) return 1;
else return fn(n-1) * n;
}
Пример. Снова числа Фибоначчи.
{
f(); f(10); f(9, 99);
return 0;
}
void f(int a, int b)
{
cout<<"a= "<< a <<", b= "<
using namespace std;
int fn(int n);
int main()
{
int n,m;
cout<<"\n n=";cin>>n;
m=fn(n);
cout<<"\n "<Страницы
- « первая
- ‹ предыдущая
- …
- 92
- 93
- 94
- 95
- 96
- …
- следующая ›
- последняя »
