че то не получаеться
вопервых ругаеться на ГетКей, а во вторых - как ее правильно в прогу сунуть?
Это ко мне вопрос что-ли?
Хех, ты вункцию ГетКей не всунешь в начало, чтобы она все время работала

Олег_Зет
Сообщение отредактировано: Oleg_Z -
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
BRS |
![]()
Сообщение
#21
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
а можно всетаки про функцию подробнее?
че то не получаеться вопервых ругаеться на ГетКей, а во вторых - как ее правильно в прогу сунуть? Это ко мне вопрос что-ли? Хех, ты вункцию ГетКей не всунешь в начало, чтобы она все время работала ![]() Олег_Зет Сообщение отредактировано: Oleg_Z - |
BRS |
![]()
Сообщение
#22
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
Код Function GetKey : Char; Var Ch : Char; Begin Repeat Ch:=ReadKey; Until ((Ch>'0') and (Ch<'9')) or (Ch=#13); GetKey:=Ch; End; А как бы это слегка усовершенствовать? Тут пока один недостаток... Ввожу я abc - не вводиться, но если попробовать 1abc - все вводиться... |
Altair |
![]()
Сообщение
#23
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Послушай, BRS, эта функция никакого не дает преимущества перед использованием строки:
Код var s:string; begin readln(s); .... и дальнейшей ее обработки. Эта функция не резидент, и резидента из нее не сделаешь! Ты условие смотри четко! Не может быть, что бы тебе дали такое условие (блокировать нажатия клавиш) это настолько сложно, что по памяти я (модератор = ведущий разговора, то есть знающий предметную обоасть разговора) даже не могу написать, обязательно посмотрю в справочник по асму! -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
BRS |
![]()
Сообщение
#24
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
я просто думал что подобное ограничение ввода - тоже может быть выходом.
ОК - усе понял - пока в такой вариант событий не полезу ))) Вот то, что "пока" сказал, за это уважаю! Быть тебе знатоком Паса!:p4: :p1: ПАСЫБА ))) :p1: :p2: :p5: Сообщение отредактировано: BRS - |
BRS |
![]()
Сообщение
#25
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
Раскажите мне кто нибудь подробнее про работу со строкой, плз...
Сообщение отредактировано: BRS - |
Altair |
![]()
Сообщение
#26
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
А ФАК я для кого писал????
(ООО, прошу прощения, FAQ, то есть ЧаВо) ![]() http://forum.pascal.net.ru/index.php?showtopic=2361 -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
BRS |
![]()
Сообщение
#27
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
Понял ) исправлюсъ, куда послали туда и отпавлюсь :D
|
APAL |
![]()
Сообщение
#28
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Тот пример функции, который я привел для примера - действительно не ризидент :D
Это пример того, что можно заменить READKEY на свою функцию для фильтрации. Еще раз говорю - пример! Далее размышляй, домысливай - используй... ![]() А я смотрю сначала, странный резидент... как задание центра выполнять будет не соображу... ![]() Сообщение отредактировано: Oleg_Z - -------------------- |
BRS |
![]()
Сообщение
#29
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
Блин я запутался
Цитата Для ввода использовать строковую переменную. Затем после ввода перебрать в цикле все символы введенной строки. Если среди них встретилось что-то, кроме цифр 0-9, значит, повторить ввод. Если ничего левого нет, тогда преобразуем строку в целое число с помощью процедуры Val (параметры наизусть не помню). может кто нить мне пример проги в которой так строка обрабатываеться кинуть? |
APAL |
![]()
Сообщение
#30
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Код Function CheckNum(St : String) : Boolean; Var i : Byte; Begin CheckNum:=True; For i:=1 to Length(St) do If (St[i]<'0') or (St[i]>'9') then Begin CheckNum:=False; Exit; End; End; -------------------- |
BRS |
![]()
Сообщение
#31
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
Всем агромное спасибо ) теперь знаю немного больше ) Ура! )
Сообщение отредактировано: BRS - |
APAL |
![]()
Сообщение
#32
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
спасиба - не булькает :D
-------------------- |
BRS |
![]()
Сообщение
#33
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
О! У мня еще вопрос по функции Val появился
Val(Chr, i, code) - что есть такое code?????? |
GoodWind |
![]()
Сообщение
#34
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
А не проще ли
Код var str:string; value,code:integer; begin repeat readln(str); val (str,value,code); until code=0; end. Поясню - val "возвращает" в code типа errorlevel`а и если он не 0 то в строке есть НЕ цифры. зы: программа скорее всего работать не будет :D , но идея, я думаю, ясна -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
BRS |
![]()
Сообщение
#35
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: ![]() ![]() ![]() |
даже насколько я понял несколько больше - еще если число привосходит допустимые рамки
|
Altair |
![]()
Сообщение
#36
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата если число привосходит допустимые рамки Именно! :p5: А хороший у тебя аватар, далеко пойдешь ![]() Вот тебе еще (я этот шедевр стащил с школьного компа в прошлом году, а точнее с компа директора школы, гыыыы.... ух, что там еще было .... ![]() Сообщение отредактировано: Oleg_Z - Эскизы прикрепленных изображений ![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Werwolf86 |
![]()
Сообщение
#37
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 31 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата(Guest @ 13.09.04 14:32) а как зделать чтоб процедура работала всю программу? чтобы походу работы проги нажатие других клавиш не давало результата? А смысл? Не проще сделать контроль ввода кейсом? и Все...действие только при нажатиии нужной клавиши)) |
Werwolf86 |
![]()
Сообщение
#38
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 31 Пол: Мужской Репутация: ![]() ![]() ![]() |
например контроль ввода real:
Код procedure Inputreal(n_pos:byte;lo,hi:real; var res:real); var S:string; ErrCode:Integer; Ch:char; flag:boolean; begin repeat flag:=false; s:=''; repeat ch:=readkey; Case ch of Bs: if length(S)>0 then Delete(S,length(S),1); Enter: if length(S)>0 then flag:=true; '0'..'9','.':if length(S)<n_pos then S:=S+ch; end; gotoxy(1,1); clreol; write(S); until flag; val (s,res,errcode); until (errcode=0) and (res<=hi) and (res>=lo) end; Не забываем заключать код в соответствующие теги! Сообщение отредактировано: APAL - |
GoodWind |
![]()
Сообщение
#39
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Код function getinteger(min,max:integer):integer; var value,code:integer; str:string; begin repeat readln(str); val(str,value,code); until (code=0) and ((value>=min) and (value <=max)); getinteger:=value; end; вот так и рамки мона задать -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
BlackShadow |
![]()
Сообщение
#40
|
Гость ![]() |
Цитата То есть сложный, потому что нажатия CTRL+ALT+DEL только я могу заблокировать (может еще кто может? ) Нашёл чем удивить ![]() |
![]() ![]() |
![]() |
Текстовая версия | 9.09.2025 15:58 |