С# МЕТОД ПОЛИБИЯ шифрование и дишифрование \ ввод слова в консоли - C#

Узнай цену своей работы

Формулировка задачи:

Доброе время суток!

Помогите пожалуйста! Выручайте!

На С# раньше не приходилось работать, поэтому я новичок! Как преобразить этот код, чтобы

пользователь мог вводить слова через клавиатуру и оно шифровалось Методом Полибия

, а затем таким же способом после ввода определенных цифр пользователем расшифровалось!

Например:

Пользователь ввел слова АЛМа и в результате вышло 11 24 25 44, и наоборот пользователь ввел 11 24 25 44 в результате вышло АЛМа. Так же надо учесть что есть строчные и прописные буквы!

Полное описание задания:

Заполнить прямоугольник Полибия, в котором нужно отобразить все буквы русского алфавита от а до я и от А до Я плюс символы: пробел, точка, двоеточие, восклицательный знак, вопросительный знак и запятая ( всего 72 символа). Методом Полибия зашифровать любую фразу, введенную с клавиатуры. Затем уже расшифровать зашифрованную строку.

А вот и сам код:

Возможно его можно как-то преобразовать?!

Выручайте, ребята! Буду очень благодарен вам!

using System;
 
namespace Nurzone
{
    static class Program
    {
        static string[] mat = new string[] {
                    "АБВГДЕЖЗ",
                    "ИЙКЛМНОП",
                    "РСТУФХЦЧ",
                    "ШЩЪЫЬЭЮЯ"
            };
 
        static void Main(string[] args)
        {
            var text = "АЛМА";
            var result = String.Join(" ", Array.ConvertAll(text.ToCharArray(), encode));
            Console.WriteLine(result);
            Console.ReadKey();
        }
 
        private static string encode(char input)
        {
            for (int i = 0; i < mat.Length; i++)
            {
                var k = mat[i].IndexOf(input);
                if (k >= 0) return String.Format("{0}{1}", i + 1, k + 1);
            }
            return "";
        }
    }
}

Решение задачи: «С# МЕТОД ПОЛИБИЯ шифрование и дишифрование \ ввод слова в консоли»

textual
Листинг программы
static void Main(string[] args)
{
    // Создаем алфавит и выводим на экран
    string alp = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
    alp += alp.ToLower(); // в нижнем регистре
    alp += " .:!?,";
 
    PTable pTable = new PTable(9, 8, alp);
    Console.WriteLine("Таблица:\r\n" + pTable);
 
    Console.WriteLine("Введите слово для шифровки");
    string text = Console.ReadLine();
    Console.WriteLine("Закодированное слово: " + pTable.encode(text));
 
    try
    {
        Console.WriteLine("Введите слово для дешифровки");
        text = Console.ReadLine();
        Console.WriteLine("Дешифрованное слово: " + pTable.decode(text));
    }
    catch
    {
        Console.WriteLine("Попались неизвестные символы");
    }
 
    Console.ReadLine();
}

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


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

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

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