Дана последовательность литер, имеющая следующий вид: +-d1+-d2+-d3+-dn(где di - цифра от 0 до
9). Последовательность заканчивается знаком "=". Вычислить значение алгебраической суммы.
С чего надо начать? Я вообще не въезжаю
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| vovka239 |
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Реальное имя: Владимир Репутация: 0 |
Помогите пожалуйста решить задачу:
Дана последовательность литер, имеющая следующий вид: +-d1+-d2+-d3+-dn(где di - цифра от 0 до 9). Последовательность заканчивается знаком "=". Вычислить значение алгебраической суммы. С чего надо начать? Я вообще не въезжаю |
![]() ![]() |
| vovka239 |
Сообщение
#2
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Реальное имя: Владимир Репутация: 0 |
Цитата Замени read(s[i]); на readLn(s[i]); Заменил, всё-равно не пашет. Запускаю программу, Ввожу "+", жму интер, оно мне выдаёт 0, снова "+" или "-", интер и всё, закрывается... |
| Lapp |
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Заменил, всё-равно не пашет. Запускаю программу, Ввожу "+", жму интер, оно мне выдаёт 0, снова "+" или "-", интер и всё, закрывается... Моя ошибка, извини. Я не заметил, что ты читаешь посимвольно. Нужно не ReadLn(s[i]); , а вот так: ReadLn(s); - то есть ты должен читать всю строку сразу, а не по одному символу. Теперь твои ошибки.. Одну уже сказал, вторая, видимо, вытекает из нее. При вводе нужно набирать всю строку - энтер нужно нажимать один раз в самом конце строки (и еще один раз после вывода результата). То есть ты вводишь: +2+5-4+3-1= (и жмешь энтер) Получаешь: 5 Жмешь энтер еще раз, чтобы выйти из проги. Строка всегда должна начинаться со знака (+ или -), содержать только однозначные числа и заканчиваться знаком "=". Вот тебе на всякий случай полный код, без излишеств и правильно отформатированный. program Project2; Успехов. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
vovka239 Строки 4.12.2009 1:57
Lapp С чего надо начать?Просматриваешь строку в цикле. … 4.12.2009 4:29
vovka239 Непонимаю...
Там ещё массив должен быть? Или цикл … 4.12.2009 6:01
Lapp Там ещё массив должен быть? Или цикл for?Нет, ни м… 4.12.2009 6:10
andriano Там ещё массив должен быть?В данном случае массив … 4.12.2009 16:57
vovka239 Сори за столь долгое молчание в теме, задачу всё е… 17.12.2009 14:09
Lapp откуда взялось +-48? мне непонятно...
ASCII код с… 17.12.2009 14:58
andriano ASCII код символа 0 есть 48 ($30). Далее по … 17.12.2009 23:53
vovka239 Примерно так?
program Project2;
uses
SysUtils;
… 17.12.2009 16:45
Lapp Замени
read(s[i]);
на
readLn(s[i]); 17.12.2009 16:55
vovka239 Всё-равно вылетает... :glare: 17.12.2009 17:29
Lapp Всё-равно вылетает... :glare:Поясняй, где, что, ка… 18.12.2009 6:55
volvo Ничего не вылетает, если подумать, что ты хочешь в… 17.12.2009 18:11
vovka239 Спасибо большое за помощь!!! :) 22.12.2009 16:32![]() ![]() |
|
Текстовая версия | 7.11.2025 10:01 |