Проверка домашней работы первоклассника, Помогите пожалуйста!!!!))) |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Проверка домашней работы первоклассника, Помогите пожалуйста!!!!))) |
Егор |
Сообщение
#1
|
Гость |
Составить программу "Проверка дом. работы первоклассника". В качестве входных данных программа получает выражение вида "2+3=5" или "7-3=5". В выражения всегда ровно 5 символов, примеры могут могут быть только на сложение или вычитание, аргументы выражений и результат могут состоять только из 1й цифры. необходимо проверить верно решен пример или нет, выдать сообщения о правильности решения, затем спросить будем ли продолжать проверку ("Продолжим? (Y,N)"), и если пользователь ответил утвердительно, предложить ему ввести следующий пример для проверки и т.д. При решении задачи использовать только символьный тип данных(строковый запрещается).
заранее благодарю )) |
Айра |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
А сам? Мысли\код\вопросы?
|
puporev |
Сообщение
#3
|
Гость |
Попробуйте так.
uses crt; |
Lapp |
Сообщение
#4
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
puporev, объясни, пожалуйста, каково назначение этой строки:
if (ch='Y')or(ch='y')then continue -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
puporev |
Сообщение
#5
|
Гость |
puporev, объясни, пожалуйста, каково назначение этой строки: - в твоей программе?.. ch - переменная символьного типа (Char). При нажатии на клавишу со значком Y (обычно так сокращают Yes (да)) переменной ch присваивается это значение и если это так, то цикл начинается снова (процедура continue (продолжить)). |
Lapp |
Сообщение
#6
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
... если это так, то цикл начинается снова (процедура continue (продолжить)). Нет, continue означает несколько другое.Попробуй убрать эту строчку из программы и посмотри, как изменилось выполнение ее. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Егор |
Сообщение
#7
|
Гость |
ОГРОМНОЕ СПАСИБО!!!!!
Вы ПРограммист высочайшего уровня! Я не представляю, что бы делал без таких людей как Вы!!! |
puporev |
Сообщение
#8
|
Гость |
ОГРОМНОЕ СПАСИБО!!!!! Вы ПРограммист высочайшего уровня! Я не представляю, что бы делал без таких людей как Вы!!! Зря ты такое пишешь, программу-то я неправильно написал. Вот переделал:
|
volvo |
Сообщение
#9
|
Гость |
Угу... Зато теперь - правильно, да? С goto вместо той конструкции repeat/until, которая у тебя была. Все же работало, единственное - была лишняя строка с continue (в твоем цикле она просто не нужна: после нее нет других операторов, цикл и так продолжит выполнение со следующей итерации). Убрал бы ее и все... goto-то зачем?
Сообщение отредактировано: volvo - |
puporev |
Сообщение
#10
|
Гость |
Угу... Зато теперь - правильно, да? С goto вместо той конструкции repeat/until, которая у тебя была. Все же работало, единственное - была лишняя строка с continue (в твоем цикле она просто не нужна: после нее нет других операторов, цикл и так продолжит выполнение со следующей итерации). Убрал бы ее и все... goto-то зачем? В той конструкции команда продолжить выполнялась при нажатии любой клавиши, кроме N, а сейчас только при Y, остальные игнорируются. |
renesko1 |
Сообщение
#11
|
поиск Группа: Пользователи Сообщений: 347 Пол: Мужской Реальное имя: nir Репутация: 2 |
Просто goto не привеиствуется и препод гостя скажет переделать с циклами, наверное.
Сообщение отредактировано: renesko1 - -------------------- typedef void Śūnyatā ;
|
puporev |
Сообщение
#12
|
Гость |
|
volvo |
Сообщение
#13
|
Гость |
Цитата В той конструкции команда продолжить выполнялась при нажатии любой клавиши, кроме N, а сейчас только при Y, остальные игнорируются. Хочешь, я тебя огорчу? Не только при Y... Есть еще как минимум 2 комбинации клавиш, которые работают не так, как задумывалось. Скажем, так:вводишь выражение, программа пишет ответ, и нажимаешь... Не Y, и не y... А просто Shift и F6 одновременно... Упс. Я ж не нажал Y, почему программа решила продолжать? Цитата Если старый, наоборот только с goto и примет. Это уже клиника, не надо делать заведомо неправильно... Ты ж на Паскале пишешь, а не на Бейсике, правда? |
Lapp |
Сообщение
#14
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Смотря какой препод. Если старый, наоборот только с goto и примет. Некоторые до сих пор требуют писать Program(name,input,output); Эти две вещи (goto и форма заголовка) совершенно несравнимы по сути. Стандартный заголовок если и мешает, то непринципиально. А goto тебе может навредить на всю оставшуюся жизнь.. Готов спорить, что ты ошибаешься по поводу старых преподавателей. И вообще, кто как принимает - это не ориентир. Нас тут меньше всего интересует, какие у вас там препы. Но если хочешь научиться программировать - слушай лучших участников Форума. Попробуй переделать свою прогу без goto. И в будущем старайся избегать его употребления.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Текстовая версия | 8.05.2024 10:31 |