Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 01.04.2020
Сообщений: 8

Неполадки с меню

02.12.2020, 20:30. Показов 521. Ответов 0

Студворк — интернет-сервис помощи студентам
Прежде чем подойти к проблеме, опишу суть кода.
Суть в том, что программа предлагает ввести 2 таблицы с 5-ю переменными, позже совершать над ними действия.
После ввода идет меню выбора: 1-Ввести новые таблицы; 2 - Совершить действия с таблицами; 3 - Выйти.
После выбора программа предлагает выбрать одну из таблиц и продолжить с ней работу.
Дальше. Есть одна таблица и к ней меню выбора(что можно сделать с таблицей): 1 - Конъюнкция; 2 - Дизъюнкция; 3 - Отрицание; 4 - Выбрать другую таблицу; 5 - Вернуться в главное меню; 6 - Выйти вовсе.
И вот на этом этапе начинается проблема. После выбора одного из пунктов 1-3 программа совершает действие и выключается, но не возвращается в меню. Причем, после того, как программа выведет ответ, все что написано далее(метки или вывод фразы) игнорируются, будто их и нет.
При выборе 4-6 все хорошо.

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

//Начало. Оно не так важно, но вдруг:
C++
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
#include <iostream>
#include <cstdlib>
#include <stdlib.h>
#include <math.h>
#include <algorithm>
using namespace std;
 
int main(){
int act,act1,act2;
int check;
int y,k,o,k2,o2;
bool f,f1,f2;
int cont = 0;
setlocale(LC_ALL, "Russian");
cout<<"Приветствую, предлагаю начать с ввода таблицчек!"<<endl<<endl;
 
tabl:
 
//табл1
 
int n1,m1;
    cout<<"Количество переменных равно 5, n"<< endl; m1 = 5;;
    cout<<"Введите количество строк таблицы 1, m: ";
    
    
        while(true) { cin >> n1; 
            if (cin.good() && n1<=32) { break; } 
            else { cout << "Всё фигня, давай по-новой, максимум возможно 32." << endl;} 
            cin.clear();
cin.ignore();}
    
    
    
    int** matr1=new int*[n1];
    for(int i=0;i<n1;i++)
        matr1[i]=new int[m1];
    for(int i=0;i<n1;i++)
    {
        for(int j=0;j<m1;j++)
        {
            cout<<"Введите ["<<i<<"]["<<j<<"] элемент: ";
            while(true) { cin >> matr1[i][j]; 
            if (cin.good() && matr1[i][j] == 0 || matr1[i][j] == 1) { break; } 
            else { cout << "Всё фигня, давай по-новой, вводить можно только 1 или 0. Не понимаю о чем ты (:" << endl;} 
            cin.clear();;
cin.ignore();}
            
        }
    }
   
    
//табл 2
int n2,m2;
    cout<<"Количество переменных равно 5, n."<< endl; m2 = 5;;
    cout<<"Введите количество строк таблицы 2, m2: ";
        while(true) { cin >> n2; 
            if (cin.good() && n1<=32) { break; } 
            else { cout << "Всё фигня, давай по-новой, максимум возможно 32." << endl;} 
            cin.clear();;
cin.ignore();}
    int** matr2=new int*[n2];
    for(int i=0;i<n2;i++)
        matr2[i]=new int[m2];
    for(int i=0;i<n2;i++)
    {
        for(int j=0;j<m2;j++)
        {
            cout<<"Введите ["<<i<<"]["<<j<<"] элемент: ";
            while(true) { cin >> matr2[i][j]; 
            if (cin.good() && matr2[i][j] == 0 || matr2[i][j] == 1) { break; } 
            else { cout << "Всё фигня, давай по-новой, вводить можно только 1 или 0. Не понимаю о чем ты (:" << endl;} 
            cin.clear();;
cin.ignore();}
        }
    }
    //вывод таблиц
     cout<<endl<<endl<<"Таблица 1:"<<endl;
    for(int i=0;i<n1;i++)
    {
        for(int j=0;j<m1;j++)
        {
            cout<<matr1[i][j]<<" ";
        }
        cout<<endl;
    }
    cout<<endl<<"Таблица 2:"<<endl;
    for(int i=0;i<n2;i++)
    {
        for(int j=0;j<m2;j++)
        {
            cout<<matr2[i][j]<<" ";
        }
        cout<<endl;
    }





//Вот тут уже пошлю само меню
C++
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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
while (true) {
    glmenu:
cout << endl;
cout << "Что вы хотите сделать?" << endl << "1. Задать новые таблицы истинности для функций." << endl <<
"2. Выполнить действия." << endl << "3. Выход." << endl;
cout << endl;
cout<<">>> ";
    while(true) { cin >> act; 
            if (cin.good() && 1<=act && act<=3) { break; } 
            else { cout << "Всё фигня, где ты нашел такие цифры." << endl;} 
            cin.clear();
cin.ignore();}
        
cout<<endl;
 
 
switch(act){
case 1: {
goto tabl;
break;
}
case 2: {
    behind:
cout << "Выберите таблицу для дальнейшей работы." << endl << "1. Таблица №1." << endl << "2. Таблица №2." << endl<<"3. Кажется, я ошибся, верните назад."<< endl;
cout<<endl<<">>> " ; 
while(true) { cin >> act; 
            if (cin.good() && 1<=act && act<=3) { break; } 
            else { cout << "Всё фигня, где ты нашел такие цифры." << endl;} 
            cin.clear();
            cin.ignore();}
            cout<<endl;
 
 
switch(act){
case 1:{
 
    cout << "Что вы хотите сделать? "<<endl<<"1. Конъюнкция."<< endl<<"2. Дизъюнкция. "<<endl<<"3. Отрицание. "<<endl<<"4. Прыгнуть назад. Другую таблицу хочу."<<endl<<"5. В главное меню."<<endl<<"6. Ничего не хочу. Выключи всё."<<endl;
    cout<<endl<<">>> ";
     while(true) { cin >> act1; 
            if (cin.good() && 1<=act1 && act1<=6) { break; } 
            else { cout << "Всё фигня, где ты нашел такие цифры." << endl;} 
            cin.clear();
cin.ignore();}
    switch(act1){
        
        
        case 1:{
            cout<<"Конъюнктирую.."<<endl;
        for(int i=0;i<n1;i++)
    {
        for(int j=0;j<m1;j++)
        {
            cout<<matr1[i][j]<<" ";
            
        }
        cout<<endl;
    }
    cout<<"Конъюнкция данной функции:"<<endl;
            for(y=0;y<=n1;y++){
            f = matr1[y][0]&matr1[y][1]&matr1[y][2]&matr1[y][3]&matr1[y][4];
            cout<<f<<endl;
            }
            break;}
        
        
        case 2:{
            cout<<"Дизъюнктирую.."<<endl;
            for(int i=0;i<n1;i++)
    {
        for(int j=0;j<m1;j++)
        {
            cout<<matr1[i][j]<<" ";
            
        }
        cout<<endl;
    }
    cout<<endl<<"Дизъюнкция данной функции:"<<endl;
            for(y=0;y<=n1;y++){
            f1 = matr1[y][0]||matr1[y][1]||matr1[y][2]||matr1[y][3]||matr1[y][4];
            cout<<f1<<endl;
            }
            break;}     
        case 3:{
            cout<<"Отрицаю.."<< endl;
              for(int i=0;i<n1;i++)
    {
        for(int j=0;j<m1;j++)
        {
            cout<<matr1[i][j]<<" ";
        }
        cout<<endl;
    }
    cout <<endl<<"Отрицание данной функции таково:"<<endl;
            for(int o=0;o<n1;o++)
    {
        for(int k=0;k<m1;k++)
        {
            if (matr1[o][k] == 1){matr1[o][k] =0; }
            else {matr1[o][k]=1 ; }
            cout<<matr1[o][k]<<" ";
        }
        cout<<endl;
        
    }
            break;}
        case 4:{
            cout<<"..прыгаю.."<<endl;
            goto behind;
            break;}
        case 5:{
            goto glmenu;
            break;}
        case 6:{
            cout<<"Не хоти дальше.."<<endl;
            exit(EXIT_SUCCESS);
            break;}
break;}
break;}
 
 
 
case 2:{
cout << "Что вы хотите сделать? "<<endl<<"1. Конъюнкция."<< endl<<"2. Дизъюнкция. "<<endl<<"3. Отрицание. "<<endl<<"4. Прыгнуть назад. Другую таблицу хочу."<<endl<<"5. В главное меню."<<endl<<"6. Ничего не хочу. Выключи всё."<<endl;
    cout<<endl; cout<<">>> "; 
    while(true) { cin >> act2; 
            if (cin.good() && 1<=act2 && act2<=6) { break; } 
            else { cout << "Всё фигняя, где ты нашел такие цифры." << endl;} 
            cin.clear();
cin.ignore();}
    cout<<endl;
    switch(act2){
        case 1:{
            cout<<"Конъюнктирую.."<<endl;
                for(int i=0;i<n2;i++){
        for(int j=0;j<m2;j++){
            cout<<matr2[i][j]<<" ";}
        cout<<endl;}
    cout<<"Конъюнкция данной функции:"<<endl;
            for(y=0;y<=n2;y++){
            f = matr2[y][0]&matr2[y][1]&matr2[y][2]&matr2[y][3]&matr2[y][4];
            cout<<f<<endl;
            }
            break;}
        case 2:{
            cout<<"Дизъюнктирую.."<<endl;
            for(int i=0;i<n2;i++)
    {
        for(int j=0;j<m2;j++)
        {
            cout<<matr2[i][j]<<" ";
            
        }
        cout<<endl;
    }
    cout<<"Дизъюнкция данной функции:"<<endl;
            for(y=0;y<=n2;y++){
            f1 = matr2[y][0]||matr2[y][1]||matr2[y][2]||matr2[y][3]||matr2[y][4];
            cout<<f1<<endl;
            }
            break;}
        case 3:{
            cout<<"Отрицаю.."<< endl;
                        for(int i=0;i<n2;i++)
    {
        for(int j=0;j<m2;j++)
        {
            cout<<matr2[i][j]<<" ";
            
        }
        cout<<endl;
    }
    cout <<"Отрицание данной функции таково:"<<endl;
            for(int o2=0;o2<n2;o2++)
    {
        for(int k2=0;k2<m2;k2++)
        {
            if (matr2[o2][k2] == 1){matr2[o2][k2] =0; }
            else {matr2[o2][k2]=1 ; }
            cout<<matr2[o2][k2]<<" ";
        }
        cout<<endl;
    }
            break;}
        case 4:{
            cout<<"..прыгаю.."<<endl<<endl;
                goto behind;
            break;}
        case 5:{
            goto glmenu;
            break;}
        case 6:{
            cout<<endl<<"Не хоти дальше.."<<endl;
            exit(EXIT_SUCCESS);
            break;}
    break;}
case 3:{
        goto glmenu;
        break;
    }
break;
}
break;
}
break;}
 
case 3: {
    cout<<"Закрытие программы..До новых встреч!"<<endl;
    exit(EXIT_SUCCESS);
break;
}
break;}
return 1;}
 
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2020, 20:30
Ответы с готовыми решениями:

Неполадки с меню
В браузере имено ИЕ6 и ИЕ7 в меню произошёл, зазор от таблицы, как исправить скажите,условными коментариями может, не получаеться...

Неполадки с меню Аккордеон
Не выскакивают аккардеоном пункты В чем проблема уже запутался. Поскажите, знающие люди. &lt;div class=&quot;akkordeon&quot;&gt; ...

Неполадки с верхним меню
Здравствуйте. Сверстал сайт для joomla 2.5. Проверял в Firefox, Opera, IE, Chrome почти все в норме но только один косяк с верхним меню. 3...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.12.2020, 20:30
Помогаю со студенческими работами здесь

Неполадки с верхним меню сайта
Помогитее установил шаблон bt_bodyworx начал работу ,дошел до создания модуля и его вывода ,но выводит странно не так как в шаблоне...

Неполадки с отображением меню в Download master
Первые строки меню : Файл, Закачка, Действие, Вид и ... отображаются нормально, а в остальных подпунктах какая-то ересь из символов. ...

Неполадки с установкой Windows 7 через boot меню
Всем привет. Проблема с установкой Windows 7 через boot меню. Вставлюя диск с записанной семеркой меняю настройки биоса, реакции ноль,...

неполадки по установке windows 7. контроллер данного диска не включен в меню BIOS компьютера
всем привет.столкнулся с такой проблемой в первый раз.поменял жесткий диск на ноутбуке samsung RV508 A01RU.при установке windows 7 из под...

Как добавить выплывающее меню к уже готовому горизонтальному меню (не меняя дизайн горизонтального меню)?
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt; &lt;html...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru