C/C++
Как это реализовать в с++? вычислить сумму S =1*3+3*5+5*7 +..+(2n -1)(2n +1) для заданного n
С математикой у меня сильные проблемы. Можете написать и на другом ЯП, я разберусь
Это вас в школе плюсами насилуют? Изверги.
Вот на Java:

Вот на 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;
И никаких подпрограмм, циклов, рекурсий - только простейшее арифметическое выражение.
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;
И никаких подпрограмм, циклов, рекурсий - только простейшее арифметическое выражение.
Арман Серикбаевич
Я про конечные числовые ряды вообще ни разу не слышал.
Арман Серикбаевич
Вот известный кодер говорит, что за последние 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");
}
#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");
}
Похожие вопросы
- В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива
- Сформировать матрицу B(M, N) элементами которой являются случайные числа, равномерно распределенные в интервале (-5, 7
- Вычислить сумму ряда c++
- Вычислить сумму бесконечного ряда c точностью e=0.0001
- Дана матрица nxn, вычислить суммы диагональных элементов( главной и побочной ) отдельно, но в одной функции на языке си.
- Найти решение уравнения(arccos(x-1)+x^3-4=0) на указанном диапазоне ([0.5;1.9]). используя численный метод-Метод Ньютона
- Напишите пожалуйста код на 5 вариант очень простой я на 1 курсе вуза и нужен простой код.
- Учу с++, можете объяснить на пальцах? не понимаю работу условия в теле цикла... if ((i+1)%3 != 0)
- C++ как написать if(x!=1,2,3)
- Для заданных с клавиатуры значений переменных x и n вычислить
Только вот задача вообще без циклов и рекурсий решается.