![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
rol5en |
![]() ![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Помогите решить задачу!
Данные: строка содержащая булевскую функцию от переменных A, B, .....(отрицание А записывается как \А), для определения которой использованы только операции +, *, \ (скобки отсутствуют). Задание упростить функцию, исключив повторяющиеся слагаемые или сомножетели и нулевые слагаемые. ![]() Заранее спасибо! |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Мог бы ты написать пару примеров входных и выходных данных ?
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
To: klem4
А зачем? Без данных слабо? ![]() const To: rol5en Погоняй на разных примерчиках, в принципе (хотя это и не проверялось !!!) должно работать с любым количеством переменных, НО (!!!) обозначения переменных должны быть по порядку: (a, b, c, d, ...) Само желаемое количество переменных задается здесь: const Найдешь глюки - говори, на каких значениях поймал их. Задание, кстати, довольно интересное ![]() Сообщение отредактировано: volvo - 16.11.2005 18:59 |
rol5en |
![]()
Сообщение
#4
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Перед последним begin`ом в строчке // s: string = 'a*\b + b'; ставит курсор
на // и пишет begin expected ![]() |
klem4 |
![]()
Сообщение
#5
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
В BP и TP нету комментария вида //, убери // и все что за ним стоит или заключи это
между { и } я думаю дело в этом ... -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
![]() Замени на { s: string = 'a*\b + b'; } а можешь вообще удалить, это было просто для теста... |
rol5en |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ему не нравиться переменная //s можно поменять на ps !!!
|
rol5en |
![]()
Сообщение
#8
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
А вот ещё если написать строчку s: string = 'a*\a*b+a*\b+b';
как s: string = 'a*\a*b+a*\b+b+b; по идее должно получиться a*\b + 2*b' там ведь в задание написаноисключив повторяющиеся слагаемые я это понимаю как b+b=2*b или я что не так понял |
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
To: rol5en
То, что ты написал в предыдущем посте на вяжется никак с названием топика. У тебя тема какая? Цитата Булевские ф-ции, упрощение булевских ф-ций Допустим, b = True... Что имеем? True + True = 2 * True? Нет, в булевой алгебре True + True = True or True = True !!! А то, что ты написал - это приведение подобных, и к булевой алгебре никакого отношения не имеет... ![]() |
rol5en |
![]()
Сообщение
#10
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Да ты прав! Извини!
![]() |
rol5en |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Я тут знаешь подумал над твоим True + True = True or True = True!!! и пришёл к выводу что исключение повторяющихся слагаемых значит b+b=b т.е. a*\a*b+b+b будет равно b! Как бы это сделать???
![]() |
volvo |
![]()
Сообщение
#12
|
Гость ![]() |
Цитата Как бы это сделать??? ![]() |
rol5en |
![]()
Сообщение
#13
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
А где её взять? Новую версию? Или ты ту отредактировал?
Сообщение отредактировано: rol5en - 16.11.2005 18:30 |
volvo |
![]()
Сообщение
#14
|
Гость ![]() |
Цитата Или ты ту отредактировал? ![]() |
rol5en |
![]()
Сообщение
#15
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
А как мне туда перейти? Кинь ссылку=)
|
volvo |
![]()
Сообщение
#16
|
Гость ![]() |
![]() |
rol5en |
![]()
Сообщение
#17
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Извини да ступил! Но раз это последняя версия то убери может тогда
// s: string = 'a*\b + b'; и ещё если написать a+b+a*\b+a то получиться +a+b+a*\b как убрать плюс??? |
volvo |
![]()
Сообщение
#18
|
Гость ![]() |
To: rol5en
В следующий раз копируй программу ПОЛНОСТЬЮ - со всеми пробелами !!! Ты упустил какой-то пробел (ищи теперь сам где он был), и теперь будешь получать неверный результат... У меня только что нормально отработало. |
rol5en |
![]()
Сообщение
#19
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ещё раз извини!
![]() |
rol5en |
![]()
Сообщение
#20
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 27 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ещё вопрос это я упустил или а*а даёт ноль?
|
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 20:00 |