C# :: Aufgabe #33 :: Lösung #3

9 Lösungen Lösungen öffentlich
#33

Mit Caesar Chiffre ent- und verschlüsseln

Anfänger - C# von Dome - 03.01.2013 um 01:30 Uhr
Schreiben Sie ein Programm, indem Sie mit Hilfe der Caesar Chiffre einen beliebigen Text ent- und verschlüsseln können. Zuvor muss der Text und die Anzahl der Verschiebung angegeben werden. Groß- und Kleinschreibung muss nicht beachtet werden.

Konsolenausgabe:

Geben Sie den Text ein: Beispielwort
Um wie viele Stellen soll verschoben werden: 1
Ergebnis: Cfjtqjfmxpsu
#3
vote_ok
von wladi-g (1310 Punkte) - 03.06.2014 um 13:03 Uhr
Quellcode ausblenden C#-Code
using System;

namespace CaesarVerschluesselung
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = "";
            short stellen = 0;
            byte buchstabe = 0;
            string ergebnis = "";

            Console.Write("Geben Sie den Text ein: ");
            text = Console.ReadLine();
            Console.Write("Um wie viele Stellen soll verschoben werden?\n(positiv = verschlüsseln, negativ = entschlüsseln)");
            do
            {
                Console.Write("Stellen angeben: ");
            }
            while (!short.TryParse(Console.ReadLine(), out stellen));
            if (stellen < 0)
                stellen += 26;
            while (stellen < 0)
                stellen += 25;
            while (stellen > 25)
                stellen -= 25;

            foreach (Char i in text)
            {
                buchstabe = (byte) i;
                if(65 <= buchstabe && buchstabe <= 90)
                    for (int j = 0; j < stellen; j++)
                    {
                        if (buchstabe == 90)
                            buchstabe = 64;
                        buchstabe++;
                    }
                if(97 <= buchstabe && buchstabe <= 122)
                    for (int j = 0; j < stellen; j++)
                    {
                        if (buchstabe == 122)
                            buchstabe = 96;
                        buchstabe++;
                    }
                ergebnis += (char) buchstabe;
            }
            Console.WriteLine("Ergebnis: {0}", ergebnis);
        }
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben