Hey Leutz,
da ich das Programmieren in letzter Zeit leider etwas vernachlässigt habe wollte ich mal wieder iwas coden. Da bin ich zufällig auf das Thema Verschlüsselung gestoßen. Dann hab ich mir die einfachste Verschlüsselung, die Caesar Chiffre, rausgesucht die man finden kann und nun wollte ich diese im Bereich C/C++ anwenden.
Nun ergibt sich bei mir folgendes Problem: Sobald ich einen zu hohen Integerwert festlege, kommt bei der Entschlüsselung teilweise "Crap" raus...
Ich habe folgendes Beispiel ausgewählt: Text: TopSecretTextVeryDangerous ; Integerwert: 9
Wisst ihr vllt. woran es liegen könnte?
Code:#include <iostream>
#include <string>
using namespace std;
int main()
{
char Alpha[53] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
cout << "Bitte geben Sie einen Text ein, welcher verschluesselt werden soll:\n";
char text[2048]; //255
cin >> text;
cout << "Bitte geben Sie ihren persoenlichen Verschluesselungs-Integerwert ein: ";
int ver;
cin >> ver;
int length;
length = strlen(text);
int enci;
int enca;
for (enci=0; enci<length; enci++)
{
int j;
for (j=0; j<55; j++)
{
if(text[enci] == Alpha[j])
{
enca = j;
j=100;
}
else
{}
}
enca = enca + ver;
if(enca>53)
{
enca = ver-1;
}
text[enci] = Alpha[enca];
}
cout << "Der verschluesselte Text lautet nun: " << text << endl;
int deci;
int deca;
for (deci=0; deci<length; deci++)
{
int j;
for (j=0; j<55; j++)
{
if(text[deci] == Alpha[j])
{
deca = j;
j=100;
}
else
{}
}
deca = deca-ver;
if(deca<0)
{
deca = 53 - (ver-1);
}
text[deci] = Alpha[deca];
}
cout << "Entschluesselung: " << text << endl;
system("pause");
return 0;
}