Informatik Material Portal Portfolio Präsentation Grafik Tabellenkalkulation Informatik56 9 10 11 12 13 Messen, Steuern, Regeln Linux Theorie Didaktik Open Source Spiele Wettbewerbe Netzbetreuung intern Literatur Links Energie corewar UNIX/Linux
Pfad: Startseite / Fächer / Informatik
Autor: be
21.09.2005 10:53
465

Würfelhäufigkeit - Lösung

unit mWuerfelhaeufigkeit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    edAnzahl: TEdit;
    Label1: TLabel;
    Memo1: TMemo;
    btOK: TButton;
    procedure btOKClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btOKClick(Sender: TObject);
var h1,h2,h3,h4,h5,h6: Integer;  // Zähler der Häufigkeiten
    anzahl, zahl, i: Integer;
begin
  anzahl := StrToInt(edAnzahl.Text);
  Memo1.Lines.Clear;

  // Zähler auf 0 setzen
  h1:=0;
  h2:=0;
  h3:=0;
  h4:=0;
  h5:=0;
  h6:=0;

  for i:=1 to anzahl do
  begin
    // Zufallszahl von 1 bis 6 generieren
    zahl := Random(6)+1;
    // entsprechende Häufogkeit um 1 erhöhen
    case zahl of
      1: Inc(h1);
      2: Inc(h2);
      3: Inc(h3);
      4: Inc(h4);
      5: Inc(h5);
      6: Inc(h6);
    end;
  end;

  // Ausgabe der Häufigkeiten
  Memo1.Lines.Add('1: ' + IntToStr(h1));
  Memo1.Lines.Add('2: ' + IntToStr(h2));
  Memo1.Lines.Add('3: ' + IntToStr(h3));
  Memo1.Lines.Add('4: ' + IntToStr(h4));
  Memo1.Lines.Add('5: ' + IntToStr(h5));
  Memo1.Lines.Add('6: ' + IntToStr(h6));
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  // Zufallszahlgenerator initialisieren
  Randomize
end;

end.