Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
pelmeshki
0 / 0 / 0
Регистрация: 17.07.2015
Сообщений: 11
#1

Не выводится последняя введенная группа чисел - C++

21.07.2015, 17:28. Просмотров 184. Ответов 2
Метки нет (Все метки)

По идее, если вводишь в программу, например, 10 10 10 10 45 45 69 69 69 69 69, она должна выдать
10 повторяется 4 раза
45 повторяется 2 раза
69 повторяется 5 раз,
но тут получается, что она выводит только 10 и 45, а последнее значение не выводит.
Если после нажатия на ENTER ввести еще какие-нибудь значения, например 12 12 12, то она выведет
69 повторяется 5 раз.
Подскажите, где ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <clocale>
 
 
int main()
{
    setlocale(LC_CTYPE, "rus");
    int a = 0, b = 0;
    if (std::cin >> a) // если есть ввод ( переменная "а")      
    {
        int n = 1; // начинаем счет с 1
        while (std::cin >> b) // если есть второй ввод
            if (b == a) // сравниваем с первым
            ++n; // если 2 ввода равны, прибавляем к счету +1   
            else
            {
                std::cout << a << " повторяется " << n << " раз " << std::endl;
                a = b; // запомнить новое значение
                n = 1; // сбросить счетчик
            }
    }
 
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2015, 17:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не выводится последняя введенная группа чисел (C++):

Последняя цифра чисел Фибоначчи - C++
Последняя цифра чисел Фибоначчи Время на тест: 1 секунда. Программа должна по данному n, 0≤n≤1999999998 вычислить последнюю цифру...

Найти среднее арифметическое таких чисел в диапазоне [a; b], у которых последняя цифра равна 7 - C++
Вводятся числа a и b. Найти среднее арифметическое таких чисел в диапазоне , у которых последняя цифра равна 7. #include&lt;iostream&gt; ...

Вводятся числа a и b. Найти количество чисел в диапазоне [a;b], у которых последняя цифра равна 7. - C++
Помогите пожалуйста с программой. Задание: Вводятся числа a и b. Найти количество чисел в диапазоне , у которых последняя цифра равна 7.

Найти наибольшее значение среди неоднозначных чисел, в которых первая и последняя цифра совпадают - C++
Доброго времени суток) В связи с тем, что я являюсь студентом одного из университетов и обучаюсь на специальности, связанной с...

Из строки вводимых чисел разделённых пробелом, получить числа последняя цифра которого делится на 2 - C++
Суть заключается в том,что нужно ввести строку чисел разделённых пробелом например:1111 3333 1111 3323 А потом вывести те,последние числа...

Найти среднее арифметическое таких чисел в диапазоне [a; b], у которых последняя цифра равна 7 (цикл for) - C++
Вводятся числа a и b. Найти среднее арифметическое таких чисел в диапазоне , у которых последняя цифра равна 7. Задание с циклом for ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Eraston
53 / 10 / 2
Регистрация: 09.09.2014
Сообщений: 123
21.07.2015, 17:45 #2
Проходите по шагам свой же код. Портодихе так, как елси бы ткест чтиали по бувакм.
Не выводит потому, что работает условие if(a==b). У вас нет псоле 69 другого числа, чтобы войти в else условия.
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
21.07.2015, 18:21 #3
C++
1
2
3
4
5
6
7
8
if (b == a) // сравниваем с первым
            ++n; // если 2 ввода равны, прибавляем к счету +1   
            else
            {
                std::cout << a << " повторяется " << n << " раз " << std::endl;
                a = b; // запомнить новое значение
                n = 1; // сбросить счетчик
            }
у тебя вывод идет только если b != a
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2015, 18:21
Привет! Вот еще темы с ответами:

Rand() в Win 7 64 bit. Выводится одна и та же последовательность чисел - C++
Постоянно выводит одну и туже последовательность чисел. Что не так? Есть мнение, что под Win 7 64 bit эта команда не работает (rand)....

Создать одномерный массив из восьми чисел, а каждое второе должно выводится на экран - C++
помогите пожалуйста! Нужно создать одномерный массив из восьми чисел, а каждое второе должно выводится на экран.

Последняя группа совершенных чисел - C (СИ)
Создать двоичный файл и записать в него n целых чисел. Последнюю группу совершенных чисел из исходного файла переписать в текстовый файл. ...

Телефонный справочник: повторно добавляется последняя введенная фамилия - C (СИ)
Задача:написать программу, которая записывает в файл имя, фамилию и номер телефона.За один сеанс работы в файл можно добавить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru