AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Hilfe beim Erstellen eines Würfelprogramms
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe beim Erstellen eines Würfelprogramms

Ein Thema von lali · begonnen am 28. Feb 2012 · letzter Beitrag vom 28. Feb 2012
Antwort Antwort
Seite 1 von 2  1 2      
lali

Registriert seit: 28. Feb 2012
3 Beiträge
 
#1

Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 17:44
Hallo,
ich bräuchte Hilfe beim Erstellen eines Würfelprogramms. Dabei soll via buttonclick 20 mal gewürfelt werden bzw solange bis eine 6 gewürfelt wird und in der Listbox soll die Anzahl der Versuche angegeben werden.
Der Quelltext macht mir große Probleme (bin noch nicht lange mit delphi vertraut) und ich probiere schon seit Stunden rum, aber kriege immer wieder Fehlermeldungen. Ich hatte da an eine Repeat-Until Schleife gedacht, aber habs nicht richtig hingekriegt.
Kann mir jemand ein wenig beim Quelltext helfen?
Dankeschön.
  Mit Zitat antworten Zitat
Benutzerbild von Coffeecoder
Coffeecoder

Registriert seit: 27. Apr 2011
242 Beiträge
 
Delphi 6 Enterprise
 
#2

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:00
Hi und willkommen in der DP.
Dann zeig mal bitte mal was du schon hast.
Coffeecoder
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:09
Na klar, zeig doch mal was Du schon hast, und welche Fehlermeldungen es gibt.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
dillipp

Registriert seit: 28. Feb 2012
9 Beiträge
 
Delphi 3 Professional
 
#4

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:26
Moin, ich denke, so müsste das klappen.

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    ButtonWuerfeln: TButton;
    procedure ButtonWuerfelnClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  
implementation

{$R *.DFM}

procedure TForm1.ButtonWuerfelnClick(Sender: TObject);
var i, ergebnis:Integer; //Variablen Deklaration
begin
  randomize; //Initialisieren des Zufallsgenerators
  listbox1.clear; //leeren der Box
  for i:=1 to 20 do //er führt es 20 mal aus
    begin
      ergebnis:=random(6)+1; //hier wird eine zufallszahl von 1-6 (0->6 +1) erstellt
      listbox1.items.add(inttostr(ergebnis)); //das ganze wird in die Lite geschrieben
      if ergebnis=6 then exit; //wenn es eine 6 war, hört er hier auf.
    end;
end;

end.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#5

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:40
Zuerst der Punkt: if ergebnis=6 then exit; Eine For Schleife verlässt man mit Break. Das macht in deinem Fall zwar nichts aus, aber wenn später noch etwas nach der Schleife kommt, funktioniert der Code nicht.

An für sich funktioniert der Code, aber so wie ich dich verstanden habe willst du nicht die Würfe anzeigen, sondern nur die Anzahl der Würfe bis 6.

Im Grunde mußt du nur an diesem Punkt einen Block einfügen, statt Exit aufzurufen:

if ergebnis=6 then exit Hier ein Beispiel:

Delphi-Quellcode:
const
  AnzahlVersuche = 20;
var
  i: Integer;
  Wurf: Byte;
begin
  //ListBox2.Items.Clear;

  Randomize;
  for i := 1 to AnzahlVersuche do
  begin
    Wurf := Random(6) + 1;
    //ListBox2.Items.Add('Versuch ' + IntToStr(i) + ' Zahl ' + IntToStr(Wurf));
    if Wurf = 6 then
    begin
      ListBox1.Items.Add('Anzahl der Versuche: ' + IntToStr(i));
      Break;
    end;
  end;

  if Wurf <> 6 then
    ListBox1.Items.Add('Trotz ' + IntToStr(AnzahlVersuche) + ' Versuche, keine 6');
end;
  Mit Zitat antworten Zitat
dillipp

Registriert seit: 28. Feb 2012
9 Beiträge
 
Delphi 3 Professional
 
#6

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:57
Hast recht, mit break anweisungen usw kenn ich mich nich so gut aus, ich lerns halt noch. Den Teil mit der Anzahl hatte iwie überlesen.
Aber so wie du es geschrieben hast, sollte es funktioniern und viiiel schöner aussehen^^

dillipp
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 18:58
@dillipp und Popov: Ihr beide macht gerade fremde Hausaufgaben.
Hilfe geben ist OK aber der Fragende soll auch seine eigenen Gehirnzellen benützen.
Andreas
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#8

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 19:15
@shmia

Jajn, denn...

1.) wenn er Programmieren als Kurs belegt hat und sich seine Hausaufgaben von jemandem anders erledigen läßt, so
1.1) sein Problem und seine Entscheidung ob er etwas lernen will oder nicht, denn
1.2) wer bin ich, dass ich das verurteile

2.) for allem als Anfänger hat hat man es schwer bis man so viel an Grundwissen sich aneignet, dass man in der Lage ist auch selbst zu lernen, denn bevor einer das Addieren lernen kann, muß er die Zahlen kennen. Natürlich kann man in der Schule 1 Jahr lang Konsolenanwendungen programmieren, bis Pascal sitzt, so dass man mit OOP anfangen kann, oder man hilft den Leuten über die ersten Hürden, so dass sie beides parallel lernen.
  Mit Zitat antworten Zitat
lali

Registriert seit: 28. Feb 2012
3 Beiträge
 
#9

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 19:41
So, habs jetzt einigermaße hingekriegt, allerdings kriege ich bei "for i:=1 to 20 do" die fehlermeldung "missing operator or semicolon" und bei "listbox1.items.add" ebenfalls.
Was ist daran problematisch?
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#10

AW: Hilfe beim Erstellen eines Würfelprogramms

  Alt 28. Feb 2012, 19:49
Ich würde sagen da fehlt ein Operator oder Semikolon
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 07:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz