Ich werde mal die Karten komplett offen auf den Tisch legen. Bitte nicht lachen, falls ihr eine bessere Methode kennt, aber ich versuche in ein Programm eine Art Verschlüsselung einzubauen und habe daher zu Testzwecken das folgende Programm geschrieben.
Delphi-Quellcode:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Grids,
StdCtrls;
type
{ TForm1 }
TForm1 =
class(TForm)
Button1: TButton;
ListBox1: TListBox;
ListBox2: TListBox;
Memo1: TMemo;
Memo2: TMemo;
Memo3: TMemo;
procedure Button1Click(Sender: TObject);
private
procedure Coding(
var x:
string);
procedure Decoding(
var x:
string);
public
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.Coding(
var x:
string);
var i:integer;
begin
for i:=0
to listbox1.items.count-1
do
if x=listbox1.items[i]
then x:=listbox2.items[i];
end;
procedure TForm1.Decoding(
var x:
string);
var i:integer;
begin
for i:=0
to listbox2.items.count-1
do
if x=listbox2.items[i]
then x:=listbox1.items[i]
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
x:
string ;
begin
for i:=1
to Length(Memo1.lines.text)
do
begin
x:=coding(memo1.lines.Strings[i]);
memo2.lines.Strings[i]:=x;
end;
end;
end.
Anbei noch ein Bild meines Formulares.
Ich hoffe euch wird klar, was ich mir gedacht hatte. Ich würde, auch wenn es vielleicht einfacher geht, ungern anders vorgehen, weil ich gerade erst ins Verschlüsseln eingestiegen bin und gerne mit Tausch-Chiffrierung beginnen möchte.
Ich freue mich auf eure Ideen. Bitte berichtigt NICHT einfach den Code, sondern gebt mir vielleicht lieber Tipps, wie ich ihn selbst verbessern kann. Sonst lerne ich daraus leider nichts...
LG und Danke für die schon jetzt zahlreichen Antworten
Rawsche