Иногда бывает необходимо вызывать некоторую функцию из этой же функции. Такие функции называются рекурсивными. Ниже приводится два примера использования рекурсивных функций.
//==========================================================
// Name : recursion_expo.cpp
// Author : Marat
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//==========================================================
#include <iostream>
using namespace std;
//Рекурсивная функция возведения в степень
double expo(double a, int n)
{
double expo(double a, int n);
if (n==0) return 1;
if (a==0) return 0;
if (n>0) return a*expo(a, n-1);
if (n<0) return expo(a, n+1)/a;
}
int main() {
double expo(double a, int n);
double a;
int n;
double c;
cout<<"\nInput real base of exponent = ";
cin>>a;
cout<<"\nInput integer degree of exponent = ";
cin>>n;
c=expo(a,n);
cout<<"\nExponential of ["<<a<<"] in ["<<n<<"] degree = "<<c<<endl;
return 0;
}
Результат:
Input real base of exponent = 6.57 Input integer degree of exponent = 4 Exponent of [6.57] in [4] degree is 1863.21
//==========================================================
// Name : recursion_factorial.cpp
// Author : Marat
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//==========================================================
#include <iostream>
using namespace std;
long fact(int k)//Рекурсивная процедура
{
long fact(int k);
if (k<0) return 0;
if (k==0) return 1;
return k*fact(k-1);
}
int main() {
long fact(int k);
int k;
cout<<"\nInput integer number, please = ";
cin>>k;
int n=fact(k);
cout<<"\nFactorial of ["<<k<<"] = "<<n<<endl;
return 0;
}
Результат:
Input integer number, please = 5 Factorial of [5]=120
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.