Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Cäsar-Verschlüssung » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 3 Beiträge
N.S

Vielen vielen Dank für die Hilfe, jetzt stimmt es.


{
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 + (zaehler + 1));
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;

caesar(eingabe);

return 0;
}

nochmals ich danke dir
eulerscheZahl

Hast du das mal laufen lassen?
Nein, es ist nicht richtig, du machst immer noch eine monoalphabetische Substitution.

Die Verschiebung geht mit cout<<static_cast<char>(kette[zaehler]+ verschiebung+zaehler);.
Nach dem 'z' geht es jetzt aber mit {| weiter. Sollte da vielleicht ein 'a' kommen?
N.S Cäsar-Verschlüssung

Meine Frage:
Ich soll die Cäsar-Verschlüsselung mit einer zusätzlichen Verschiebung um den Index des Zeichens umsetzten..Das erste Zeichen soll also zusätzlich um eine Position verschoben werden, das zweite Zeichen zusätzlich um zwei Positionen usw...
hier ist meine Lösung. Ist es richtig? Ich bedanke mich.

cout << "kette[zaehler] + verschiebung + (zaehler +1))" <<endl;
cout<<static_cast<char>(kette[zaehler]+ verschiebung);
cout<<endl<<endl;

Meine Ideen:
#include <iostream>

using namespace std;

void caesar();

void caesar (string kette){

int laenge , verschiebung ;
laenge = kette.length();

cout<<" verschiebewert eingeben: ";
cin>>verschiebung;
for (int zaehler=0;zaehler<laenge;zaehler++)

{
cout << "kette[zaehler] + verschiebung + (zaehler +1))" <<endl;
cout<<static_cast<char>(kette[zaehler]+ verschiebung);
cout<<endl<<endl;
}


}


int main()
{
string eingabe;
cout<<"geben sie ein Wort ein das sie verschluesseln moechten: ";
cin>>eingabe;
cout<<"sie haben: "<<eingabe<<" eingegeben"<<endl;

caesar (eingabe);
return 0;
}