Задача на циклы в C
Вообщем, есть задание:
x, a, n - целые.
Нужно написать код который будет находить результат (С или С ++). Вроде бы написал, но при проверке результатов ошибки. Сижу 2 день не могу найти ришение, возможно кто-то подкинет хотя бы идею для ришения данной задачи.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/* ((...(x + a)^2 + a)^2 + ... + a)^2 + a */
int main()
{
int UserVarN, UserVarA, UserVarX, Result, ResultSum;
printf("Enter numbers N, X, A: ");
scanf("%d %d %d", &UserVarN, &UserVarX, &UserVarA);
for(int i = 0; i < UserVarN; i++)
{
Result = pow((UserVarX + UserVarA), 2);
ResultSum += pow((Result + UserVarA), 2);
}
Result = ResultSum + UserVarA;
printf("Result: %d\n", Result);
system("pause");
return 0;
}
Зарание спасибо за любую помощь или идеи).
Ответы (2 шт):
Автор решения: Harry
→ Ссылка
Я бы делал так:
int main()
{
int N;
double a, x;
printf("Enter numbers N, X, A: ");
scanf("%d %lf %lf", &N, &x, &a);
for(int i = 0; i < N; i++) x = (x+a)*(x+a);
x += a;
printf("Result: %lf\n", x);
}
Автор решения: vampl
→ Ссылка
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/* ((...(x + a)^2 + a)^2 + ... + a)^2 + a */
int main()
{
int UserVarN, UserVarA, UserVarX, Result;
printf("Enter numbers N, X, A: ");
scanf("%d %d %d", &UserVarN, &UserVarX, &UserVarA);
Result = pow((UserVarX + UserVarA), 2);
for(int i = 0; i < UserVarN; i++)
{
Result = pow((Result + UserVarA), 2);
}
Result += UserVarA;
printf("Result: %d\n", Result);
system("pause");
return 0;
}
Вот правильное ришение, если кому то может будет интересно (друг закинул ответ)
