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

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

Войти
Регистрация
Восстановить пароль
 
HA4ERR
3 / 3 / 0
Регистрация: 01.07.2015
Сообщений: 49
#1

Сравнить каждое слово с предыдущи. Непонятна работа кода - C++

12.07.2015, 23:04. Просмотров 213. Ответов 4
Метки нет (Все метки)

Очень стыдно, но не могу не спросить.
Вот код:
C++
1
2
3
4
5
6
string previous = " ";
    string current;
    while (cin >> current)
    { if (previous == current)
    cout << "Reapiting the word: " << current << "\n";
        previous = current;
Цель: сравнить каждое слово с предыдущим и в случае, если они одинаковы, вывести это слово на экран.
Не совсем понимаю, как он считает с предыдущим словом , то есть с previous? Как узнал, что previous является именно предыдущим словом? Сколько бы я ни смотрел и ни вникал бы в этот код, никак не могу понять это.
P.S. Я совсем зелёный, вычитал эту мини задачу из книги "Принципы и практика использования C++. Бьерн Страуструп"
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2015, 23:04     Сравнить каждое слово с предыдущи. Непонятна работа кода
Посмотрите здесь:

Непонятна часть кода программы - работа с файлами - C++
Программа, выводящая символы из файла в обратном порядке. Часть кода: ..... std::ostringstream stream; stream &lt;&lt;...

паттерн Observer(непонятна строка кода) - C++
Непонятный код в одном месте. Хотелось бы узнать смысл и для чего его тут написали. class Subject { // 1. &quot;independent&quot;...

Очереди. За один просмотр файла вывести на экран каждое третье слово, а затем каждое четвертое - C++
Помогите студенту сделать задачу на с++, вот условие: Создать файл вещественных чисел за один просмотр файла вывести на экран каждое...

Реверсировать каждое слово строки - C++
Вообще никак не получается. Кто может подсказать, как это сделать? Есть вариант решения, но мне не подходит: // 5 задание.cpp:...

Напечатать каждое слово с новой строки - C++
Задача: написать программу, принимающую вводимый пользователем текст, и преобразовывающая его так, чтобы каждое слово печаталось на...

Сохранить каждое слово в отдельной переменой - C++
Ввести текст из трех слов. Сохранить каждое слово в отдельной переменой. Кому не сложно помогите,не могу понять(((

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
S_el
2092 / 1599 / 306
Регистрация: 15.12.2013
Сообщений: 6,427
12.07.2015, 23:07     Сравнить каждое слово с предыдущи. Непонятна работа кода #2
Цитата Сообщение от HA4ERR Посмотреть сообщение
Как узнал, что previous является именно предыдущим словом?
На 6 строку приведенного вами кода обратите внимание.А вообще если возникает вопрос: почему так происходит,рекомендую по максимуму выводить диагностические сообщение или пользоваться отладчиком.
HA4ERR
3 / 3 / 0
Регистрация: 01.07.2015
Сообщений: 49
12.07.2015, 23:15  [ТС]     Сравнить каждое слово с предыдущи. Непонятна работа кода #3
S_el, То есть только к концу цикла мы присваиваем переменной previous переменную current, и в начале следующего цикла previous уже имеет значение предыдущего слова. Я правильно понимаю?
Vlad_Evka
42 / 1 / 0
Регистрация: 12.07.2015
Сообщений: 8
12.07.2015, 23:15     Сравнить каждое слово с предыдущи. Непонятна работа кода #4
HA4ERR, да.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.07.2015, 23:22     Сравнить каждое слово с предыдущи. Непонятна работа кода
Еще ссылки по теме:

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

Вывести каждое слово из файла на экран - C++
Имеется файл со следующим содержимым: 1 Иван Петров 2 Оля Семенова 3 Илья Петушко 4 Наталья Близер ........ Мне нужно...

Удвоить каждое слово во введённом предложении - C++
Удвоить каждое слово во введённом предложении. На печать вывести введённую строку и результат её обработки.

Удалить каждое второе слово из предложения - C++
помогите пожалуйста написать программу: Удалить каждое второе слово из предложения. Заранее спасибо!


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

Или воспользуйтесь поиском по форуму:
HA4ERR
3 / 3 / 0
Регистрация: 01.07.2015
Сообщений: 49
12.07.2015, 23:22  [ТС]     Сравнить каждое слово с предыдущи. Непонятна работа кода #5
Большое спасибо!
Большую роль играет эксперимент.
Только поменяв строчку previous = current в строки между 3 и 4, я понял, что циклы работают строго в последовательности, то есть написать нужно друг за другом все действия.
Сейчас попробую написать для for.
Yandex
Объявления
12.07.2015, 23:22     Сравнить каждое слово с предыдущи. Непонятна работа кода
Ответ Создать тему
Опции темы

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