1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Екатерина7 |
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 43 Пол: Женский Репутация: 0 |
помогите, пожалуйста, разобраться с задачей
Для заданного набора целых чисел без знака расставить между ними арифметические знаки сложения, деления, и умножения так, чтобы результат вычисления полученного арифметического выражения был минимальным. Число знаков умножения в этом выражении должно быть равным или на 2 больше, чем знаков сложения, а знаков сложения- равно или на 1 больше, чем знаков деления. В наборе должно быть не менее четырех чисел, а в полученном выражении должны присутствовать все три арифметических знака. (умножение и деление имеют приоритет перед операциями сложения и вычитания, деление производится с остатком) Сообщение отредактировано: Екатерина7 - |
![]() ![]() |
| Lapp |
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Остается открытым вопрос про приоритеты операций. Нужно его учитывать или нет? Пожалуйста, уточни. Решения отличаются довольно сильно.
Решение без приоритетов несложное. Собственно, вот оно.. const Я его слишком придирчиво не проверял (не на чем, не считать же на бумажке)). Нашедшему существенную ошибку - плюс в репу)). Катя, спрашивай, что неясно. Его можно в принципе переделать и на приоритеты.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
| Екатерина7 |
Сообщение
#3
|
|
Новичок ![]() Группа: Пользователи Сообщений: 43 Пол: Женский Репутация: 0 |
я же вроде там в скобочках дописала..
(умножение и деление имеют приоритет перед операциями сложения и вычитания, деление производится с остатком) Добавлено через 5 мин. еще несовсем понятно эта строчка Res,Min: tNum; и вот это Dec(Ad); Добавлено через 1 мин. Dec(Ad);- это результат операции какой-то? |
| Lapp |
Сообщение
#4
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
я же вроде там в скобочках дописала.. Извиняюсь, не заглянул наверх (лучше говорить по ходу темы)Цитата еще несовсем понятно эта строчка Res,Min: tNum; Res - это сам результат выполнения операций. В самом начале он равен первому числу, потом "накапливается" по мере выполнения. и вот это Dec(Ad); Dec(Ad);- это результат операции какой-то? Min - это минимальный из всех Res, то есть то, что мы ищем. Мы его обновляем по мере встечи более маленьких значений Res. Dec(x) - это операция уменьшения x на 1, то есть эквивалентно записи: x:=x-1 Спрашивай дальше. Если приоритет нужно учитывать, решение нужно дорабатывать. Подумай, как. Я тоже )). -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Екатерина7 рекурсия- расстановка знаков 23.11.2009 1:10
мисс_граффити Екатерина, перенести тему в "Задачи на заказ… 23.11.2009 2:33
Екатерина7
Екатерина, перенести тему в "Задачи на заказ… 23.11.2009 2:54
Lapp Согласия на перенос, как я понял, не поступало... … 23.11.2009 9:09
Гость соображений никаких нет.. с рекурсией не работала.… 23.11.2009 16:43
Гость соображений никаких нет.. с рекурсией не работала.… 23.11.2009 17:00
Екатерина7 спасибо огромное тебе!!!! подумаю … 23.11.2009 23:42
Гость а что такое Start?
например, Start:=false 24.11.2009 2:09
Lapp а что такое Start?
например, Start:=falseStart … 24.11.2009 10:50
Гость массив Oper- массив знаков. так? 24.11.2009 13:35
Гость рекурсия используется в самом конце программы? че… 24.11.2009 14:00
Unconnected Присваивание логической переменной значения false.… 24.11.2009 2:16
Lapp массив Oper- массив знаков. так?Так. Вопрос был, … 24.11.2009 15:31
Екатерина7 нет, спасибо, не нужно восстанавливать..
Добавлен… 25.11.2009 3:02
Unconnected Ну как бы да, применяется здесь... Т.е. процедура … 25.11.2009 3:18
Lapp Да. Достаточно было указать на три вызова процеду… 25.11.2009 6:31
Екатерина7 спасибо большое!!! 25.11.2009 18:44
Екатерина7 несовсем пойму, как она выполняется..точнее вообще… 8.12.2009 1:21
Lapp несовсем пойму, как она выполняется..точнее вообще… 8.12.2009 2:41
Екатерина7 смотри,
например 319155=8+2+1+8*10*10*7/9/4/5
во… 8.12.2009 14:09
Lapp Гм.. И мне тоже непонятно. Кать, откуда ты береш… 8.12.2009 22:28
Екатерина7 хм... все, нашла ошибку! спасибо! вес прав… 9.12.2009 2:58
Lapp хм... все, нашла ошибкуИзвини - ошибку в чем? Вро… 9.12.2009 3:36
Екатерина7 да, ошибка была не у тебя.. все нормально. если … 9.12.2009 11:36
Lapp если не трудно, сможешь объяснить, пожалуйста :bl… 9.12.2009 11:55
volvo Я тоже кое чего не понимаю... Например, откуда ты … 8.12.2009 14:29![]() ![]() |
|
Текстовая версия | 8.11.2025 18:00 |