Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.77/30: Рейтинг темы: голосов - 30, средняя оценка - 4.77
Pepsy
47 / 32 / 9
Регистрация: 05.01.2013
Сообщений: 307
1

Считывание чисел до нажатия Enter

22.07.2013, 23:13. Просмотров 5856. Ответов 5
Метки нет (Все метки)

Нужна функция, благодаря которой цикл будет выполнятся до нажатия Enter.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.07.2013, 23:13
Ответы с готовыми решениями:

Проверка нажатия enter
Добрый день. Подскажите, пожалуйста, как запретить в консоли при пустом вводе запретить нажатие...

Стоп после нажатия на Enter
Добрый день. У меня небольшой вопрос. Я ввожу числа через cin, разделяя их пробелами. Нужно, чтобы...

Ввод в строку до нажатия Enter
Добрый вечер.Нужна функция,которая бы прибавляла к строке слова до тех пора,пока не будет нажат...

Продолжение без нажатия на Enter
В С++ совсем недавно, но интересно сделать вот что: Есть часть кода cout << "Для продолжения...

Бесконечный цикл с ожиданием нажатия enter
#include <iostream> #include <math.h> //желательно без conio.h using namespace std; int...

5
akk
44 / 44 / 17
Регистрация: 28.01.2012
Сообщений: 341
23.07.2013, 00:31 2
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <conio.h>
using namespace std;
int main(void)
{
    int ch;
    while((ch=_getch())!=13)
    {
        cout<<ch-48<<"  ";
    }
}
0
zybrzybr
18 / 17 / 0
Регистрация: 29.09.2010
Сообщений: 156
23.07.2013, 01:19 3
а если нужна фукция которая завершается ДО нажатия на Enter, т.е. спрашивает "выйти? (q/n)" пользователь жмяк на q и она сразу выходит без '\n'

пробывал заданным количеством из потока читать не получается((( что то еще недопонимаю...

C++
1
cin.get(c,1);
C++
1
fgets(c,1 или 2, stdin)
там (size-1)
все передают управление следующему опретору после нажатия на ентер. (кроме первого, если не обшибаюсь)

Добавлено через 13 минут
сам нашел
C++
1
ch = getch()
считывает один смвол и передает управление на следующую строку.
1
alsav22
5453 / 4848 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 02:26 4
Цитата Сообщение от zybrzybr Посмотреть сообщение
ch = getch()
Тогда уж просто:
C++
1
getch();
0
Pepsy
47 / 32 / 9
Регистрация: 05.01.2013
Сообщений: 307
23.07.2013, 07:33  [ТС] 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
vector <int> num;
int i;
    while((i=_getch())!=13)
    {   
        if(i!=32)
        {
            cout<<i-48;
            num.push_back(i-48);
        }
        else cout<<" ";
    }
    vector <int>::iterator cur;
    for(cur=num.begin(); cur!=num.end(); cur++)
    {
        cout<<*cur<<endl;
    }
вот код, но есть но: после нажатия Enter на экран выводит 1 цифру, и еще в векторе нету 1 цифры при его выводе.
0
Croessmah
++Ͻ
15417 / 8765 / 1680
Регистрация: 27.09.2012
Сообщений: 21,618
Записей в блоге: 2
Завершенные тесты: 2
23.07.2013, 08:55 6
Первое что пришло в голову:
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
26
27
28
29
#include <iostream>
#include <vector>
#include <cctype>
 
void Input ( std::vector < int > & vec ) {
    int currentValue;   
    while ( std::cin >> currentValue ){
        vec.push_back ( currentValue ) ;
        while ( true ){
            if ( isspace(std::cin.peek ( ) ) ) {
                if ( std::cin.get ( ) == '\n' ) {
                    return;
                }
            } else {
                break ;
            }
        }
 
    }
}
 
 
int main ( ) {
    std::vector < int > numberCollection ;
    Input ( numberCollection ) ;
    for ( std::vector < int > ::iterator it = numberCollection.begin ( ) ; it != numberCollection.end ( ) ; ++it )
        std::cout << *it << " " ;
    std::cout << std::endl;
}
0
23.07.2013, 08:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2013, 08:55

Ввод данных без нажатия Enter
Здравствуйте. Допустим, у меня есть такое: char ololo; cin &gt;&gt; ololo; Тут мне надо ввести...

Ввод символов без нажатия Enter'а
Подскажите пожалуйста, как реализовать считывание символов (одного или нескольких) без нажатия...

Ввод данных без нажатия «Enter»
Добрый день Интересует такой вопрос После ввода числа нужно нажимать клавишу ENTER Как можно...


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

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

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