Вопрос задан 29.07.2026 в 08:29. Предмет Информатика. Спрашивает Грифонов Алексей.

Пользователь вводит две границы диапазона. Посчитать сумму всех чисел диапазона. цикл while c++ постоянно выдает a. Помогите.
int res = 0, i = 1, a = 0;
cout > i;
cout > a;
while (i <= a)
{ res += i; ++i; cout << "Сумма чисел " << res << endl;
return 0; } }

Перейти к ответам

Ответы на вопрос

Отвечает Емельянова Яна.

У вас сразу несколько ошибок:

  1. Для ввода используется cin, а не cout.

  2. Оператор ввода записывается как >>, а вывода — как <<.

  3. Счётчик цикла нужно начинать с первой границы диапазона, а не с 1.

  4. return 0 нельзя помещать внутрь цикла, иначе программа завершится после первой итерации.

  5. Итоговую сумму обычно выводят после окончания цикла.

Исправленный вариант:

C++
#include 
using namespace std;

int main() { int a, b; int res = 0;

cout << "Введите две границы диапазона: "; cin >> a >> b;

int i = a;

while (i <= b) { res += i; ++i; }

cout << "Сумма чисел диапазона: " << res << endl;

return 0; }

Например, если пользователь введёт:

3 6

цикл сложит числа:

3 + 4 + 5 + 6 = 18

Чтобы программа работала и в случае, когда пользователь сначала вводит большую границу, например 6 3, границы можно поменять местами:

C++
#include 
using namespace std;

int main() { int a, b; int res = 0;

cout << "Введите две границы диапазона: "; cin >> a >> b;

if (a > b) { int temp = a; a = b; b = temp; }

int i = a;

while (i <= b) { res += i; ++i; }

cout << "Сумма чисел диапазона: " << res << endl;

return 0; }

В исходном коде строки

C++
cout > i;
cout > a;

не выполняют ввод. Правильно:

C++
cin >> i;
cin >> a;

Кроме того, у вас вывод и return 0 находятся внутри while:

C++
while (i <= a)
{
    res += i;
    ++i;
    cout << res;
    return 0;
}

Из-за return 0 программа прекращает работу уже после первого прохода цикла. Поэтому return 0 должен находиться после закрывающей фигурной скобки цикла.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос