![]() |
AW: Variablentypen bei ord() erzeugen Fehler
Zitat:
Ich verstehe soweit das man in einen Array verschiedene Werte speichern kann und die Größe dynamisch festlegbar ist. ich hoffe ich habe das soweit richtig verstanden. Es tut mir sehr leid wenn das nervig für Sie ist und ich würde es auch nicht schlimm finden wenn Sie mir bei weiteren Hilfestellungen nicht mehr alles erklären möchten. Trotzdem ein großes danke und ich werde versuchen ihren Code zu verstehen und irgendwie umzusetzen! LG Noah |
AW: Variablentypen bei ord() erzeugen Fehler
Ja das ist besser verständlich. Da bieten sich Strings an, jeweils einer für's Original und die verschlüsselte Ausgabe. Ein einfaches Beispiel:
Delphi-Quellcode:
Wenn man 'Test' eingibt, ist die Ausgabe 'Udru'.
var
s,t: string; i: integer; c1,c2: char; begin readln(s); t := ''; for i:=1 to length(s) do begin c1 := s[i]; //berechne c2 aus c1 //Beispiel: //die nächste Zeile invertiert das unterste Bit des Zeichens c2 := char(ord(c1) xor 1); t := t + c2; end; writeln(t); end. Das ganze dann in eine Schleife einbauen, Lesen und Schreiben in Datei. Achtung, beim Verschlüsseln können Zeichen generiert werden, die nicht lesbar sind oder Pascal-Readln durcheinander bringen (zB wenn ein Zeilenende generiert wird). |
AW: Variablentypen bei ord() erzeugen Fehler
Delphi-Quellcode:
Tut mir leid wenn das nervt...
var
s,t: string; i: integer; c1,c2: char; begin readln(s); //s ist also das Textdokument in Form eines Strings? t := ''; for i:=1 to length(s) do begin c1 := s[i]; // s[1] steht dabei für welche Operations? (bin nur Anfänger) //berechne c2 aus c1 //Ist c1 dabei der unverschlüsselte Buchstabe und c2 der verschlüsselte? //Beispiel: //die nächste Zeile invertiert das unterste Bit des Zeichens c2 := char(ord(c1) xor 1); //wofür ist dieser Schritt? ist das eine anderer Vorschlag für eine "Verschlüsselung"? t := t + c2; //ist t der String der im Ausgabedokument abgespeichert werden soll? end; end. LG Noah |
AW: Variablentypen bei ord() erzeugen Fehler
Zitat:
Zitat:
Zitat:
Zitat:
1) eine Textdatei nicht gleichzeitig gelesen und geschrieben werden kann 2) nicht jeder Faktor geignet ist (für 8-Bit-Zeichen muss der Faktor teilfremd zu 256 sein). |
AW: Variablentypen bei ord() erzeugen Fehler
Delphi-Quellcode:
Das sollte das machen was Du möchtest, Dateinamen ersetzen und ab gehts :-D
procedure DateiDingens(const InputString: string; const Modifier: Byte; var Output: String);
var s: string; i: Integer; b: Byte; f: file of Byte; begin // Datei mit verschluesseltem Inhalt sichern AssignFile(F, Application.ExeName+'.txt'); Rewrite(f); for i := 1 to Length(InputString) do begin b := Ord(InputString[i]) + Modifier; write(f, b); end; CloseFile(F); // Datei mit verschluesseltem Inhalt laden AssignFile(F, Application.ExeName+'.txt'); Reset(F); s := ''; while not Eof(F) do begin Read(f, b); s := s + Char(b - Modifier); end; CloseFile(F); Output := S; end; Ps: Das ist ein all-in-one Beispiel damit Du gleich siehst wie man speichert und lädt. Pps: InputString sollte Text sein, bei Binär läuft das mit dem Modifier schnell über 255 hinaus und alles ist futsch. |
AW: Variablentypen bei ord() erzeugen Fehler
kribbelige Finger
|
AW: Variablentypen bei ord() erzeugen Fehler
Beim Ver- und Entschlüsseln würde ich maximalen Abstand von Strings nehmen, binär wäre besser aber sei's drum
Delphi-Quellcode:
Gruß
var
Infile : Textfile; s,t: string; i: integer; c1,c2: char; begin assignfile(infile,'c:\irgendwo\Meinzuverschluesselnder.txt'); reset(infile); assignfile(outfile,'c:\rgendwoanders\verschluesselter.txt'); rewrite(outfile); //------------------------ // Hier sollte nun eine Repeat until oder // while - Schleife beginnen //---------------- readln(infile,s); //s ist der erste String einer Textdatei t := ''; for i:=1 to length(s) do begin c1 := s[i]; // s[1] ist der ite Buchstabe des Strings //berechne c2 aus c1 //Ist c1 dabei der unverschlüsselte Buchstabe und c2 der verschlüsselte? //Beispiel: //die nächste Zeile invertiert das unterste Bit des Zeichens c2 := char(ord(c1) xor 1); //Eine Art Versclüsselung t := t + c2; //ist t der String der im Ausgabedokument abgespeichert werden soll? - Ja end; writeln(Outfile,t); //-------- closefile(outfile); closefile(Infile); end; K-H |
AW: Variablentypen bei ord() erzeugen Fehler
Zitat:
Der 1. Punkt macht auf jeden Fall Sinn Super! Bei dem 2. versteh ich es jedoch nicht ganz...ist es nicht egal welche Zahlen benutzt werden da die Verschlüsselung ja mit der Multiplikation und erst die Entschlüsselung mit der Division des bereits benutzten Multiplikators abläuft? |
AW: Variablentypen bei ord() erzeugen Fehler
Zitat:
Sollte es noch ein Problemchen geben schreibe ich wieder :) LG Noah |
AW: Variablentypen bei ord() erzeugen Fehler
Bin damit raus, viel Glück.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz