3 / 3 / 0
Регистрация: 17.12.2008
Сообщений: 51
|
||||||
1 | ||||||
Выполнение цикла до тех пор, пока не будет нажата определенная клавиша24.07.2010, 03:32. Показов 22856. Ответов 16
Метки нет (Все метки)
Доброе время суток, люди добрые! Начал заниматься С++ не так давно, поэтому всех хтростей не знаю, в следствие чего прошу о помощи. Необходимо выполнять цикл до тех пор, пока не будет нажата определенная клавиша (или же не будет введет определенный символ). Пытался что-то предпринять сам и вот что из этого вышло:
Заранее спасибо)
0
|
24.07.2010, 03:32 | |
Ответы с готовыми решениями:
16
Вводить с клавиатуры числа до тех пор, пока не будет нажата клавиша <<ESC>> Создать консольное приложение, которое продолжало бы работать до тех пор, пока не нажата клавиша "y" Вводить значения пока не будет нажата определенная буква Выполнение функции, пока не будет нажата любая кнопка |
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
24.07.2010, 03:53 | 2 | |||||
S@nchezzz, Все. Понял. Ща посмотрим
ЗЫ непрерывного пищания не будет никак. По крайней мере таким макаром. Будет писк при вводе символа или просто энтера, если он не совпадает с q. Но все по 1 разу
0
|
21 / 21 / 5
Регистрация: 14.06.2010
Сообщений: 108
|
||||||
24.07.2010, 03:59 | 3 | |||||
Ну так правильно что 1 пик)
getchar ждет пока ты введешь символ)) надо подумать, сходу в голову ничего не лезет) возможно цикл отдельно, а проверку на ввод отдельно. и если символ тот что нужен то выходить из программы EXIT() Добавлено через 2 минуты
попробуй так, нет на чем скомпилить, но по идее должно быть так цикл пищит, а иф прерывает прогу
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
24.07.2010, 03:59 | 4 |
illuminati, Крайне плохая идея. До ввода символа так и не дойдет
и break; там кстати вообще не катит. Ибо он ведь не в цикле
0
|
21 / 21 / 5
Регистрация: 14.06.2010
Сообщений: 108
|
|
24.07.2010, 04:09 | 5 |
Lavroff, прав)
а так? Добавлено через 25 секунд тоже нет, сам понял))) Добавлено через 7 минут да, писка не будет, т.к. паралельно должен работать цикл и опрашивать клаву... если бы можно было for запустить отдельно...
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
24.07.2010, 04:10 | 6 |
На вскидку два решения: или делать неблокируемое чтение (select(), pool(), etc..), или создавать два потока, в одном пищать, в другом нажатия клавиш отлавливать... Просто из любопытства: а зачем такое бесилово нужно?
0
|
3 / 3 / 0
Регистрация: 17.12.2008
Сообщений: 51
|
|
24.07.2010, 04:15 [ТС] | 7 |
Lavroff, Вы сказали, что будет пищать при нажатии Enter, если символ не равен 'q'. Возникает вопрос: возможно ли программно эмулировать нажатие клавиши Enter?
easybudda Такое бесилово - есть наипростейший будильник)
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
24.07.2010, 04:42 | 8 |
S@nchezzz, Кажется возможно... Была какая-то комманда...
0
|
24.07.2010, 07:52 | 9 |
Не знаю как это реализовать на С, но вот на пример на ассемблеое под ДОС есть управляющие символы (которые совпадают с сишными), и есть символ 07h (0х07)(вроде бы так)), который при выводе заставляет пищать системный динамик, если выводить(просто выводить на печать) этот символ в цикле, то будет почти непрерывное пищание. Не уверен, что такое можно провернуть на С, но чем мог - тем помог))
0
|
Johnny_D
|
24.07.2010, 10:43
#10
|
Не по теме: Запищать все нафиг
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
24.07.2010, 11:37 | 11 |
S@nchezzz, kbhit().
0
|
22 / 22 / 4
Регистрация: 15.04.2009
Сообщений: 100
|
||||||
24.07.2010, 12:03 | 12 | |||||
S@nchezzz,
1
|
3 / 3 / 0
Регистрация: 17.12.2008
Сообщений: 51
|
|
24.07.2010, 20:46 [ТС] | 13 |
Kastaneda, почти непрерывное пищание дает, выведенный на печать, оператор(если не путаю) "\a"
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
24.07.2010, 23:21 | 14 | |||||
в седьмой винде зависло окошко, закрываться ничем не хочет попискивает теперь время от времени...
2
|
232 / 102 / 6
Регистрация: 18.04.2010
Сообщений: 294
|
||||||
26.07.2010, 01:27 | 16 | |||||
Почему бы не использовать стандартный пример?
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
26.07.2010, 01:41 | 17 |
0
|
26.07.2010, 01:41 | |
26.07.2010, 01:41 | |
Помогаю со студенческими работами здесь
17
Запрашивать пароль до тех пор, пока он не будет правильно введен Ввод произвольных символов до тех пор, пока не будет введен символ q Ввод чисел с клавиатуры до тех пор, пока не будет введена цифра 1 (цикл do) Вводить отрицательные числа до тех пор пока не будет введено положительное число Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |