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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 40, средняя оценка - 4.60
precklu
Сообщений: n/a
#1

Найти все минимальные дизъюнктивные нормальные формы функции - C++

25.04.2006, 09:02. Просмотров 4815. Ответов 4
Метки нет (Все метки)

задание на диплом...

на вход подается булева функция в символьном или табличном виде..

на выходе ВСЕ минимальные дизъюнктивные нормальные формы этой функции..

число переменных - хватит 20.

люди, помогите!!!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2006, 09:02     Найти все минимальные дизъюнктивные нормальные формы функции
Посмотрите здесь:

Вычислить значения функции в указанных точках и найти максимальные и минимальные из этих значений - C++
Собственно задача есть. Писал такое: // ConsoleApplication2.cpp: определяет точку входа для консольного приложения. // #include...

Заменить все минимальные элементы на противоположные. - C++
Дана последовательность из n действительных чисел. (задачу решить,используя одномерный массив) Заменить все минимальные элементы на...

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

Заменить все минимальные элементы одномерного массива на противоположные - C++
Дана последовательность из n действительных чисел. Заменить все минимальные элементы на противоположные Одномерный массив

Заменить все минимальные элементы значениями, равными заданному числу - C++
Заполнить целочисленный двухмерный массив размера NM случайными числами в диапазоне от -200 до 200. Заменить все минимальные элементы...

