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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2014, 15:16   #1
Randall C. Walker
 
Регистрация: 15.11.2014
Сообщений: 8
По умолчанию Запись ввода в значение

Добился, чтобы вводилось только число, но не могу добиться, чтобы последовательность значения вводилось в s.

Код:
uses crt;
const ENTER=#13;

var c:char;
    i,j:byte;
    s:real;
begin
     clrscr;
     writeln('Вводите значение');
     c:=readkey;
     i:=0;
     while (c<>ENTER) do begin
        if i=0 then
           begin
                 if c in ['-'] then
                    begin
                          write(c);
                          i:=1;
                    end;
           end;
        if j=0 then
           begin
                 if c in [','] then
                    begin
                          write(c);
                          j:=1;
                    end;
                 if c in ['.'] then
                    begin
                          write(c);
                          j:=2;
                    end;
           end;

        if c in ['0'..'9'] then
           begin
                 write(c);
                 i:=1;                 
           end;
           c:=readkey;
           s:=ord(c); {?};
     end;
     writeln(s);
     readkey;
end.

Последний раз редактировалось Randall C. Walker; 15.11.2014 в 18:16.
Randall C. Walker вне форума Ответить с цитированием
Старый 15.11.2014, 15:38   #2
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
s:integer;
***
s:=ord(c); {?};
При таком раскладе s всегда будет = 13.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 15.11.2014, 15:46   #3
Randall C. Walker
 
Регистрация: 15.11.2014
Сообщений: 8
По умолчанию

необходимо, чтобы в s записывалось значение, вводимое до нажатия Enter
Randall C. Walker вне форума Ответить с цитированием
Старый 15.11.2014, 15:58   #4
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Возможно так?
Код:
uses crt;
 const ENTER=#13;
 var c:char;
 i,j:byte;
 s:real;
 begin
 clrscr;
 writeln('вводите цифры');
 c:=readkey;
 i:=0;
 while (c<>ENTER) do begin
 if i=0 then
 begin
 if c in ['-'] then
 begin
 write(c);
 i:=1;
 end;
 end;
 if j=0 then
 begin
 if c in [','] then
 begin
 write(c);
 j:=1;
 end;
 if c in ['.'] then
 begin
 write(c);
 j:=2;
 end;
 end;

 if c in ['0'..'9'] then
 begin
 write(c);
 i:=1; 
 end;
 s:=ord(c); {?};
 writeln(s);
 c:=readkey;
 end;
 end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 15.11.2014, 16:05   #5
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Randall C. Walker, а для чего нужен
Код:
if i=0 then
           begin
                 if c in ['-'] then
                    begin
                          write(c);
                          i:=1;
                    end;
           end;
        if j=0 then
           begin
                 if c in [','] then
                    begin
                          write(c);
                          j:=1;
                    end;
                 if c in ['.'] then
                    begin
                          write(c);
                          j:=2;
                    end;
           end;

        if c in ['0'..'9'] then
           begin
                 write(c);
                 i:=1;                 
           end;
? Я чего-то не пойму?
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 15.11.2014, 17:16   #6
Randall C. Walker
 
Регистрация: 15.11.2014
Сообщений: 8
По умолчанию

Проверять правильность введеных символов. Чтобы знак "-" стоял до числа, "." или "," вводилось только один раз
Randall C. Walker вне форума Ответить с цитированием
Старый 15.11.2014, 17:26   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
но не могу добиться, чтобы значение вводилось в значение
...а в киеве – дядька!

Как звучит задание в оригинале?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 15.11.2014, 18:13   #8
Randall C. Walker
 
Регистрация: 15.11.2014
Сообщений: 8
По умолчанию

Цитата:
Как звучит задание в оригинале?
Задания нет. Это я для себя.
Я ввообще хочу чтобы в s вводилось нецелочисленное число и на нажетие букв не реагировало.
Randall C. Walker вне форума Ответить с цитированием
Старый 15.11.2014, 18:16   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Задания нет. Это я для себя.
Нету, так сформулируй!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 15.11.2014, 22:11   #10
Randall C. Walker
 
Регистрация: 15.11.2014
Сообщений: 8
По умолчанию

Ввод значения с клавиатуры, при котором недопустим ввод букв и знака отрицания в середине числа. Значение при этом может быть вещественное.
Randall C. Walker вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связный список (запись и чтение из файла, контроль ввода) nastin Общие вопросы C/C++ 1 18.03.2013 21:19
Запись выражений, ввода-вывод информации(турбо паскаль) orehov Помощь студентам 0 15.02.2012 15:38
Запись в числовое значение текст MRI Общие вопросы C/C++ 4 31.10.2010 09:59
DBLookupComboboxEh: пустое значение, выбрать нужную запись new player Компоненты Delphi 2 15.10.2010 10:36
передать значение из поля ввода html-формы в метод проекта asp.net Etlau ASP.NET 4 03.06.2009 10:38