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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2013, 21:55   #11
Confused
Пользователь
 
Регистрация: 14.04.2013
Сообщений: 12
По умолчанию

Запускаю программу - не вводит символы до тех пор, пока не нажму enter - когда нажал его, можно ввести только один символ, или целое предложение и знаки не берет в учет (? ! .)
Confused вне форума Ответить с цитированием
Старый 28.11.2013, 21:55   #12
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Read(ch); вместо ch:=readkey;
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 28.11.2013, 21:59   #13
Confused
Пользователь
 
Регистрация: 14.04.2013
Сообщений: 12
По умолчанию

Могу ввести только один символ.
Confused вне форума Ответить с цитированием
Старый 28.11.2013, 21:59   #14
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Сейчас проверю у себя.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 28.11.2013, 22:10   #15
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Код:

Uses    CRT;
Var     sent,znak:string;
	ch:char;
Begin
  ClrScr;
  sent:='';
    While ch<>#13 do
      Begin
        Ch:=readkey;
        write(ch);
        sent:=sent+ch;
      End;
    znak:=copy(sent,Length(sent)-1,1);
    clrscr;
    if znak='!' then WriteLn('Voskl');
    if znak='?' then WriteLn('Voprosit');
    if znak='.' then WriteLn('Povestv');
ReadLn;
End.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 28.11.2013, 22:28   #16
Confused
Пользователь
 
Регистрация: 14.04.2013
Сообщений: 12
По умолчанию

Разве это посимвольный ввод? Моя начальная программа так же работала.
Confused вне форума Ответить с цитированием
Старый 28.11.2013, 22:46   #17
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

во-первых, это ПОСИМВОЛЬНЫЙ ввод.
вот Вам доказательство:
Код:
Uses    CRT;
Var     sent:string;
	ch:char;
Begin
  ClrScr;
  sent:='';
    While ch<>#13 do
      Begin
        Ch:=readkey;
        case ch of
         '!': Write(' Voskl ');
         '?': Write(' Voprosit ');
         '.': Write(' Povestv ');
        else
          write(ch);
        end;
        sent:=sent+ch;
      End;
    WriteLn('Vvedeno: ',sent);
   ReadLn;
End.
во-вторых, Вы бы лучше рассказали, какую конечную задачу Вы пытаетесь решить этим самым "посимвольным" вводом. Вам, глядишь, и более подходящий код набросали...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
masm32 консоль посимвольный ввод Bytyava Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 02.11.2012 10:55
Посимвольный ввод Nataly026 Паскаль, Turbo Pascal, PascalABC.NET 4 18.03.2012 19:54
C++ Win32 | Посимвольный ввод вывод с декодированием Sh4dd0w Visual C++ 3 07.11.2011 22:22
Посимвольный ввод строки Junk1E Общие вопросы C/C++ 8 14.12.2009 01:49