Переделать код с 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);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.667 из 5
Похожие ответы