Screenshot of my codeсоздавая вверх серию в C++
Эй, я только начал изучать C++, и я пытаюсь получить его просуммировать ряд:
K + N-1Σn = K [ -1^(n)/(n + 1) 2]
Мне удалось получить его, чтобы сказать мне n-ый термин ранее, но теперь я хотел бы получить для каждого термина в серии, начиная с kth и переходя к последовательности (k + n-1), добавьте этот термин в текущую сумму.
Мне нужно использовать функцию direct_up()
, которая использует функцию term()
. Сначала я определил и проверил его в основном.
Я знаю, что у меня что-то не хватает, и я немного смущен тем, как использовать функции и что я, возможно, допустил несколько ошибок. Поэтому я был бы очень благодарен за некоторые советы или помощь. Я прикрепил картину того, что я сделал до сих пор, а также набрал ее ниже.
using namespace std;
double term(int n) {
double y;
if(n%2==1) {
y = -1.0/((n+1.0)*(n+1.0));
} else {
y = 1.0/((n+1.0)*(n+1.0));
}
return y;
}
double direct_up(int k, int n) {
int startingnumber = k;
for (int i = startingnumber; i <= k+n; i++) {
cout << n << term(n) << endl;
}
return n;
}
int main() {
double n;
int k;
cout.precision(16);
cout << "enter number of terms";
cin >> n;
cout << "enter a value for k";
cin >> k;
cout << "here is the value" << direct_up(k,n);
return 0;
}
функция Tour 'термин() 'может выглядеть несколько лучше; например, с помощью '#include' вы могли бы написать 'double y = std :: pow (-1, n)/std :: pow (n + 1,2);' –
RHertel
да, мне просто сказали использовать iostream для держите это просто, но спасибо! –