For 18. Дано вещественное число A и целое число N (> 0). Используя один цикл, найти значение выражения
\(1 - A + A^2 - A^3 + ... + (-1)^N \cdot A^N.\)
Условный оператор не использовать.

Решение на Python 3

import random

N = random.randrange(1,10)
print('N = ', N)
A = random.randrange(-10,10)
print('A = ', A)

P = 1.0
S = 1.0
for i in range(1,N+1):
P *= A * (-1)
S += P
print(i," : ", P," : ", S)
print("Result:",S)

Решение на C++

#include <bits/stdc++.h>
using namespace std;

int main() {
srand((int)time(0));
int N;
N = rand() % 10 + 1;
float A;
//A = rand() % 100 / 10.0;
A = rand() % 10;
cout << "Number A: " << A << endl;
cout << "Number N: " << N << endl;

double p = 1, s = 1;
for(int i = 1; i <= N; i++) {
p *= A*(-1);
s += p;
cout << i << " : "<< p <<" : " << s << endl;
}
cout << "Result: " << s << endl;
return 0;
}