![]() |
Buchstaben per Zufall verteilen
Hi
Ich will eine Prozedur schreiben, die ein Wort mit 9 Buchstaben zerlegt, und die Buchstaben per Zufall auf 9 Panels verteilt. Dabei soll aber immer 1 bestimmter Buchstabe in ein bestimmtes Panel kommen. Die Prozedur sähe so aus:
Code:
und sie restlichen Buchstaben werden zufällig auf die
procedure split(s: string; i: integer);
begin panel1.caption := s[i]; : : restlichen Panels verteilt. Ein Aufruf sollte später so aussehen:
Code:
Hierbei käme das "N" in das Panel 1 und die anderen Buchstaben in die
split(GRUNDLAGE,4);
anderen Panels. Wie soll ich das denn mit der "zufälligen Verteilung" der restlichen Buchstaben machen??? :?: :?: :?: Gruß Mitternachtsfalke |
Re: Buchstaben per Zufall verteilen
Als ich würde das so machen
Zufällig einen Buchstaben raussuchen -> auf erstes Panel Diesen Buchstaben löschen Zufällig einen Buchstaben aus der Restmenge raussuchen -> auf zweites Panel Diesen Buchstaben löschen ... |
Re: Buchstaben per Zufall verteilen
1: Grundlage soll doch hier (in diesem Beispiel) wohl ein String sein.
Code:
So schwer ist das doch nicht, zeichen einem Panel zuweisen, dieses löschen und dann so weiter ;)
split([color=red]'[/color]GRUNDLAGE[color=red]'[/color], 4);
Delphi-Quellcode:
[EDIT]
Procedure split(s: String; i: Integer);
Var k: Integer; Begin Randomize; // diese Zeile eventuell in das OnCreate-Ereignis verschieben For k := 1 to 9 do Begin TPanel(Form1.FindComponent('Panel' + IntToStr(k))).Caption := s[i]; Delete(s, i, 1); i := Random(Length(s)) + 1; End; End; Och menno :cry: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:36 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-2025 by Thomas Breitkreuz