AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [Suche]Hilfe bei Turbo Pascal Lottozahl Generator
Thema durchsuchen
Ansicht
Themen-Optionen

[Suche]Hilfe bei Turbo Pascal Lottozahl Generator

Ein Thema von crisbinfranke · begonnen am 9. Feb 2010 · letzter Beitrag vom 16. Feb 2010
Antwort Antwort
Seite 1 von 2  1 2      
crisbinfranke

Registriert seit: 27. Okt 2009
11 Beiträge
 
#1

[Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 18:35
Hallo liebe Delphi-Praxis User.
Ich brauche eure Hilfe.
In der Schule arbeiten wir momentan mit dem Programm "Turbo Pascal" und irgendwie werden wir nicht so richtig Freunde.
Heute in der Schule sollten wir dann einen "Lotto Rechner" schreiben.
Unser Lehrer schrieb uns das meiste an der Tafel vor und wir durften abschreiben.
Mein eigentliches Problem ist nun, dass ich zuhause weiter arbeiten soll und mein Vista 64 Bit das TP nicht mag.
Zur nächsten Woche sollen wir die ausgegebenen Zahlen sortieren lassen.
Hierzu habe ich auch schon diverse Verfahren gefunden. Unser Lehrer riet uns zum "Bubble Sort".
Hierzu fand ich hier in der Code-Library diesen Link: http://www.delphipraxis.net/internal...ect.php?t=6237
Nun weiß ich jedoch nicht, wie ich das 1. in Turbo Pascal übersetzen kann und 2. testen kann ich es leider auch nicht, da es bei mir nicht funktioniert.
Hier mal den Source aus der Schule:
Code:
program lottozahlen;
uses crt;
var lotto:array [1..6] of integer;
    i:integer;

procedure ziehung;
Begin

  for i:=1 to 6 do
  Begin
  lotto[i]:=1+random(49); {1+0-48}
  End;
End;

Begin
Textbackground(Black);Textcolor(white);
  clrscr;
  randomize;
  ziehung;
  if (lotto[1]=lotto[2]) or (lotto[1]=lotto[3]) or (lotto[1]=lotto[4])
  or (lotto[1]=lotto[5]) or (lotto[1]=lotto[6]) or (lotto[2]=lotto[3])
  or (lotto[2]=lotto[4]) or (lotto[1]=lotto[5]) or (lotto[2]=lotto[6])
  or (lotto[3]=lotto[4]) or (lotto[3]=lotto[5]) or (lotto[3]=lotto[6])
  or (lotto[4]=lotto[5]) or (lotto[4]=lotto[6]) or (lotto[5]=lotto[6])
  then ziehung
  else         {Vor else nie ein Simikolon :-)}
Begin
  gotoxy(28,25);

  for i:=1 to 6 do
  Begin
  write(lotto[i],' ');
  End;
End;
  readkey;
End.
Ich hoffe, dass jemand von euch mir weiterhelfen kann. In 1-2 Wochen werden wir dann hoffentlich mit Delphi anfangen, denn das läuft Flüssig auf meinem Pc .

MfG,
Christian
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 18:49
Guten Abend,

schau mal hier

und die vielen or willst Du doch sicherlich nicht so lassen.
Wäre es nicht einfacher das Array nach der gezogenen Zahl zu durchsuchen?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Der.Kaktus
Der.Kaktus

Registriert seit: 22. Jan 2008
Ort: Erfurt
958 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 18:50
Hi,

also
erstens :solltest nicht nur "eine" Zahl ziehen sondern 6
zweitens:schau dir mal die Befehle Repeat Until an..die helfen dir da
drittens: nen Zaehler..der bei "doppelt auftretenden Zahlen evtl. "nicht" erhoeht wird in der Schleife.

P.S.: Turbopascal geht doch "Flott" auf sonem "neuen" rechner..kannste flink kompilieren *ggg*
Gruss Kaki

Repeat Until true=false;
  Mit Zitat antworten Zitat
crisbinfranke

Registriert seit: 27. Okt 2009
11 Beiträge
 
#4

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:09
Zitat von Klaus01:
die vielen or willst Du doch sicherlich nicht so lassen.
Hauptsache es funktioniert.

Zitat von Der.Kaktus:
solltest nicht nur "eine" Zahl ziehen sondern 6
zweitens:schau dir mal die Befehle Repeat Until an..die helfen dir da
drittens: nen Zaehler..der bei "doppelt auftretenden Zahlen evtl. "nicht" erhoeht wird in der Schleife.

P.S.: Turbopascal geht doch "Flott" auf sonem "neuen" rechner..kannste flink kompilieren *ggg*
Er zieht auch 6 Zahlen und nicht nur eine . Wurde von mir in der Schule getestet.
Bei doppel Zahlen macht er auch einen neuen Wurf, also alle Zahlen nochmal neu und zeigt die vorherigen nicht an.
Das einzigste was fehlt ist ebend die Sortierung von klein nach groß.
Ich hab einen "neueren" Rechner. Habe auch schon versucht eine VM in gang zu bringen, aber irgendwie wollte das nicht so wie ich.

MfG,
Christian
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:16
Zitat von crisbinfranke:
Bei doppel Zahlen macht er auch einen neuen Wurf, also alle Zahlen nochmal neu und zeigt die vorherigen nicht an.
Damit ist aber nicht sichergestellt, dass bei der zweiten Ziehung alle Zahlen unterschiedlich sind.
Wäre es da nicht sinnvoller schon bei der Ziehung zu schauen ob eine Zahl schon gezogen wurde
und dann nur für diese Zahl einen weitere ziehen.
Das dann solange wiederholen bis alle 6 Zahlen unterschiedlich sind.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Der.Kaktus
Der.Kaktus

Registriert seit: 22. Jan 2008
Ort: Erfurt
958 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:18
Zitat von Klaus01:
Zitat von crisbinfranke:
Bei doppel Zahlen macht er auch einen neuen Wurf, also alle Zahlen nochmal neu und zeigt die vorherigen nicht an.
Damit ist aber nicht sichergestellt, dass bei der zweiten Ziehung alle Zahlen unterschiedlich sind.
Wäre es da nicht sinnvoller schon bei der Ziehung zu schauen ob eine Zahl schon gezogen wurde
und dann nur für diese Zahl einen weitere ziehen.
Das dann solange wiederholen bis alle 6 Zahlen unterschiedlich sind.

Grüße
Klaus
genau..er zieht 6 Zahlen..aber!!! wenn doppelte sind..wird nur!!! die erste behandelt und somit neu gezogen.
Gruss Kaki

Repeat Until true=false;
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#7

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:19
Zitat von crisbinfranke:
Mein eigentliches Problem ist nun, dass ich zuhause weiter arbeiten soll und mein Vista 64 Bit das TP nicht mag.
Hast du mal versucht, TurboPascal in Dosbox zu installieren?
  Mit Zitat antworten Zitat
crisbinfranke

Registriert seit: 27. Okt 2009
11 Beiträge
 
#8

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:22
Zitat von Klaus01:
Zitat von crisbinfranke:
Bei doppel Zahlen macht er auch einen neuen Wurf, also alle Zahlen nochmal neu und zeigt die vorherigen nicht an.
Damit ist aber nicht sichergestellt, dass bei der zweiten Ziehung alle Zahlen unterschiedlich sind.
Wäre es da nicht sinnvoller schon bei der Ziehung zu schauen ob eine Zahl schon gezogen wurde
und dann nur für diese Zahl einen weitere ziehen.
Das dann solange wiederholen bis alle 6 Zahlen unterschiedlich sind.

Grüße
Klaus
Das wäre natürlich einfacher, aber ich hab keine Ahnung.
Wie gesagt, er hat uns "vorgeschrieben" und ein bisschen erklärt und wir haben "abgeschrieben" und Hasuaufgabe ist ebend die Sortierung einzubauen und weil das Programm ja nicht bei mir läuft ist das irgendwie nicht das gelbe vom Ei.

Zitat von NamenLozer:
Zitat von crisbinfranke:
Mein eigentliches Problem ist nun, dass ich zuhause weiter arbeiten soll und mein Vista 64 Bit das TP nicht mag.
Hast du mal versucht, TurboPascal in Dosbox zu installieren?
Nein noch nicht probiert. Werde ich mal testen.

MfG,
Peter
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 19:26
Zitat von crisbinfranke:
Habe auch schon versucht eine VM in gang zu bringen, aber irgendwie wollte das nicht so wie ich.
Sollte doch funktionieren:
1. vmplayer laden und installieren
2. unter www.easyvmx.com Startdateien erstellen lassen
3. dos installieren
4. Turbo Pascal installieren

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
pluto47

Registriert seit: 15. Jun 2008
1 Beiträge
 
#10

Re: [Suche]Hilfe bei Turbo Pascal Lottozahl Generator

  Alt 9. Feb 2010, 22:18
Hallo Christian,

für Lottozahlen bietet sich der Datentyp Menge also "set of" an.
Durch das Auslesen mit der Abfrage "IN" erübrigt sich das Sortieren.

Delphi-Quellcode:
program lottozahlen;
uses crt;

type
  TLottozahl = 1..49;
  TLottotipp = set of TLottozahl;

var Lottozahl: TLottozahl;
    Lottotipp: TLottotipp;
    i:integer;

begin
  Lottotipp := []; { Der Lottotipp ist zunächst die Leere Menge }                  

  Randomize;
  for i:=1 to 6 do { Es werden 6 Lottozahlen gezogen }
    begin
      Repeat
        Lottozahl := Random(49)+1; { Wird so lange wiederholt bis eine neue Zahl gefunden wird }
      Until not(Lottozahl in Lottotipp);
      Lottotipp := Lottotipp + [Lottozahl]; { Vereinigungsmenge aus Lottotipp und der neuen Lottozahl }
    end;

  for Lottozahl:=1 to 49 do
    begin
      if Lottozahl in Lottotipp then { Sucht die gezogenen Zahlen der Größe nach heraus }
         write( Lottozahl , ' ' );
    end;
end.
Kann sein, dass noch einige Syntaxfehler enthalten sind, da ich den Code nicht mit Turbo-Pascal erstellt habe.
  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 17:22 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