PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Text entschlüsseln?!!?



maddl23
05.01.2007, 20:22
Hallo,
ich habe folgendes Problem. Ich soll ein c programm schreiben, der folgenden Text entschlüsselt:
LPUNLKPJOACVUAOLVKVYZAVYTRULJOAYBWYLJOACVUKYHBZZCV TDHSKLRVTTPJOOLYPJOTBZZZHNLULZDLPOUHJOALAZLOYHSSBL ILYHSSHBMKLUAHUULUZWPAGLUZHOPJONVSKLULSPJOASLPUZPA GLUBUKKYVILUHBZKLTOPTTLSZAVYZHOTPANYVZZLUHBNLUKHZJ OYPZARPUKCVY

Ich habe bereits herausgefunden, dass jeder Buchstabe des Alphabets um 7 Zeichen zurück versetzt werden muss, um die Verschlüsselung zu knacken... (der entschlüsselte Text also: "Ein Gedicht....")
Alle darstellbaren Zeichen befinden sich im Intervall: [A, Z].

Ich habe leider keine Idee, wie ich ein solches C-Programm schreiben soll. Vielleicht kann mir jemanden dabei helfen, bzw. den ein oder anderen Gedankenanstoß geben!?
Vielen Dank!![shadow=red:fb4b12b3c5][/shadow:fb4b12b3c5]

lpw
05.01.2007, 20:55
Kann man nicht eine Art liste mit dem Alphabet machen, und dan von vorne nach hinten durchlesen und dann immer ersetzen durch den buchstaben 7 Weiter unten in der liste?
Oder du machst ne liste mit den buchstaben links das alphabet und rehts um 7 buchstabne verschoben, dann anstat 7 nach unten zu gehen einen nach rechts...
(Das war eher gedankenstoß, ob man das realisieren kann weis ich nicht...)

tuxer
05.01.2007, 22:06
Hallo,

als kleiner Gedankenanstoß :) : schau dir mal die ASCII Werte der Buchstaben an

mfg

izaseba
05.01.2007, 22:18
char text[]="Hallo";
char *ptr = text;
while (*ptr) {

printf("%c",(*ptr)-7);
ptr++;
}


sowas ?

Ohne Garantie auf Erfolg...

Gruß Sebastian

chr-mt
06.01.2007, 00:27
Hi,
noch ein kleiner Denkanstoß, allerdings in VB , Sorry ;)

Private Sub Uebersetzen()
Code = "LPUNLKPJOACVUAOLVKVYZAVYTRULJOAYBWYLJOACVUKYHBZZCV TDHSKLRVTTPJOOLYPJOTBZZZHNLULZDLPOUHJOALAZLOYHSSBL ILYHSSHBMKLUAHUULUZWPAGLUZHOPJONVSKLULSPJOASLPUZPA GLUBUKKYVILUHBZKLTOPTTLSZAVYZHOTPANYVZZLUHBNLUKHZJ OYPZARPUKCVY"
no_code = ""

For n = 1 To Len(Code)
char = Mid(Code, n, 1)

If Asc(char) > 71 Then
no_code = no_code + Chr(Asc(char) - 7)
Else
no_code = no_code + Chr(Asc(char) + 19)
End If
Next n
End Sub




funktionieren tut's jedenfalls ....

Gruß
Christopher