Задача на циклы в 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;
}

Вот правильное ришение, если кому то может будет интересно (друг закинул ответ)

→ Ссылка