IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Баг с опером Read
comanche
сообщение 11.09.2005 15:04
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 41
Пол: Мужской
Реальное имя: Эдд

Репутация: -  0  +


Uses    CRT;
Var
iNumber : LongWord;
iRemain : Byte;
iRepeat : Char;

Begin

Repeat

Clrscr;
{ пункт 1 }
Write ( 'Please, enter number: ' );
Read ( iNumber ); // вот тут
While iNumber > 0 Do
Begin
iRemain := iNumber mod 10;
Dec ( iNumber, iRemain );
iNumber := iNumber div 10;
Write ( iRemain, Chr ( 32 ) );
End;

WriteLn;
Write ( 'Repeat? Type "N" to quit.. ' );
ReadLn ( iRepeat );

Until iRepeat = 'N';

Readkey;

End.


Программа не отвечает на написание 'N' и постоянно возвращается в Пункт 1.
Если же заменить Read на ReadLn, то программа работает нормально. Проверял на нескольких компиляторах, везде тот же баг. В чём фишка? huh.gif


--------------------
Released by Demons
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 2)
volvo
сообщение 11.09.2005 15:13
Сообщение #2


Гость






Ну, допустим это совсем не баг, так и должно быть: ты же после ввода числа жмешь Enter, вот этот Enter и читается когда вызывается второй ReadLn, и получается что у тебя в iRepeat заносится #13, а совсем не 'N' ...
 К началу страницы 
+ Ответить 
comanche
сообщение 11.09.2005 15:31
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 41
Пол: Мужской
Реальное имя: Эдд

Репутация: -  0  +


Оооочень интересно smile.gif Спасибо за информацию!


--------------------
Released by Demons
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.06.2025 15:06
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"