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

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

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

> ЗАДАЧА ПРО ФУнкцию.., ПОМОГИТЕ
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

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


ТАКАЯ ЗАДАЧА:
Написать функцию, обеспечивающую ввод с клавиатуры положительного двухзначного числа. При нажатии пользователем какой-либо клавиши соответствующей ей символ должен появляться на экране только в том случае, если этот символ является цифрой. Функция должна позволять пользователю редактировать введенное число при помощи клавиши <BackSpace>. Если пользователь ввел хотя бы одну цифру, то при нажатии клавиши <Enter> функция должна завершать работу и возвращать введенное пользователем число вызвавшей ее процедуре.
ПОЖАЛУЙСТА ПОМОГИТЕ ,напишите программу...ИЛИ хотя бы обьясните суть задачи..А то я чето так и не понял всей сути задачи..ПОМОГИТЕ!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

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


может быть.
if ch in ['1'..'9'] then
{это значит, что он ввел цифру}

вообще лучше через case - вариантов-то у нас много.
как работать со спецсимволами (BackSpase, например) - поищи по форуму, было совсем недавно.


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


мисс_граффити, почто ноль не в фаворе? smile.gif
Да, лучше воспользоваться case. Типа так:
case c in
'0'..'9': begin
Write©;
s:=s+c;
end;
#8: if Length(s)>0 then begin
Write(#8,' ',#8);
Delete(s,Length(s),1)
end;
#13: if Length(s)>0 then begin
WriteLn;
Val(s,x,e)
end;


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

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


Цитата(Lapp @ 14.05.2007 5:58) *

мисс_граффити, почто ноль не в фаворе? smile.gif
Да, лучше воспользоваться case. Типа так:
case c in
'0'..'9': begin
Write©;
s:=s+c;
end;
#8: if Length(s)>0 then begin
Write(#8,' ',#8);
Delete(s,Length(s),1)
end;
#13: if Length(s)>0 then begin
WriteLn;
Val(s,x,e)
end;


Что делает эта часть программы ?можно узнать,точно?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(RAPON @ 14.05.2007 23:06) *

Что делает эта часть программы ?можно узнать,точно?

Да, конечно.
Это:
1. распознавание введенного символа (переменная c), а также
2. реакция на этот символ (если цфра - добавляем к вводимой строке, если энтер - переводим строку в число, если бакспейс - удаляем символ и переходим на одну позицию вперед, остальные символы игнорируем).

Это как бы центральная часть программы. Теперь нужно организовать цикл с опросом клавиатуры и вводом символа. Выход из цикла по признаку c=#13


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской

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


Цитата(Lapp @ 14.05.2007 23:27) *

Да, конечно.
Это:
1. распознавание введенного символа (переменная c), а также
2. реакция на этот символ (если цфра - добавляем к вводимой строке, если энтер - переводим строку в число, если бакспейс - удаляем символ и переходим на одну позицию вперед, остальные символы игнорируем).

Это как бы центральная часть программы. Теперь нужно организовать цикл с опросом клавиатуры и вводом символа. Выход из цикла по признаку c=#13

А переменную C нужно описать CHAR?
а эта часть это и есть уже один опрос,да?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
RAPON   ЗАДАЧА ПРО ФУнкцию..   12.05.2007 11:25
Ozzя   Продолжение экспериментов со строкой   12.05.2007 11:43
AAAAAAA   Помоги разработать программу а то мне надо курасач…   12.05.2007 13:03
Lapp   времени на разбор задачи нет! :( Нет времени…   12.05.2007 13:40
RAPON   Lapp, если бы у вас форум не глючил при цитате соо…   12.05.2007 13:53
Lapp   если бы у вас форум не глючил при цитате сообщух …   12.05.2007 13:57
мисс_граффити   Смысл такой: 1. Если пользователь нажал цифру - от…   12.05.2007 15:05
RAPON   А как проверить пользователь цифру нажал ли символ…   13.05.2007 4:15
RAPON   Может мне кто нибудь ответит?1   13.05.2007 16:07
мисс_граффити   может быть. if ch in ['1'..'9'] th…   14.05.2007 5:26
Lapp   мисс_граффити, почто ноль не в фаворе? :) Да, лучш…   14.05.2007 8:58
RAPON   мисс_граффити, почто ноль не в фаворе? :) Да, луч…   15.05.2007 2:06
Lapp   Что делает эта часть программы ?можно узнать,точн…   15.05.2007 2:27
RAPON   Да, конечно. Это: 1. распознавание введенного сим…   15.05.2007 3:52
RAPON   СПАСИБО,вечером попробую,че непонятно потом спрошу…   14.05.2007 14:18
мисс_граффити   :blink: не знаю. сказывается делание лабораторок…   15.05.2007 2:22
RAPON   если CHAR могу заранее сказать что ,после "0…   15.05.2007 4:13
Lapp   после "0".. у меня ошибку 41 пишет Я из…   15.05.2007 6:14
RAPON   а сase почему in стоит?вроде же только of может с…   15.05.2007 4:59
RAPON   Теги ! СПАСИБО БОЛЬШОЕ ЗА ПОМОЩЬ!!…   16.05.2007 2:33


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

 





- Текстовая версия 29.03.2024 0:54
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name