Описать функцию, которая удаляет все минимальные элементы из списка - C++
Помогите пожалуйста. Я студент второго курса. (Не программист ни разу >.<") Мне нужна помощь в написании программы. Завтра уже нужно...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сообщений: n/a
25.04.2006, 09:02     Найти все минимальные дизъюнктивные нормальные формы функции #2
Прими мои соболезнование, задание не из легких
glory-gerrard
-3 / 0 / 2
Регистрация: 25.11.2012
Сообщений: 3
09.12.2013, 01:08     Найти все минимальные дизъюнктивные нормальные формы функции #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#include <iostream>
#include<time.h>
#include <stdlib.h>
using namespace std;
void VuvidMas(unsigned int mas[12])
{
    for(int i=1;i<=12;i++)
    cout<<mas[i]<<"  ";
    cout<<endl;
    
}
void ZapolConstMas(unsigned int mas[12])
{
    unsigned int ConstMas[12]={1,2,32,6,5,8,27,54,7,12,45,5};
    
    for(int i=1;i<=12;i++)
    mas[i]=ConstMas[i];
}
void ZapolRandMas(unsigned int mas[12])
{
    srand(time(NULL));
    for(int i=1;i<=12;i++)
    mas[i]=rand()%65535;
}
void BinarSort(unsigned int mas[12],int count)
{
    unsigned int LeftMas[12],RightMas[12];
    int max,min,k,q,i;
    float OpElem;
    max=mas[1];
    min=mas[1];
    for(i=1;i<=count;i++)
    {
        if (mas[i]>max) max=mas[i];
        if (mas[i]<min) min=mas[i];
    }
    OpElem=(max+min)/2;
    k=0;q=0;
    for(i=1;i<=count;i++)
    {
        if (mas[i]>=OpElem)
        {
            k++;
            RightMas[k]=mas[i];         
        }
        if (mas[i]<OpElem)
        {
            q++;
            LeftMas[q]=mas[i];
        }       
    } 
    if (k!=count)
    {
        BinarSort(RightMas,k);
        BinarSort(LeftMas,q);
        for (i=1;i<=k;i++) mas[i]=RightMas[i];
        for (i=k+1;i<=k+q;i++) mas[i]=LeftMas[i-k];
    }
}
void BubbleSort(unsigned int mas[12],int count)
{
    int i,k,tmp;
    for(i=1;i<=count-1;i++) 
        for(k=1;k<=count-i;k++)     
            if (mas[k]<mas[k+1])
        {
            tmp=mas[k];
            mas[k]=mas[k+1];
            mas[k+1]=tmp;           
        }       
}
int menu()
{
    int choice;
    cout<<"****ГЊГҐГ*Гѕ****\n\n";
    cout<<"1. Г‡Г*Г¤Г*ГІГЁ Г¬Г*Г±ГЁГў ГїГЄ ГЄГ®Г*Г±ГІГ*Г*ГІГі.\n";
    cout<<"2. ГЊГ*Г±ГЁГў ГўГЁГЇГ*äêîâèõ Г·ГЁГ±ГҐГ«.\n";
    cout<<"3. ÂèõiГ¤\n";
    cout<<": ";
    cin>>choice;
    return choice;
}
int main ()
{
    setlocale(LC_ALL,"rus");
    unsigned int ConstMas[12]={1,2,32,4,5,8,6,54,7,12,45,5};//Г¬Г*Г±ГЁГў ГЄГ®Г*Г±ГІГ*Г*ГІ
    unsigned int RandMas[12],NewConstMas[12];
    cout<<"Ñòâîðèòè i ГўГЁГўГҐГ±ГІГЁ îäГ*îâèìiГ°Г*ГЁГ© Г¬Г*Г±ГЁГў.\n"<<"ÂèêîГ*Г*ГІГЁ îáðîáêó Г¬Г*Г±ГЁГўГі çãiГ¤Г*Г® Г§ Г§Г*ГўГ¤Г*Г*Г*ГїГ¬\n"<<"ГЌГ*ïðÿìîê ñîðòóâГ*Г*Г*Гї 'ГЏГ® çìåГ*ГёГҐГ*Г*Гѕ'\n"<<"ÂèêîГ*Г*Гў ñòóäåГ*ГІ ãðóïè ГЇГ§-124, ГѓГ«Г*äèøåâ Гќ.Г‘. Г‚Г*Г°iГ*Г*ГІ 4\n"<<endl;
    bool exit=false;
    for(;;)
    {
        int  choice = menu();
        switch(choice)
        {
            case (1):
                ZapolConstMas(NewConstMas);
                cout<<"ГЊГ*Г±ГЁГў ГЄГ®Г*Г±ГІГ*Г*ГІ\n";
                VuvidMas(NewConstMas);
                cout<<"ÑïîñiГЎ ñîðòóâГ*Г*Гї\n"<<"1.ГЃiГ*Г*Г°Г*e\n"<<"2.ГЋГЎГ¬iГ*îì\n";
                cout<<": ";
                int tmp;
                cin>>tmp;
                switch(tmp)
                {
                    case (1):
                        BinarSort(NewConstMas,12);
                        cout<<"Г‚iäñîðòîâГ*Г*ГЁГ© Г¬Г*Г±ГЁГў\n";
                        VuvidMas(NewConstMas);
                        break;
                    case (2):
                        BubbleSort(NewConstMas,12);
                        cout<<"Г‚iäñîðòîâГ*Г*ГЁГ© Г¬Г*Г±ГЁГў\n";
                        VuvidMas(NewConstMas);
                        break;
                }
                break;
            case (2):
                ZapolRandMas(RandMas);
                VuvidMas(RandMas);
                cout<<"ÑïîñiГЎ ñîðòóâГ*Г*Гї\n"<<"1.ГЃiГ*Г*Г°Г*e\n"<<"2.ГЋГЎГ¬iГ*îì\n";
                cout<<": ";
                cin>>tmp;
                switch(tmp)
                {
                    case (1):
                        BinarSort(RandMas,12);
                        cout<<"Г‚iäñîðòîâГ*Г*ГЁГ© Г¬Г*Г±ГЁГў\n";
                        VuvidMas(RandMas);
                        break;
                    case (2):
                        BubbleSort(RandMas,12);
                        cout<<"Г‚iäñîðòîâГ*Г*ГЁГ© Г¬Г*Г±ГЁГў\n";
                        VuvidMas(RandMas);
                        break;
                }
                break;
            case(3):
             exit=true;
              break;
                            
        }
        if (exit)
                break;
    }
return 0;
}
gromo
09.12.2013, 01:35
  #4

Не по теме:

Ну, как принято уже говорить : "Не прошло и 8 лет...".

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2013, 02:33     Найти все минимальные дизъюнктивные нормальные формы функции
Еще ссылки по теме:

Поменять местами минимальные элементы массива используя функции - C++
Помогите поменять местами минимальные элементы массива А (57) и матрицы В (7х5)

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

Заменить все минимальные элементы вектора максимальным значением его элементов - C++
2) заменить все минимальные элементы вектора максимальным значением его элементов

Найти минимальные в векторе - C++
в векторе n элементов, необходимо сделать следующее - находить минимальное среди элементов таким образом: ...

Найти в строке минимальные слова - C++
Здравствуйте,помогите пожалуйста.Не могу придумать как найти в строке минимальные слова,учитывая,что их может быть несколько.Хотя бы принцип

Найти в массиве минимальные элементы. - C++
Здравствуйте! Прошу помочь с такой задачкой: В действительном массиве максимальной размерностью 7*7 найти в нечетных столбцах минимальные...


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

Или воспользуйтесь поиском по форуму:
Zazy
45 / 45 / 15
Регистрация: 14.04.2013
Сообщений: 185
09.12.2013, 02:33     Найти все минимальные дизъюнктивные нормальные формы функции #5
изобрел машину времени вернулся в прошлое дабы помочь себе молодому ?
Yandex
Объявления
09.12.2013, 02:33     Найти все минимальные дизъюнктивные нормальные формы функции
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru