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

> Правила раздела!

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

 
 Ответить  Открыть новую тему 
> Игнор Ошибок, Игнор Ошибок при исполнении программы
сообщение
Сообщение #1


Гость






как сделать так, чтобы игнорировались ошибки и дос не вылетал??
вот например, если a:integer; то при попытке readln (a) он сразу вылетит нафиг. Как сигнорировать эту ошибку и возвратится к чтению переменной?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

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


Вот так, например:

var a:integer;
begin
writeln('Enter an integer value');
repeat
{$I-}
readln(a);
{$I+}
until IOResult=0;
writeln('Thank you');
readln;
end.



Сообщение отредактировано: Bokul -


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


еще как вариант всегда изначально считывать строку, и уже потом, переводя ее в число с помощью val смотреть код ошибки, если он не нулевой, запрашивать повторный ввод.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
Вот так, например:
ты можешь получить совсем не то, что хотел... Запусти свою программу, и попробуй ввести 123456 (под TP, разумеется...) И посмотри, что было занесено в переменную A...

Так что, самый надежный вариант -
Цитата
изначально считывать строку
(на форуме был пример реализации "защиты от дурака" подобным образом, так что Поиск)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






хорошо, объясните мне, пожалуйста, что такое {$I-} и {$I+} !
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Читать здесь: FAQ -> Директивы компилятора
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






спасибо good.gif
 К началу страницы 
+ Ответить 

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

 





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