AGB  ·  Datenschutz  ·  Impressum  







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

Zählsystem für Tennis entwickeln

Ein Thema von torud · begonnen am 21. Sep 2007 · letzter Beitrag vom 27. Sep 2007
 
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#1

Zählsystem für Tennis entwickeln

  Alt 21. Sep 2007, 13:36
Hallo Wissende,

da ich derzeit ein manuelle Backup für einen Tennis-Counter erstelle, würde vorher gern wissen, wie Ihr an die Sache rangehen würdet. Also zum einen würde mich dabei dabei interessieren, wie man so eine Routine logisch aufbaut.

Für die jenigen unter Euch hier mal die Regeln:

Dabei wäre folgendes zu wissen. Beim Tennis gibt es Punkte, Spiele und Sätze.

Die Punkte gehen von:
0
15
30
40
und wenn es 40 beide steht, bekommt der nächste Punktgewinner einen sogenannten VOrteil = A

Macht er danach wieder einen Punkt hat er das Spiel gewonnen.

Spielpunkte gibt es, wenn ein Spieler in einem Spiel als erster einen Punkt nach dem Erreichen der 40 gemacht hat, wenn es keinen Einstand gab (40 40).

Wer als erster 6 Spiele gewonnen hat, hat den jeweiligen Satz gewonnen. Dies gilt aber auch nur dann, wenn es einen Mindestabstand von 2 Spielpunkten gibt. Also mit 6-5 gewinnt man keinen Satz. 6-1 bis 6-4 ist korrekt. steht es aber z.b. 5-5 und anschliessend 6-5, gehts weiter. Der Satz würde mit 7-5 enden. Steht es 6-6 ginge es in den sogenannten Tiebreak.

Dort fängt das Zählen dann bei 0-0 an und die Punkte gehen hier in Einerschritten voran, bis einer zuerst 7 Punkte hat. Er gewinnt aber den Tiebreak auch nur dann, wenn es wieder mind. 2 Punkte Abstand gibt. Also 7-6 würde nicht gehen. 8-6 wäre der Regel entsprechend. Für den gewonnenen Tiebrakt gibts dann einen Spielpunkt. Damit würde aus dem 6-6 ein 7-6 werden, wobei man sich auch merken muss, wie der Tiebreak ausgegangen ist, da dies in der Regel angezeigt wird.

Bei den Sätzen ist es so, dass es Best of 3 oder Best of 5 gibt. Wer also als erster 2 oder 3 Sätze gewonnen hat, hat das Match gewonnen.

Nun frage ich mich, wie ich dies elegant und übersichtlich programmieren kann, ohne dafür 1000 Zeilen Code schreiben zu müssen und alles mit if...then...else zu erledigen. ich würde mir also eine Klasse dafür schreiben, die das übernimmt. Wer hat eine Idee, wie ich das Zählen erledigen kann?

Ein weiteres Problem, welches sich mir stellt ist, dass ich auch nachträglich in das Zählen einsteigen können muss, da das manuelle Zählen nur ein Backup ist. Normalerweise kommen die Punkte über ein externes System per UDP. Fällt dies aus, müsste man manuell weiterzählen können. Wenn alles reinkommt, wir eigentlich immer alles sofort in die Controls übergeben. Vielleicht sollte man aber lieber alles in Variablen übergeben!?

Ich wäre für Anregungen und Ideen zur Umsetzung dankbar.
Danke
Tom
  Mit Zitat antworten Zitat
 


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 06:07 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