Форум программистов, компьютерный форум CyberForum.ru

Програмирование упращения логических выражений - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 48, средняя оценка - 4.92
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
25.12.2010, 10:10     Програмирование упращения логических выражений #1
Что прошу:
программа | каркас | идея | помощь
На свой выбор и умение прошу помочь.
Что нужно:
Программа которая сможет упрощать введенные логические функции (булевы функции). Приводить их к компактному виду, преобразовывать сокращать.
Есть программа на делфи (нету исходника) - ссылка
Отличная статья по законам алгебры логики и законами преобразования - ссылка

Задача: повторить функционал программы или помочь с мат.моделью программы. Возможно буду выполнять на флеше с возможностью работы онлайн.
Почему выбрал с++ как место для создания темы - если мне напишут исходник на с++, для меня будет проще всего разобраться в коде.

Добавлено через 11 часов 9 минут
странно, может плохо описал задачу?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2010, 10:10     Програмирование упращения логических выражений
Посмотрите здесь:

Компилятор арифметико-логических выражений C++
Написать калькулятор логических выражений на С C++
Написать программу, позволяющую вывести на экран значения следующих логических выражений C++
Написать программу, позволяющую вывести на экран значения следующих логических выражений C++
Разработать программу для вычисления логических выражений C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
28.12.2010, 19:29  [ТС]     Програмирование упращения логических выражений #21
Mr.X - я в шоке) дайте свой адрес я вышлю вам шоколадку!!! Чесно - большое спасибо.

Добавлено через 13 минут
439 строка - T_str var_name(s.begin(), str_it);
Ошибка при компилировании(
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mr.X
Эксперт С++
 Аватар для Mr.X
2803 / 1579 / 247
Регистрация: 03.05.2010
Сообщений: 3,670
28.12.2010, 20:00     Програмирование упращения логических выражений #22
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
439 строка - T_str var_name(s.begin(), str_it);
Ошибка при компилировании(
Я только что скопировал обратно с форума и запустил у себя на студии без единой ошибки и замечания. Так что все претензии к вашему компилятору.
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
28.12.2010, 20:02  [ТС]     Програмирование упращения логических выражений #23
Div C++)
Mr.X
Эксперт С++
 Аватар для Mr.X
2803 / 1579 / 247
Регистрация: 03.05.2010
Сообщений: 3,670
28.12.2010, 20:03     Програмирование упращения логических выражений #24
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
Div C++)
Не, у меня такого нету.
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
29.12.2010, 15:18  [ТС]     Програмирование упращения логических выражений #25
Чтож такое...437 строка. онлайн компилятор
http://codepad.org/
Output:
t.cpp: In member function 'bool T_log_calculator::calc_var_name(T_str&, T_truth_table&)':
Line 437: error: no matching function for call to 'ptr_fun(<unresolved overloaded function type>)'
compilation terminated due to -Wfatal-errors.

Добавлено через 19 часов 4 минуты
Цитата Сообщение от Mr.X Посмотреть сообщение
без единой ошибки и замечания
пробито в студии = там все отлично. но исполнительный не работает.. странно.
Mr.X
Эксперт С++
 Аватар для Mr.X
2803 / 1579 / 247
Регистрация: 03.05.2010
Сообщений: 3,670
04.01.2011, 19:35     Програмирование упращения логических выражений #26
Вот экзешник, как вы просили.
Вложения
Тип файла: rar Копия logika_11.rar (105.6 Кб, 42 просмотров)
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
05.01.2011, 22:03  [ТС]     Програмирование упращения логических выражений #27
не то что нужно как оказалось...

Добавлено через 1 минуту
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
Задача: повторить функционал программы или помочь с мат.моделью программы
вот такая задача была.. ну и к ней прилогалась программа, функции которой нужно повторить

Добавлено через 9 часов 17 минут
Программа с нужным функционалом..
http://www.softportal.com/software-5...azsheniya.html

это основы схемотехники...На вход подается логическое выражение, в нем переменные. Программа по возможности его упрощает и сокращает, строя таблицу истинности.

