Число ли?!, проверка входных данных... |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Число ли?!, проверка входных данных... |
kleks |
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
Вообщем такая задачка: предположим мне необходимо ввести размерность матрицы MxN, 0..5 of integer, но при этом я должен проверить...1.является ли то, что я ввожу числом(в противном случае вывести сообщение ), 2.является ли оно целым и 3.входит ли оно в граници от 1..5. Последние два пункта задачки то понятны, а вот как быть с первым!? Подскажите какие-нибудь идеи...Заранее благодарен
Сообщение отредактировано: kleks - |
klem4 |
Сообщение
#2
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
один из вариантов :
uses crt; для чисел с плавающей точкой, n ссответственно не integer, а скажем single. Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
Сообщение
#3
|
Гость |
Насчет первого тоже понятно:
вводишь "нечто" в виде строки и пытаешься перевести в число через Val (с выключенной проверкой границ {$R-})... Если не произошло ошибки, то это число (таким образом, кстати, можно вообще избавиться от второго пункта). А теперь еще кое-что: Цитата(Правила раздела) 1. Заголовок темы должен быть информативным. В противном случае тема удаляется Делай выводы.klem4: Последнее китайское предупреждение: проверяй программы, перед тем как запостить. |
kleks |
Сообщение
#4
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
Спасибо огромное!!!!! Теперь понятно!!!!!!!
Цитата(volvo @ 9.09.05 19:24) А теперь еще кое-что: 1. Заголовок темы должен быть информативным. В противном случае тема удаляется За это...извините!!!! Теперь буду знать...!!! |
kleks |
Сообщение
#5
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
А можно ли как-нибудь проверить входные данные (на принадлежность к числу), не используя стандартных процедур str() и val()???
|
volvo |
Сообщение
#6
|
Гость |
var Вот и попробуй ввести НЕ число или число, но НЕ принадлежащее интервалу 1 .. 5 :no: |
klem4 |
Сообщение
#7
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Все так то оно так, но почему вот это вылетает если ввести скажем 'asd' ?
uses crt; -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
Сообщение
#8
|
Гость |
klem4, ты ХОРОШО подумал, прежде чем это сделать?
writeln('IOReslt = ', IOResult); Обращение к IOResult сбрасывает его в 0, и ошибка "проходит"... Это первое. Ну, а во вторых, я в тысячный раз повторяю - здесь - НЕ раздел для 32-бит. компиляторов, и проверять программы в FPC не пойдет... Как ты думаешь, я бы выложил программу, если бы она на ТАКОМ спотыкалась? |
klem4 |
Сообщение
#9
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Я всего навсего на знал о том что
Цитата Обращение к IOResult сбрасывает его в 0 Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Текстовая версия | 26.04.2024 4:54 |