Ik hou niet van spelletjesIk hou niet van spelletjes

Spelletjes zijn immers voor de dommen...
Maar voor één keer heb ik een uitzondering gemaakt.
Jeugdsentiment: zie mijn afscheidsboekje Laat nooit over je lopen, pagina 22.
Boter, kaas, melk, yoghurt en eieren

Downloaden:
Voor 2 personen de simpele versie: V5RIJ2.83P
Voor één persoon tegen de TI83 een meer geavanceerde versie: V5RIJ1.83P
Voor één persoon met een TI83 Silver Editie en een grote strijdlust
de super geavanceerde, haast onverslaanbare versie V6RIJ1.83P:
Boter-kaas-eieren-yoghurt-vla-melk-karnemelk

Ik adviseer om de spelletjes te spelen in een zo groot mogelijke RAM.
Archiveer dus eerst alle niet te gebruiken programma's en pictures.
Anders kun je de boodschap "out of memory" krijgen ...

Op school, tijdens de makkelijke lessen, verveelde het kamertje verhuren en het drie-op-een-rij al snel. Wij ontdekten dat uitbreiding tot een even aantal vakjes (4 bij 4, 6 bij 6) niet in aanmerking kwam omdat degene met de nazet (het nulletje) altijd remise kon bereiken via gespiegelde antwoorden. Ook een oneven aantal vakjes (5 bij 5) gaf problemen omdat het kruisje altijd een extra zet had. We bedachten de volgende regels voor een spel met gelijke kansen:
(1) Laat één hoekveld weg en geef n-2 punten voor n-op-een-rij (n ³3)
(2) Kruisje mag niet in het centrum (3,3) openen
(3) Nulletje mag niet spiegelen in de symmetrie-as (linksboven-rechtsonder)

Het programmeren van de uitgebreide versie VIJFRIJ was nog een hele klus: verreweg mijn grootste programma (3.5K voor het programma en 3K voor de pictures)! Een veldsterkte berekening moest ingevoerd worden (een veld naast een 3-rij bijvoorbeeld, is meer waard dan een veld naast een 2-rij), dat ging nog wel. Grappig genoeg was de score-berekening nog het lastigst, met name door de tijd die het kost om 20 rijen (kolommen, ook diagonaal) te controleren. In een eerste opzet liet ik die berekening via strings uitvoeren (InString "XXX" of "OOO") maar dan moest je langer dan een minuut op het antwoord wachten. Tenslotte heb ik gekozen voor een puntentelling alleen aan het eind van de partij, met behulp van vele if-then-else statements. Er is een random instructie ingebouwd om te voorkomen dat de TI altijd dezelfde tegenzet geeft.
De bedenktijd met een gewone TI83(plus) is ongeveer 15 seconden per zet. Met de Silver Editie gaat het ruim twee keer zo snel.
Het programma
V5RIJ1.83Pis tamelijk sterk, bedenk daarbij dat de mensspeler het voordeel van de "voorzet" heeft, waardoor remise eigenlijk verlies betekent. Kruisje mag eigenlijk niet in het centrum openen, als je de TI83 gelijke kansen wil geven. De lijst van gespeelde zetten is op te vragen in STAT: L1 en L2. Hierbij betekent het getal 32 in L1(1) bijvoorbeeld: kruisje begint te zetten in rij 3, kolom 2. Je kunt de gespeelde partij ook zet-voor-zet naspelen.

Het programma
Boter-kaas-eieren-yoghurt-vla-melk-karnemelk
schreef ik speciaal voor één persoon tegen de TI83 Silver Editie.
De TI83 SE denkt ongeveer 10 seconden na over een zet en 30 seconden over de eindstand.
Op de gewone TI gaat dat twee keer zo langzaam:
gemiddeld 20 seconden per zet, 1 minuut voor de berekening van de eindscore.
Het speelveld is 6 bij 7, de puntentelling is hetzelfde (zeven-op-een-rij bijvoorbeeld is 5 punten).
Dit programma is tamelijk moeilijk te verslaan! Download
V6RIJ1.83P.
Hierbij zijn geen plaatjes nodig.

Weer naar huis

Site Meter