Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 14.04.2011, 03:00
Renaissance Renaissance вне форума
Прохожий
 
Регистрация: 14.04.2011
Сообщения: 2
Репутация: 10
По умолчанию Диаграммы Вейча

как построить диаграмму Вейча для 3 переменных в delphi?

Таблица истености:

x1 x2 x3 y
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0
Ответить с цитированием
  #2  
Старый 14.04.2011, 10:25
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Есть такой метод Пошаговой детализации. Надо перечислить основные этапы (3 - 4) решения задачи. Потом увидите, что "правильно сформулировать проблему - это на 50% её решить". Всё время задавайте себе вопросы: "Что мне мешает это сделать?" и "Как это принято делать (у других)?". Короче, от вас нужно краткое описание стандартного алгоритма решения, а уж подсчитать или нарисовать вам помогут.
Ответить с цитированием
  #3  
Старый 14.04.2011, 11:43
Renaissance Renaissance вне форума
Прохожий
 
Регистрация: 14.04.2011
Сообщения: 2
Репутация: 10
По умолчанию

x1 x2 x3 y
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0

теперь рисуем диаграмму:

x2 x2 !x2 !x2
x1 1 0 1 0
!x1 0 0 1 1
!x3 x3 x3 !x3

То есть расставляем 1 туда, где они стоят в таблице истинности (! - не, то есть отрицание) Первая ячейка - x1 = 1, x2 = 1, x3 = 0. Подпись показывает, где какое значение переменной должно быть. Там, где ! - соответствующая переменная = 0, где его нет - 1.

Теперь строим функцию. Все 1 должны быть закрыты соответствующим произведением, причем 2, 4 или 8 рядом стоящих 1 можно объединять и закрыть одним произведением или даже одной переменной. Таблица не плоская, она свернута по длинной стороне, то есть 1-я колонка соприкасается с 4-й. Каждая 1 должна быть закрыта.

Имеем 2 пары 1, стоящих рядом (строка 2 столбцы 3,4 и столбец 3) и 1 единица отдельно. имеем функцию:

y = x1^x2^!x3 V !x2^x3 V !x1^!x2, поскольку:
- отдельная единица зависит от всех переменных
- пара в столбце 3 не зависит от значения x1
- пара в строке 2 не зависит от значения x3

ето все нада зделать в делфи....а в вузе показали только как делать калькуляторы.
Ответить с цитированием
  #4  
Старый 15.04.2011, 11:55
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Я вам советую сделать первую часть: нарисовать StringGrid и заполнить её ноликами и единицами. Можете предусмотреть ручное заполнение (за это вас преподаватель не похвалит), можете автоматическое, но вам нужна будет всё равно исходная таблица.
Алгоритма рисования областей (и нахождения искомой функции) вы не привели, так что могу только дать ссылку на Википедия, где сказано: "возможно несколько вариантов накрытия."
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:43.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025