Пример работы будущей программы:
Человек пишет логическое выражение: (A-B)|!(B-C), где "-" это следствие, |-Оператор Шеффера (антиконъюнкция). !-отрицание.
Ответ программы:

A-B -> !A+B
!(B-C) -> !!B+C
!!B+C -> !B+C
(A-B)|(!(B-C)) -> (!((!A+B)(!B+C)))
(!((!A+B)(!B+C))) -> !((!A+B)(!B+C))
!((!A+B)(!B+C)) -> A!B+B!C
Ответ: B!C+A!B.

Таблица истинности:
A B C F
0 0 0 = 1
0 0 1 = 1
0 1 0 = 0
0 1 1 = 1
1 0 0 = 1
1 0 1 = 1
1 1 0 = 0
1 1 1 = 1


Программа упростила это выражение.

Еще раз благодарствую за помощь Mr.X, буду рад если кто то поможет с правкой под это условие.
Dimon_I
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 75
08.01.2011, 17:12     Програмирование упращения логических выражений #28
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение

...это основы схемотехники...

Это не схемотехника, схемотехника это графическое представление функций И, ИЛИ, НЕ, а это просто Булева Алгебра.
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
11.01.2011, 15:07  [ТС]     Програмирование упращения логических выражений #29
Цитата Сообщение от Dimon_I Посмотреть сообщение
а это просто Булева Алгебра
))))))))) а булева алгебра не основа схемотехники?)
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
11.01.2011, 15:24     Програмирование упращения логических выражений #30
IIIa66uMEM6eP, вообще говоря, это отдельный раздел математики... И то, что в схемотехнике это используется, ещё не о чём не говорит. С тем же успехом можно сказать, что диффуры - основа электротехники. Нет, не основа, вспомогательный метод.
Bonita575
0 / 0 / 0
Регистрация: 11.01.2011
Сообщений: 3
11.01.2011, 22:49     Програмирование упращения логических выражений #31
Mr.X, Здравствуйте...я по поводу упрощения логических вункций в С++...вы выложили исходник для упрощения ,но только двух переменных. Реально сделать для 4-х?

Добавлено через 4 минуты
Mr.X скажите вашу аську, плиз
Mr.X
Эксперт С++
 Аватар для Mr.X
2803 / 1579 / 247
Регистрация: 03.05.2010
Сообщений: 3,670
12.01.2011, 00:18     Програмирование упращения логических выражений #32
Цитата Сообщение от Bonita575 Посмотреть сообщение
Mr.X, Здравствуйте...я по поводу упрощения логических вункций в С++...вы выложили исходник для упрощения ,но только двух переменных. Реально сделать для 4-х?

Добавлено через 4 минуты
Mr.X скажите вашу аську, плиз
Пишите в личку.
Bonita575
0 / 0 / 0
Регистрация: 11.01.2011
Сообщений: 3
12.01.2011, 08:01     Програмирование упращения логических выражений #33
В том то и дело... что не могу в лс
Dimon_I
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 75
16.01.2011, 11:06     Програмирование упращения логических выражений #34
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
Что прошу:
....
Есть программа на делфи (нету исходника) - ссылка
...
реально для 4-х переменных вот данная программа спокойно упрощает выражения с 4 переменными
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.03.2011, 21:46     Програмирование упращения логических выражений
Еще ссылки по теме:

C++ Составление логических выражений
C++ Вычисление логических выражений
C++ Построение простых логических выражений

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
20.03.2011, 21:46  [ТС]     Програмирование упращения логических выражений #35
Цитата Сообщение от Dimon_I Посмотреть сообщение
реально для 4-х переменных вот данная программа спокойно упрощает выражения с 4 переменными
сокращение выполняется по методу Квайна-МакКласки. Позволяет выполнять сколь угодно сложные преобразования.
хотя признаю - идея Mr.x по алгоритму тоже круто)) правда счетает меньше..
Есть исходник той программы, дал лично автор, кому нужно дам контакты.
Yandex
Объявления
20.03.2011, 21:46     Програмирование упращения логических выражений
Ответ Создать тему
Опции темы

Текущее время: 03:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru