Юлия
Юлия

C++. Режим работы с екраном через CASE

Всем привет. Пожалуйста прошу у вас помощи. Для етого кода нужно сделать режим работы с екраном через case чтоб выглядело примерно так
1. Введите размер матрицы
2. Заполните матрицу
3. Введите степень
4. Выход

#include
#include
using namespace std;

void matpow(int N, int
matrix, int pow);

int main(){
system("chcp 1251");
int N, pow;
cout << "введите размер матрицы: ";
cin >> N;
int
matrix = new int* [N];
for(int i = 0; i < N; i++)
matrix = new int [N];
cout << "\nзаполните матрицу: ";
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++)
cin >> matrix[j];
}
cout << "\nвведите степень: ";
cin >> pow;
matpow(N, matrix, pow);
system("pause");
return 0;
}

void matpow(int N, int
matrix, int pow){
int new_matrix[N][N];
cout << "\nновый массив: \n";
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
for(int k = 0; k < pow; k++){
new_matrix[j] = matrix[j]*matrix[j];
}
cout << " " << new_matrix[j];
}
}
}

Анна Пастушкова
Анна Пастушкова

Тут есть дополнительная подлость: если вывести все это меню вместе, то пользователь может захотеть нажать 3 до 1 и 2... Значит, примерно так:

int main(){
system("chcp 1251");
int N=0, pow=0, с;
int **matrix=0;
do
{
cout << "1. Введите размер матрицы" << endl;
if(N>0)cout << "2. Заполните матрицу" << endl;
if(matrix!=0)cout << "3. Введите степень" << endl;
cout << "4. Выход" << endl;
cin >> c;
switch(c)
{
case 1:
...//вводим N
break;
case 2:
...//создаем и вводим матрицу; если хочешь быть тру - проверяй, не создана ли она уже, и освобождай память перед созданием новой
break;
case 3:
...//считаем степень
break;
case 4:
cout << "До свидания! " << endl;
break;
default:
cout << "Неправильный ввод! " << endl;
}

}
while(c != 4);
}

все равно быдлокод вышел, правда, но направление примерно такое.

Похожие вопросы
Как работает оператор case?
C# работа со строками
Есть ли в C++ селектор, как в Паскаль (case - of -end)?
pascal ABC (оператор case)
Помогите с Делфи, case
C# работа с изображением
c++ работа с реестром
bash : case (как испровить ошибку?)
Работа со строкой в c++
C++, работа с файлами