Encriptador Curso de Programación C# Sharp

Lección:

Más sobre Clases


Ejercicio:

Encriptador 10


Objetivo:

Cree una clase "Encrypter" para cifrar y descifrar texto.

Tendrá un método "Encrypt", que recibirá una cadena y devolverá otra cadena. Será un método estático, por lo que no necesitamos crear ningún objeto de tipo "Encrypter".

También habrá un método "Descifrar".

En este primer enfoque, el método de cifrado será muy sencillo: para cifrar añadiremos 1 a cada carácter, de forma que "Hello" se convertiría en "Ipmb", y para descifrar restaríamos 1 a cada carácter.

Un ejemplo de uso podría ser

string newText = Encrypter.Encrypt("Hola");


Código:

using System;
namespace Program
{
    class Encrypter
    {
        public static string Encrypt(string text)
        {
            int letterInt = 0;
            char letter = ' ';
            string textEncripted = "";
            for (int i = 0; i < text.Length; i++)
            {
                letterInt = (int)text[i] + 1;
                letter = (char)letterInt;
                textEncripted += letter.ToString();
            }
            return textEncripted;
        }

        public static string Decrypt(string text)
        {
            int letterInt = 0;
            char letter = ' ';
            string textDecripted = "";
            for (int i = 0; i < text.Length; i++)
            {
                letterInt = (int)text[i] - 1;
                letter = (char)letterInt;
                textDecripted += letter.ToString();
            }
            return textDecripted;
        }
    }

    class TextEncripted
    {
        static void Main()
        {
            bool debug = true;

            string newText = Encrypter.Encrypt("Hola");
            Console.WriteLine("Text encripted: {0}", newText);
            string TextDescripted = Encrypter.Decrypt(newText);
            Console.WriteLine("Text Decripted: {0}", TextDescripted);

            if (debug)
                Console.ReadLine();
        }
    }
}