AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Sammelbilder [lineares Feld]

Ein Thema von me2u · begonnen am 26. Apr 2007 · letzter Beitrag vom 3. Mai 2007
Antwort Antwort
me2u
(Gast)

n/a Beiträge
 
#1

Re: Sammelbilder [lineares Feld]

  Alt 29. Apr 2007, 20:15
Hi, ich habe mittlerweile folgenden Code: Ich habe übrigens das mit dem boolean geändert, kam irgendwie gerade so, als ich an anderer Stelle das mit + 1 eingebaut habe und dafür natürlich integer oder cardinal benötige.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

const bilder_gesamt = 10; //Anzahl aller Bilder

var Bilder : array [0..(bilder_gesamt-1)] of integer;
    Tafeln : integer; //Anzahl der Tafeln Schokolade, die gekauft werden
    fehlend : integer; //Anzahl der Bilder, die man noch nicht gesammelt hat
    i : integer; //Zählvariable

begin
  //Zufallsgenerator initialisieren
  randomize;

  //Startwerte setzen
  Tafeln := 0;
  fehlend := bilder_gesamt;
  //Zuerst müssen alle Bilder den Wert 0 haben
  for i := 0 to (bilder_gesamt - 1) do
    Bilder[i]:=0;

  //Verarbeitung: "Einkauf" Schleife
  while fehlend > 0 do
  begin
    Tafeln := Tafeln + 1;
    i := Random(bilder_gesamt);
    //Bild wird als gekauft "markiert"
    Bilder[i] := Bilder[i] + 1;
    //Wenn man das Bild hat, wird fehlend verringert
    IF Bilder[i] = 1 THEN
      fehlend := fehlend - 1;
  end;

  //Ausgabe
  lblAusgabe.Caption := 'Man muss ' + IntToStr(Tafeln) + ' Tafeln kaufen bis man alle Bilder gesammelt hat.';
end;
Jetzt muss man ja theoretisch aus den ganzen Werten, die man rausbekommt einen Mittelwert berechnen. Dafür muss man aber die ganze Prozedur öfters ausführen lassen. Wie kann man so etwas machen? Meine Idee wäre jetzt alles oben bei private reinzuschreiben und unten bei "procedure TForm1.Button1Click(Sender: TObject);" dann alles öfter hinzuschreiben. Ist aber sehr unsauber

Und natürlich bräuchte man eine neue Variable, sagen wir mal "Mittelwert". Man muss ja dann immer das Ergebnis bei Tafeln irgendwie zwischenspeichern und am Ende dann rechnen

Mittelwert = (Ergebnis1 + Ergebnis2 + Ergebnis3 + ...) / Anzahl Durchläufe

Wie realisiert man so etwas am besten ohne diese Ergebnis1 bis x ?

Mit freundlichen Grüßen
me2u

P.S. Ihr seid echt das geilste Delphi Forum, das ich kenne ! Ohne euch hätte ich das wahrscheinlich nicht gepackt. Aber jetzt ist mir ganz klar, was da oben beim Einkaufen der Schokolade passiert
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 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