Ich habe mal ein bisschen herum probiert und habe da was gefunden, was ich für einfach und doch sehr Wirkungsvoll finde!
Delphi-Quellcode:
function TForm1.MixString(Enter: String): String;
var
S: String;
R: Integer;
SL: TStringList;
begin
SL := TStringList.Create;
try
(******Buchstaben einsetzen********)
S := '';
for R := 1 to Length(Enter) do
SL.Add(Enter[R]);
(******Buchstaben mischen**********)
Randomize;
while SL.Count > 0 do begin
R := Random(SL.Count);
Insert(SL[R], S, Length(S)+1);
SL.Delete(R);
end;
Result := S;
(**********************************)
finally
SL.Free;
end;
end;
Das ganze funktioniert also mit einer Stringlist, in die alle Buchstaben eingetragen werden, danach wird einer rausgepickt und zum Ergebnis hinzugefügt und in der StringList gelöscht, so kann er nicht nocheinmal genommen werden.
Es ist ein bisschen spät, aber vielleicht nützt es ja noch jemandem was!