|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.03.2012, 15:12 | #1 |
Пользователь
Регистрация: 17.12.2011
Сообщений: 12
|
Проверка на ввод целых чисел в Паскале посимвольно
Написана программа вычисления суммы/разницы целых чисел с рекурсией (например, "99+23-3+48="). Помогите пожалуйста добавить проверку на посимвольный ввод именно целых чисел(от 0 до 999) и знаков "+" и "-". Конец ввода - "=". У меня только для чисел от 0 до 9 получается...
Код:
___________ Код нужно оформлять по правилам: тегом [CODE]..[/СODE] (это кнопочка с решёточкой #) Не забывайте об этом! Модератор. Последний раз редактировалось Serge_Bliznykov; 20.03.2012 в 16:21. |
20.03.2012, 17:17 | #2 |
Форумчанин
Регистрация: 15.03.2011
Сообщений: 465
|
Начиная с начала строки проверяешь на правильность ввода. Если символ не лежит в нужных диапазонах, то выводишь сообщение.
Код:
Помог - жми на весы!
ByAlex89@mail.ru |
20.03.2012, 19:37 | #3 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
не знаю нужна ли тут посивольная проверка на ввод строки.
но я бы предложил такой вариант решения задачи с рекурсией: Код:
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
21.03.2012, 16:15 | #4 | |
Пользователь
Регистрация: 17.12.2011
Сообщений: 12
|
Цитата:
Извините, протупила - я разобралась с отр.числами... Последний раз редактировалось Nataly026; 21.03.2012 в 17:02. |
|
21.03.2012, 17:11 | #5 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
+(-231) сколько будет?
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
21.03.2012, 23:44 | #6 |
Форумчанин
Регистрация: 15.03.2011
Сообщений: 465
|
Посимвольная проверка в таких программах обязательна, так как в строке для расчетов не должно быть ничего, кроме таких символов как - ('.','/','*','+','-','(',')','%','^' ... и так далее). Если в строке будет не нужный символ, то программа просто тупанет и все, считать не будет.
Помог - жми на весы!
ByAlex89@mail.ru |
22.03.2012, 08:47 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
ByAlex,
во-первых, откуда Вы столько знаков набрали то?! В исходной задаче допускается только плюс и минус! а во-вторых, достаточно в коде, предложенном Plague добавить две проверки на то, что переменная err не равна нулю, как мы "автоматически" получим контроль на то, что введены допустимые символы. в-третьих, пройтись по строке, проверяя, что она состоит только из нужных символов - это дело одной минуты программирования (я тут пост дольше пишу, чем код проверки писать) p.s. правда, конечно, это будет не проверка в процессе ввода... p.p.s. могу набросать код ввода строки, с разрешением ввода только правильных символов, это элементарно! Последний раз редактировалось Serge_Bliznykov; 22.03.2012 в 08:49. |
22.03.2012, 19:02 | #8 |
Форумчанин
Регистрация: 15.03.2011
Сообщений: 465
|
Я имел ввиду программы подобного содержания, там же не только + и -, а много много всяких действий производится. Но посимвольная проверка все равно необходима в таких прогах, если, конечно, не ведется контроль на правильность введенных символов в процессе ввода(можно разрешать ввод только разрешенных символов). А в данном случае программа простая.
Помог - жми на весы!
ByAlex89@mail.ru |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Найти количество положительных чисел среди четырёх целых чисел. | teac2011 | Помощь студентам | 0 | 01.12.2011 19:58 |
Дана последовательность вещественных чисел. каждая пара чисел задает границы отрезка. Найти количество целых чисел на отрезках | 'studentka' | Помощь студентам | 6 | 30.11.2011 18:35 |
Задание с циклами: ввод и проверка чисел.(Pascal) | swillrocker | Помощь студентам | 4 | 04.05.2011 20:37 |
Ввод с клавиатуры целых десятичных чисел | Илья555 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 26.04.2011 09:12 |
Сложение двух десятичных положительных чисел. целых чисел))) | PEro_man | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 01.12.2010 12:40 |