Как надо записывать значение оператора цикла for в оператор if?

В самом внизу ссылка , по которой я писал код Если можете то , объясните , буду благодарен

Вот код , он работает но я неуверен что правильно

Вывод в консоли : x = 7
i = 5.20345e+174

 #include<stdio.h>
 #include<iostream>
 #include<math.h>
#include <Windows.h>
using namespace std;
 int main()
{
   double a, x;
    cout << " x = ";
 cin >> x;
   int i;
   for (i = 1; i <= 100; i++); - как это записать в if     правильно
  if (        ) ;
  
 a = pow((-1), i + 1)*pow(x, 2 * i) / 2 * i*(2 * i - 1);
 cout << " i = " << a << endl;
 system("pause");
 return 0;
 }

(https://i.stack.imgur.com/oubWk.jpg)


Ответы (1 шт):

Автор решения: Harry

Вы ничего на русском не вводите и не выводите, так что все эти пляски с бубном

SetConsoleOutputCP(1251);
SetConsoleCP(1251);

вам пока ни к чему. Далее, все вроде бы ничего... но вы же не знаете радиусы! То, что вы знаете — H и D, кстати, их надо ввести в программу:

double H, D;
cout << "H = "; cin >> H;
cout << "D = "; cin >> D;

Теперь посмотрим, что можно сделать... Пусть радиус большого круга — R, внутреннего — r. Тогда получается

введите сюда описание изображения

Решая эту систему уравнений, легко найти

введите сюда описание изображения

Так что площадь кольца

введите сюда описание изображения

В С++ это запишется как (с учетом вашего const double PI=3.141592653589793;)

double S = PI*H*H*(D+1)/(D-1);

Думаю, вывод S вы уже напишете самостоятельно? Тот, что написан у вас, обрывается на полусло....
Еще не хватает проверок на правильность вводимых данных — что H и D положительны, что D больше 1... Опять же — это вам домашнее задание :)

→ Ссылка