Нужно составить программу используя for с учетом того, что массивы использовать нельзя и предусмотреть обработку неправильно введенных значений
Условие следующее вывести сумму квадратов соседних чисел от 12 до 80 по одному числу в строке. Не могу разобраться как заставить вывести сумму квадратов соседних чисел в этом промежутке. Помогите пожалуйста. Вот что имею на данный момент:
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "RUS");
int i;
{
cout << "Сумма квадратов соседних чисел в промежутке от 12 до 80:" << endl;
for (i = 12; i <= 80; ++i)
cout << 2*(i*i+1) << '\n';
}
return 0;
}
Ответы (1 шт):
Автор решения: AR Hovsepyan
→ Ссылка
Для начала можете написать простой подсчет суммы квадратов соседних чисел:
for (unsigned a = 12; a < 80; ++a)
cout << 2 * a * (a + 1) + 1 << '\n';
Потому, что: a^2 + (a + 1)^2 =
a^2 + a^2 + 2 * a + 1 =
2 * a^2 + 2 * a + 1 =
2 * (a^2 + a) + 1 =
2 * a * ( a + 1) + 1