Caesar-Verschlüsselung - Verschiebewert für jedes Feld anders
-
Hallo zusammen,
ich stehe mal wieder vor einer neuen Herausforderung. Eine Eingabe soll mit Caesar verschlüsselt werden. Das habe ich geschafft. Ich möchte aber gerne jeden Wert mit einem anderen Verschiebewert versehen, der erste Wert mit 1, der zweite mit 2, der dritte mit 3 usw.
Mein Code sieht bisher so aus. Für Hilfe bin ich dankbar.
/*##############################################
Ein einfaches Verschlüsselungsprogramm
##############################################*/
#include <iostream>
using namespace std;
//die Funktion
void caesar(string);//die Funktion zur Cäsar-Verschlüsselung
void caesar(string kette)
{
int laenge, verschiebung;
//die Länge der ursprünglichen Zeichenkette ermitteln
laenge = kette.length();
cout << "Caesar-Verschluesselung" << endl;
//den Verschiebewert einlesen
cout << "Bitte geben Sie den Verschiebewert ein: ";
cin >> verschiebung;
//jedes Zeichen um den angegebenen Wert verschieben
for (int zaehler = 0; zaehler < laenge; zaehler++)
cout << static_cast<char>(kette[zaehler] + verschiebung);
cout << endl << endl;
}
int main()
{
string eingabe;
//Die ursprüngliche Zeichenkette einlesen
cout << "Bitte geben Sie eine Zeichenkette ein (ohne Leerzeichen): ";
cin >> eingabe;
cout << "Die urspruengliche Zeichenkette ist: " << eingabe << endl << endl;
//die Verschlüsselungen durchführen
caesar(eingabe);
return 0;
}