C/C++

Как это реализовать в с++? вычислить сумму S =1*3+3*5+5*7 +..+(2n -1)(2n +1) для заданного n

С математикой у меня сильные проблемы. Можете написать и на другом ЯП, я разберусь
Это вас в школе плюсами насилуют? Изверги.
Вот на Java:
Shuhrat Norov
Shuhrat Norov
21 258
Лучший ответ
Андрей Лаптев И чем твой код внутри main отличается от аналогичного кода на C++? Только тем, что на Java консольный ввод / вывод более громоздкий?

Только вот задача вообще без циклов и рекурсий решается.
А теперь немного той самой математики:

S = sum[i = 1, n][(2 * i - 1)(2 * i + 1)] =
sum[i = 1, n][4 * i ** 2 - 1] =
4 * sum[i = 1, n][i ** 2] - n =
4 * n * (n + 1) * (2 * n + 1) / 6 - n =
2 * n * (n + 1) * (2 * n + 1) / 3 - n

Подробности: http://www.math24.ru/конечные-числовые-ряды.html - сумма квадратов

Весь код:

long n;
cin >> n;
cout << 2 * n * (n + 1) * (2 * n + 1) / 3 - n;

И никаких подпрограмм, циклов, рекурсий - только простейшее арифметическое выражение.
Андрей Лаптев
Андрей Лаптев
66 067
Арман Серикбаевич Я про конечные числовые ряды вообще ни разу не слышал.
Арман Серикбаевич Вот известный кодер говорит, что за последние 20 лет математика ему ни разу не понадобилась.
#include <iostream>
#include <iomanip>
using namespace std;
double F1;
double sum(unsigned n, double s = 0) {
if (n == 0) return s;
s += (2 * n - 1) * (2 * n + 1);
return sum(n - 1, s);
}
int main() {
cout << "n: ";
unsigned n;
cin >> n;
auto s = sum(n);
cout << "Sum: " << fixed << setprecision(0) << s << '\n';
system("pause > nul");
}
AP
Alekcandr Polunin
93 366