Einzelnen Beitrag anzeigen

ProgrammiererMike
(Gast)

n/a Beiträge
 
#1

Wörter zufällig wiederzusammensetzen

  Alt 31. Jan 2011, 18:14
Hallo Leute!

Ich habe ein Programm, in dem man in ein Editfeld ein Wort eingeben kann. Es soll zufällig wiederzusammengesetzt werden. Ich hab das ganze so gemacht:

Delphi-Quellcode:
   for I := 1 to length(Eingabe) do begin
       AusgabeDurcheinanderArray[I] := copy(Eingabe,I,I);
   end;

   for I := 1 to length(Eingabe) do begin
       Zufall := trunc(random(length(Eingabe)))+1;
       if AusgabeDurcheinanderArray[Zufall] = 'then begin
          Zufall := trunc(random(length(Eingabe)))+1;
          AusgabeDurcheinanderBuchstabe := AusgabeDurcheinanderArray[Zufall];
          AusgabeDurcheinanderFertig := AusgabeDurcheinanderFertig+AusgabeDurcheinanderBuchstabe;
          AusgabeDurcheinanderArray[Zufall] := '';
       end else begin
          AusgabeDurcheinanderBuchstabe := AusgabeDurcheinanderArray[Zufall];
          AusgabeDurcheinanderFertig := AusgabeDurcheinanderFertig+AusgabeDurcheinanderBuchstabe;
          AusgabeDurcheinanderArray[Zufall] := '';
       end;
   end;
Zuerst lege ich jeden Buchstaben in ein Array. Dann bilde ich eine Zufallszahl, schau ob das Array leer ist (das Array des Buchstaben, denn ich bereits entnommen habe wird geleert) wenn es leer ist soll eine neue Zufallszahl gebildet werden und sonst soll einfach der Buchstabe des Arrays zu den anderen die bereits entnommen worden sind hinzufügen.

Mein Problem: es werden manche buchstaben doppelt und manche gar nicht herausgenommen, dann wird aus einem wort wie hallo gleich mal llloh

Was mach ich falsch?

Mit freundlichen Grüßen

ProgrammiererMike

Geändert von ProgrammiererMike ( 1. Feb 2011 um 15:37 Uhr)
  Mit Zitat antworten Zitat