Кто-нибудь знает, что не так с моим кодом?Я пытаюсь создать программу, которая выводит переменную сумму вектора целых чисел.Например, если входное значение равно 1 2 3 4, то результат будет 1-2 + 3-4 = -2.Программа также продолжит работу, если пользователь введет «y» и остановится, когда пользователь введет «n».
Я понимаю, что в моем коде есть синтаксические ошибки: при вводе целых чисел как вектора и когдавызывая функцию alternating_sum.Тем не менее, я не знаю, как это исправить.
Это то, что у меня есть до сих пор:
#include <iostream>
#include <vector>
using namespace std;
double alternating_sum(vector<int> numbers)
{
double sum = numbers[0];
for (int i = 1; i < numbers.size(); i++) // i = position in vector
{
if (i % 2 == 0) // if i is even
{
sum += numbers[i];
}
else // if i is odd
{
sum -= numbers[i];
}
}
return sum;
}
int main()
{
char response;
while (true)
{
cout << "Enter a list of integers: ";
cin >> vector<int> input;
double result = alternating_sum(vector<int> input);
cout << "Continue (y/n)? ";
cin >> response;
if (response == 'n')
{
break;
}
}
return 0;
}