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

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

Войти
Регистрация
Восстановить пароль
 
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
#1

Как реализовать остановку цикла с условием cin >> a? - C++

21.04.2013, 21:45. Просмотров 486. Ответов 4
Метки нет (Все метки)

Здравствуйте.
Программа пишет не более двух элементов в вектор, после нажатия Enter - их выводит.
Как сделать, чтобы она выводила их при появлении в потоке ввода символа "|" ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main()
{
    vector<double> d;
    double a=0;
    int j=0;
    while (cin>>a && j<2){
        d.push_back(a);
        ++j;
    }
    
    for (int i=0; i<d.size(); ++i){
    cout << "d[" << i <<"] == " <<d[i]<<'\n';
    }
BTW, я не сильно понял что есть разделители в потоке cin - это пробел, как я понял и что-то еще?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2013, 21:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как реализовать остановку цикла с условием cin >> a? (C++):

Объект cin как проверочное условие цикла while - C++
Код - иллюстрация, списал с книги. Должен суммировать вводимые с клавы числа, по окончании ввода - выдать сумму. Не работает. Только...

Объясните пожалуйста как работают cin.good(), cin.sync(), cin.clear() - C++
Такая проблема: сдаю в вуза лабораторные по программированию, писал все сам, до этого c++ не изучал, поэтому возникали некоторые проблемы....

Защита от дурака при вводе текста с помощью: cin.get cin.clear cin.sync - C++
Доброго времени суток. На С++ учусь с недавних пор. Имеется стандартная &quot;защита от дурака&quot; на ввод. Не пойму предназначение cin.get() !=...

while (cin >> s) - не выходит из цикла по нажатию enter - C++
Собственно сабж... #include &lt;iostream&gt; #include &lt;strings.h&gt; #include &lt;list&gt; using namespace std; void OUTS...

Для чего в код вводится cin.ignore после того, как cin>> уже сработало? - C++
Доброго времени суток! Просматриваю простой код. Вводится строка типа string: фунты и дюймы Затем значения переводится в типы int и...

Пропуск вызова cin.getline в первой итерации цикла - C++
В цикле заполнения массива значениями консоль выводит два раза &quot;В цикле&quot;, а только потом начинает считывать данные, может кто-нибудь знает...

4
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.04.2013, 21:51 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
vector<double> d;
double a=0;
 
while (cin >> a && (cin.peek() != '|'))
{
     d.push_back(a);
      
}
    
for (int i=0; i<d.size(); ++i)
{
    cout << "d[" << i <<"] == " <<d[i]<<'\n';
}
1
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
21.04.2013, 22:53  [ТС] #3
А почему не так:
C++
1
while (cin>>a && (j <2 || (cin.peek() != '|')))
p.s. А почему ввод просто символа не прерывает цикл даже без использования функции-члена? Ведь там указано, что cin ведет в double-переменную?
p.p.s. Что-то не так, программа не останавливается пока Enter не нажмешь...
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.04.2013, 23:52 #4
Чтобы получить правильный ответ, нужно задать правильно вопрос. Вопрос не понял...
0
andrejap
13 / 13 / 1
Регистрация: 21.04.2013
Сообщений: 245
21.04.2013, 23:58  [ТС] #5
Вы правы, но уже отпала актуальность, ибо решение уже соответствует требованиям задачи.
Спасибо!
0
21.04.2013, 23:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2013, 23:58
Привет! Вот еще темы с ответами:

хочу попробовать всунуть "for (int j=0; j<5; j++)" в cin. Как это можно реализовать? - C++
int main() { const int Mass =5; int a; for (int j=0; j&lt;5; j++) { cout &lt;&lt; &quot;-&gt;&quot;; cin &gt;&gt; a; ...

Оператор цикла с условием - C++
Дана непустая последовательность целых чисел, оканчивающаяся нулем. Найти: а) сумму всех чисел последовательности; б) количество всех...

Оператор цикла с условием - C++
Не могу разобраться как сделать что бы в программе написанной по этой задаче: Дано натуральное число n. Выяснить входит ли цифра 3 в...

Нюансы синтаксиса: что значит std::cin в условии цикла while? - C++
do { int v1, v2; cout &lt;&lt; &quot;Please enter two numbers of sum:&quot;; if (cin &gt;&gt; v1, v2) cout &lt;&lt; &quot;Sum is: &quot; &lt;&lt; v1 + v2 &lt;&lt; endl; ...


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

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

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