Fischerzeit bei ungültigen Zug korrigieren?

Antworten
Alexander
Beiträge: 173
Registriert: 29.03.2011, 14:03
Was ist die Summe aus 10 und 4?: 0
Wohnort: MET

Fischerzeit bei ungültigen Zug korrigieren?

Beitrag von Alexander » 28.06.2014, 23:58

Hallo Schiedsrichterkollegen,
beim Regionalen Schiedsrichterlehrgang damals im Jahr 2010 wurde auch das Thema mit der Korrektur der Schachuhr bei Fischerzeit angesprochen.

Dazu gab es auch eine Formel für alle!

Diese:
[einzustellende Zeit] = [Anfangszeit] - ([Anzahl der regelgemäßen Züge] / [Anzahl der gespielten Züge]) x ([Anfangszeit] - [angezeigte Zeit])

Aber ich habe das Gefühl, dass die irgendwie nicht richtig funktioniert?

Beispiele:

1.
(Fischer Kurz)
falscher Zug: im 1.
gespielte Zügezahl: 3
angezeigte Bedenkzeit bei Weiß: 1h 31min 57sek
einzustellende Zeit?

2.
(Fischer Kurz)
falscher Zug: im 3.
gespielte Zügezahl: 7
angezeigte Bedenkzeit bei Weiß: 1h 30min 0sek
einzustellende Zeit?

3.
(Fischer Kurz)
falscher Zug: im 38.
gespielte Zügezahl: 42
angezeigte Bedenkzeit bei Weiß: 0h 32min 0sek
einzustellende Zeit?

Ich möchte mir ein Computerprogramm schreiben, dass die einzustellende Bedenkzeit anzeigt!
Ein ungültiger Zug kommt zwar selten vor, aber wenn es doch mal passiert, dann will ich die Bedenkzeit auch korrigieren können!
Ich brauche eine zuverlässige Formel! Es gab doch irgendwo schon mal einen Link zur Fischerzeitkorrektur? Weiß aber nicht mehr wo.

Gruß
Alexander

fritz103
Beiträge: 12
Registriert: 21.11.2009, 14:43

Re: Fischerzeit bei ungültigen Zug korrigieren?

Beitrag von fritz103 » 29.06.2014, 11:18

Hallo Alexander,

die Formel funktioniert meines Erachtens wunderbar. Zu Deinen Beispielen:

1. [einzustellende Zeit] = 1h30' - 0/3 * (1h30' - 1h31'57'') = 1h30' (Ist auch logisch, dass hier die Anfangszeit herauskommen muss, schließlich gab es keinen einzigen regelgemäßen Zug in der Partie.)

2. [einzustellende Zeit] = 1h30' - 2/7 * (1h30' - 1h30'') = 1h30' (Passt auch, hier hat Weiß bis jetzt genau vom Bonus gelebt.)

3. [einzustellende Zeit] = 1h30' - 37/42 * (1h30' - 2'0'') = 12'29'' (Ich gehe hierbei davon aus, dass in den angezeigten 32' schon die addierte halbe Stunde für den Rest der Partie enthalten ist, deshalb angezeigte Zeit = 2'.)

Ein letzter Tip: Es kommt nicht darauf an, ob Du jetzt alles wirklich sekundengenau machst. Als SR kannst Du es in solchen Fällen auch nicht bringen, Dich erst einmal stundenlang an Deinen Computer zu verkrümeln. Das kann Deine Autorität als SR erheblich beschädigen. Aus diesem Grund stelle ich den Sinn eines solchen Programms an sich infrage.

Viele Grüße
Jens

dfuchs
Beiträge: 404
Registriert: 09.11.2007, 18:27

Re: Fischerzeit bei ungültigen Zug korrigieren?

Beitrag von dfuchs » 29.06.2014, 12:00

Das ganze Problem bekommt man mit einem Spielprotokoll ( http://www.schachschiri.de/protokoll.pdf ) erstmal besser in den Griff. Anschließend muss man nur noch die maximale Stunde verteilen. Und hier errechnet man pro gespielten vollen Zug (also zwei Halbzüge) eine Minute auf die Zeit die die Uhren anzeigen dazu. Der Rest ist dann einfacher Dreisatz.

Grüße Daniel

Alexander
Beiträge: 173
Registriert: 29.03.2011, 14:03
Was ist die Summe aus 10 und 4?: 0
Wohnort: MET

Re: Fischerzeit bei ungültigen Zug korrigieren?

Beitrag von Alexander » 29.06.2014, 15:59

Ein letzter Tip: Es kommt nicht darauf an, ob Du jetzt alles wirklich sekundengenau machst. Als SR kannst Du es in solchen Fällen auch nicht bringen, Dich erst einmal stundenlang an Deinen Computer zu verkrümeln. Das kann Deine Autorität als SR erheblich beschädigen. Aus diesem Grund stelle ich den Sinn eines solchen Programms an sich infrage.
Ich möchte einfach nur so ein Programm schreiben, ganz egal ob das irgendeinen nutzen hat! Es geht mir dabei nur um den Lerneffekt beim programmieren!

Ich habe auch nicht vor, mich stundenlang an meinem Computer zu verkrümeln! Der ist beim Schiedsrichtereinsatz gar nicht dabei! Wozu auch?

Wenn die Formel funktioniert, wieso zeigt mir mein Testprogramm eine andere Zeit an? :?:
Vielleicht habe ich einen Fehler im Programm drin?

Mein Programm errechnet nämlich bei Beispiel 1: 1h 31min 21sek aus?
bei Beispiel 2 sind es: 0h 2min 0sek???

Edit:
Jetzt könnte ich den Fehler in meinem Programm gefunden haben! Ich gebe zum Beispiel eine falsche Zügezahl an!
Liegt offentsichtlich an meinem Programm. Die Formel wurde in meinem Testprogramm richtig geschrieben! An der liegt es nicht. Es macht einen Unterschied, ob ich die Variablen in meinem Programm als Integer oder als Double definiert habe!

Danke für die Hilfe! Jetzt weiß ich, dass ich in meinem Programm einen Fehler drin habe!

Gruß
Alexander

Antworten