Предмет: Информатика,
автор: Ha3gyl
Помогите с рекурсией пожалуйста! C++
Приложения:
Ответы
Автор ответа:
0
#include <iostream>
#include <cmath>
using namespace std;
double Func(double x, int n, int jz)
{
double Ch;
if (n == jz) return pow(1+ Func(x,n,jz-1),x);
else
if (jz > 1) return (pow(-1.0,(n-jz+1))*pow((n-jz+1+Func(x,n,jz-1)),x));
else return (pow(-1.0,n)*pow(n,x));
}
int main()
{
int n = 0;
double x,S;
S = 0;
cout << "n = ";
cin >> n;
cout << "x = ";
cin >> x;
S = Func(x,n,n);
cout << S << "n";
system("Pause");
return 0;
}
Пример:
n = 4
x = 2
1.66106e+010
Для продолжения нажмите любую клавишу . . .
Для n=4, x=2, последовательность должна выглядеть так:
(1+(2-(3+(4)^2)^2)^2)^2 = 16610312161
Всё верно.
#include <cmath>
using namespace std;
double Func(double x, int n, int jz)
{
double Ch;
if (n == jz) return pow(1+ Func(x,n,jz-1),x);
else
if (jz > 1) return (pow(-1.0,(n-jz+1))*pow((n-jz+1+Func(x,n,jz-1)),x));
else return (pow(-1.0,n)*pow(n,x));
}
int main()
{
int n = 0;
double x,S;
S = 0;
cout << "n = ";
cin >> n;
cout << "x = ";
cin >> x;
S = Func(x,n,n);
cout << S << "n";
system("Pause");
return 0;
}
Пример:
n = 4
x = 2
1.66106e+010
Для продолжения нажмите любую клавишу . . .
Для n=4, x=2, последовательность должна выглядеть так:
(1+(2-(3+(4)^2)^2)^2)^2 = 16610312161
Всё верно.
Похожие вопросы
Предмет: Геометрия,
автор: oiegstaq
Предмет: Математика,
автор: grybui1715
Предмет: Математика,
автор: grybui1715
Предмет: Математика,
автор: котя35
Предмет: Математика,
автор: strelkov04