Переделать код с C++ на C#
Формулировка задачи:
Листинг программы
- //двойной квадрат
- #include <algorithm>
- #include <iostream>
- #include <conio.h>
- #include <stdio.h>
- #include <Windows.h>
- #include <ctime>
- #include <string>
- using namespace std;
- int main()
- {
- SetConsoleCP(1251);
- SetConsoleOutputCP(1251);
- int n1, n2, m1, m2, v;
- char kvadrat1_[7][5];
- int size = 100;
- kvadrat1_[0][0] = 'Ч';
- kvadrat1_[0][1] = 'Э';
- kvadrat1_[0][2] = 'Н';
- kvadrat1_[0][3] = 'Ю';
- kvadrat1_[0][4] = 'Р';
- kvadrat1_[1][0] = 'И';
- kvadrat1_[1][1] = 'Т';
- kvadrat1_[1][2] = 'Ь';
- kvadrat1_[1][3] = 'Ц';
- kvadrat1_[1][4] = 'Я';
- kvadrat1_[2][0] = 'Д';
- kvadrat1_[2][1] = 'М';
- kvadrat1_[2][2] = 'Е';
- kvadrat1_[2][3] = '.';
- kvadrat1_[2][4] = 'О';
- kvadrat1_[3][0] = 'В';
- kvadrat1_[3][1] = 'Ы';
- kvadrat1_[3][2] = 'П';
- kvadrat1_[3][3] = 'Ж';
- kvadrat1_[3][4] = ' ';
- kvadrat1_[4][0] = ':';
- kvadrat1_[4][1] = 'Б';
- kvadrat1_[4][2] = 'У';
- kvadrat1_[4][3] = 'Л';
- kvadrat1_[4][4] = 'К';
- kvadrat1_[5][0] = 'З';
- kvadrat1_[5][1] = 'Щ';
- kvadrat1_[5][2] = 'Ф';
- kvadrat1_[5][3] = 'Г';
- kvadrat1_[5][4] = 'Ш';
- kvadrat1_[6][0] = 'Х';
- kvadrat1_[6][1] = 'А';
- kvadrat1_[6][2] = ',';
- kvadrat1_[6][3] = 'С';
- kvadrat1_[6][4] = 'Ъ';
- char kvadrat2_[7][5];
- kvadrat2_[0][0] = 'Я';
- kvadrat2_[0][1] = 'Ч';
- kvadrat2_[0][2] = 'Г';
- kvadrat2_[0][3] = 'И';
- kvadrat2_[0][4] = 'Т';
- kvadrat2_[1][0] = ',';
- kvadrat2_[1][1] = 'М';
- kvadrat2_[1][2] = 'Ь';
- kvadrat2_[1][3] = 'Ж';
- kvadrat2_[1][4] = 'О';
- kvadrat2_[2][0] = '3';
- kvadrat2_[2][1] = 'Ю';
- kvadrat2_[2][2] = 'Р';
- kvadrat2_[2][3] = 'В';
- kvadrat2_[2][4] = 'Щ';
- kvadrat2_[3][0] = 'Ц';
- kvadrat2_[3][1] = ':';
- kvadrat2_[3][2] = 'П';
- kvadrat2_[3][3] = 'Е';
- kvadrat2_[3][4] = 'Л';
- kvadrat2_[4][0] = 'Ъ';
- kvadrat2_[4][1] = 'А';
- kvadrat2_[4][2] = 'Н';
- kvadrat2_[4][3] = '.';
- kvadrat2_[4][4] = 'Х';
- kvadrat2_[5][0] = 'Э';
- kvadrat2_[5][1] = 'К';
- kvadrat2_[5][2] = 'С';
- kvadrat2_[5][3] = 'Ш';
- kvadrat2_[5][4] = 'Д';
- kvadrat2_[6][0] = 'Б';
- kvadrat2_[6][1] = 'Ф';
- kvadrat2_[6][2] = 'У';
- kvadrat2_[6][3] = 'Ы';
- kvadrat2_[6][4] = ' ';
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- cout << kvadrat1_[i][j] << " ";
- cout << endl;
- }
- cout << endl;
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- cout << kvadrat2_[i][j] << " ";
- cout << endl;
- }
- stop:
- string shifr = "";
- char* text;
- stop1:
- cout << "ВВедите текст ";
- text = new char[size];
- cin.getline(text, size);
- int n = strlen(text);
- for (int q = 0; q < n; q = q + 2)
- {
- for (int i = 0; i < 7; ++i)
- for (int j = 0; j < 5; ++j)
- n1 = 0;
- n2 = 0;
- m1 = 0;
- m2 = 0;
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- {
- if (text[q] == kvadrat1_[i][j])
- {
- n1 = i;
- n2 = j;
- }
- }
- }
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- {
- if (text[q + 1] == kvadrat2_[i][j])
- {
- m1 = i;
- m2 = j;
- if (m1 != n1)
- shifr = shifr + kvadrat2_[n1][m2] + kvadrat1_[m1][n2];
- if (m1 == n1)
- shifr = shifr + kvadrat2_[n1][n2] + kvadrat1_[m1][m2];
- }
- }
- }
- }
- cout << endl;
- cout << shifr;
- cout << endl;
- exit(0);
- _getch();
- return 0;
- };
Решение задачи: «Переделать код с C++ на C#»
textual
Листинг программы
- int n1, n2, m1, m2, v;
- char[,] kvadrat1_ = new char[7,5]
- {
- {"ЧЭНЮР".ToCharArray()},
- {"ИТЬЦЯ".ToCharArray()},
- {"ДМЕ.О".ToCharArray()},
- {"ВЫПЖ ".ToCharArray()},
- {":БУЛК".ToCharArray()},
- {"ЗЩФГШ".ToCharArray()},
- {"ХА,СЪ".ToCharArray()}
- };
- char[,] kvadrat1_ = new char[7,5]
- {
- {"ЯЧГИТ".ToCharArray()},
- {",МЬЖО".ToCharArray()},
- {"ЗЮРВЩ".ToCharArray()},
- {"Ц:ПЕЛ".ToCharArray()},
- {"ЪАН.Х".ToCharArray()},
- {"ЭКСШД".ToCharArray()},
- {"БФУЫ ".ToCharArray()}
- };
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- Console.Write("{0} ", kvadrat1_[i][j]);
- Console.WriteLine();
- }
- Console.WriteLine();
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- Console.Write("{0} ", kvadrat2_[i][j]);
- Console.WriteLine();
- }
- Console.ReadKey();
- string shifr = "";
- char[] text;
- Console.ReadKey();
- Console.Write("ВВедите текст ");
- text = new char[size];
- text = Console.ReadLine().ToCharArray();
- int n = text.Length;
- for (int q = 0; q < n; q = q + 2)
- {
- for (int i = 0; i < 7; ++i)
- for (int j = 0; j < 5; ++j)
- n1 = 0;
- n2 = 0;
- m1 = 0;
- m2 = 0;
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- {
- if (text[q] == kvadrat1_[i][j])
- {
- n1 = i;
- n2 = j;
- }
- }
- }
- for (int i = 0; i < 7; ++i)
- {
- for (int j = 0; j < 5; ++j)
- {
- if (text[q + 1] == kvadrat2_[i][j])
- {
- m1 = i;
- m2 = j;
- if (m1 != n1)
- shifr = shifr + kvadrat2_[n1][m2] + kvadrat1_[m1][n2];
- if (m1 == n1)
- shifr = shifr + kvadrat2_[n1][n2] + kvadrat1_[m1][m2];
- }
- }
- }
- }
- Console.WriteLine("\n{0}", shifr);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д