Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/70: Рейтинг темы: голосов - 70, средняя оценка - 4.64
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
1

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

25.12.2010, 10:10. Показов 13019. Ответов 35
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Что прошу:
программа | каркас | идея | помощь
На свой выбор и умение прошу помочь.
Что нужно:
Программа которая сможет упрощать введенные логические функции (булевы функции). Приводить их к компактному виду, преобразовывать сокращать.
Есть программа на делфи (нету исходника) - ссылка
Отличная статья по законам алгебры логики и законами преобразования - ссылка

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

Добавлено через 11 часов 9 минут
странно, может плохо описал задачу?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.12.2010, 10:10
Ответы с готовыми решениями:

Вычисление логических выражений
написать программу позволяющую вывести на экран,значение след. логических выражений. логические...

Запись логических выражений
как сделать проверку && и || в одном if for(;i>0; i--) { if(a>0 && (b <0 || c<0 || d<0)...

Составление логических выражений
я чайник если есть решение - напишите. Буду благодарен Составление логических выражений...

Компилятор арифметико-логических выражений
Всем привет. Люди может кто поможет написать или уже может есть такое, Компилятор...

35
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
28.12.2010, 19:29  [ТС] 21
Author24 — интернет-сервис помощи студентам
Mr.X - я в шоке) дайте свой адрес я вышлю вам шоколадку!!! Чесно - большое спасибо.

Добавлено через 13 минут
439 строка - T_str var_name(s.begin(), str_it);
Ошибка при компилировании(
0
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
28.12.2010, 20:00 22
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
439 строка - T_str var_name(s.begin(), str_it);
Ошибка при компилировании(
Я только что скопировал обратно с форума и запустил у себя на студии без единой ошибки и замечания. Так что все претензии к вашему компилятору.
0
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
28.12.2010, 20:02  [ТС] 23
Div C++)
0
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
28.12.2010, 20:03 24
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
Div C++)
Не, у меня такого нету.
0
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 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 Посмотреть сообщение
без единой ошибки и замечания
пробито в студии = там все отлично. но исполнительный не работает.. странно.
0
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
04.01.2011, 19:35 26
Вот экзешник, как вы просили.
Вложения
Тип файла: rar Копия logika_11.rar (105.6 Кб, 62 просмотров)
1
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
05.01.2011, 22:03  [ТС] 27
не то что нужно как оказалось...

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

Добавлено через 9 часов 17 минут
Программа с нужным функционалом..
http://www.softportal.com/soft... eniya.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, буду рад если кто то поможет с правкой под это условие.
0
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 75
08.01.2011, 17:12 28
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение

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

Это не схемотехника, схемотехника это графическое представление функций И, ИЛИ, НЕ, а это просто Булева Алгебра.
0
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
11.01.2011, 15:07  [ТС] 29
Цитата Сообщение от Dimon_I Посмотреть сообщение
а это просто Булева Алгебра
))))))))) а булева алгебра не основа схемотехники?)
0
Эксперт С++
5056 / 3116 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
11.01.2011, 15:24 30
IIIa66uMEM6eP, вообще говоря, это отдельный раздел математики... И то, что в схемотехнике это используется, ещё не о чём не говорит. С тем же успехом можно сказать, что диффуры - основа электротехники. Нет, не основа, вспомогательный метод.
0
0 / 0 / 0
Регистрация: 11.01.2011
Сообщений: 3
11.01.2011, 22:49 31
Mr.X, Здравствуйте...я по поводу упрощения логических вункций в С++...вы выложили исходник для упрощения ,но только двух переменных. Реально сделать для 4-х?

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

Добавлено через 4 минуты
Mr.X скажите вашу аську, плиз
Пишите в личку.
0
0 / 0 / 0
Регистрация: 11.01.2011
Сообщений: 3
12.01.2011, 08:01 33
В том то и дело... что не могу в лс
0
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 75
16.01.2011, 11:06 34
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
Что прошу:
....
Есть программа на делфи (нету исходника) - ссылка
...
реально для 4-х переменных вот данная программа спокойно упрощает выражения с 4 переменными
0
заставил Бендера
854 / 319 / 17
Регистрация: 05.12.2010
Сообщений: 1,708
Записей в блоге: 6
20.03.2011, 21:46  [ТС] 35
Цитата Сообщение от Dimon_I Посмотреть сообщение
реально для 4-х переменных вот данная программа спокойно упрощает выражения с 4 переменными
сокращение выполняется по методу Квайна-МакКласки. Позволяет выполнять сколь угодно сложные преобразования.
хотя признаю - идея Mr.x по алгоритму тоже круто)) правда счетает меньше..
Есть исходник той программы, дал лично автор, кому нужно дам контакты.
0
0 / 0 / 0
Регистрация: 23.09.2017
Сообщений: 30
22.03.2018, 22:48 36
у меня та же проблема, нужно чтоб программа упрощала выражения с более чем 2 переменными
отпишу в лс

Добавлено через 3 часа 11 минут
Как мне переписать программу для большего количества переменных?
0
22.03.2018, 22:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2018, 22:48
Помогаю со студенческими работами здесь

Построение простых логических выражений
Помогите пожалуйста. Написать программу, проверяющую принадлежность точки с координатами(х,у)...

Написать калькулятор логических выражений на С
Здравствуйте. Помогите, пожалуйста, написать программу. Реализовать калькулятор – программу которая...

Вывести на экран значения логических выражений
Кто может помочь с программой пожалуйста? Написать программу, позволяющую вывести на экран...

Разработать программу для вычисления логических выражений
Разработать программу для вычисления логических выражений. На вход программы подаётся выражение,...


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru