Когда я пытался вычислить сумму четных чисел, результат неверен, если начальный номер отрицательный?Зачем показывать неправильную сумму в C++?
Вот код:
#include <iostream>
using namespace std;
int main() {
signed int startingNumber, upperLimit;
signed int result = 0;
cout << "please enter the starting number: "; cin >> startingNumber;
cout << "please enter the upper limit: "; cin >> upperLimit;
while (true) {
if (startingNumber % 2 != 0) result += startingNumber;
if (upperLimit == startingNumber) break;
startingNumber++;
}
cout << "The result is: " << result << endl;
}
Но когда я запускаю сценарий следующий результат:
please enter the starting number: -2
please enter the upper limit: 4
The result is: 3
Я думаю, что результат должен быть 4 не 3, а расчет - 2 +0 + 2 + 4 = 4.
С уважением ,,,