Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2011, 22:11   #1
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию Непонятки с процессом считывания значения в переменную

Всем привет! Сколько уже прог написал, но такого не видел, вот простой код -
Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var
  FIO,Marka:string;
begin
  write('FIO - ');
  read(FIO);
  write('Marka - ');
  read(Marka);
  readln;
  readln;
end.
Почему то после считывания значения в переменную FIO, программа пролетает следующий ввод значения и выходит! Кто знает, что за ерунда?
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 11.12.2011, 22:16   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Потому что ты по привычке жмеш после ввода Энтер, а при использовании Read этого нужно опасаться, ибо он энтеры не подхватывает. Нажатые дважды (ну ты же два энтера вводишь) энтеры остаются в буффере ввода, и на них автоматом реагируют два последующих readln.
Убедись сам - замени на readln(FIO); или допиши в конец еще один readln;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.12.2011, 22:20   #3
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Потому что ты по привычке жмеш после ввода Энтер, а при использовании Read этого нужно опасаться, ибо он энтеры не подхватывает. Нажатые дважды (ну ты же два энтера вводишь) энтеры остаются в буффере ввода, и на них автоматом реагируют два последующих readln.
Убедись сам - замени на readln(FIO); или допиши в конец еще один readln;
Спасибо! Сейчас проверю. Ну и чудеса, никогда этого не замечал.
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 11.12.2011, 22:22   #4
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

лично у меня не пролетает... проверил значения которые принимают переменные.. тоже норм... и 2 последних readln тоже все воспринимает... так что судя по всему проблемка на твоей стороне... или же в самом паскале...
как вариант... возможно не все паскали выделяют достаточно памяти под переменные... то бишь по умолчанию допустим 10, ввел значение на 13... ввелось 10 на первую переменную.. остальные 3 посчитало на ввод второй... посмоти через writeln что у тя присваивается... может и прожка шалит....
пишу код не только за печеньки
VIK_aka_TOR вне форума Ответить с цитированием
Старый 11.12.2011, 22:32   #5
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Цитата:
Сообщение от VIK_aka_TOR Посмотреть сообщение
лично у меня не пролетает... проверил значения которые принимают переменные.. тоже норм... и 2 последних readln тоже все воспринимает... так что судя по всему проблемка на твоей стороне... или же в самом паскале...
как вариант... возможно не все паскали выделяют достаточно памяти под переменные... то бишь по умолчанию допустим 10, ввел значение на 13... ввелось 10 на первую переменную.. остальные 3 посчитало на ввод второй... посмоти через writeln что у тя присваивается... может и прожка шалит....
Дак вот прикол в том, что даже эта прога маленькая тупит! Через дебаг смотришь, и прога на второй переменной не останавливается, просто пролетает. Поставил readln и все заработало. Первый раз такое вижу!
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Процедура считывания из файла Black_butterfly Помощь студентам 0 29.05.2011 16:51
Наблюдение за процессом xil Общие вопросы .NET 3 08.07.2010 19:10
.bat файлы; передача значения из файла в переменную Manik Помощь студентам 1 06.05.2010 10:36
Подстановка значения в переменную из текстового файла. Niodar Общие вопросы Delphi 2 22.03.2009 19:34
считывания данных с TCP/IP kyc0k Помощь студентам 1 08.04.2008 11:45