PiF 2 | <terug> |
Op de eerste PiF-bijeenkomst kwam als eerste deze versie van KEUS op het bord te staan:
: KEUS1 ( n ch -- nr )
BEGIN KEY
DUP 2OVER
TUCK + ( ch ch+n )
WITHIN
UNTIL
- NEGATE
NIP ;
Deze definitie klopt niet, want als je een ongeldig commando intypt, gaat er iets mis met de stack.
Dat is toen opgelost door
UNTILte vervangen door
0=
WHILE DROP
REPEAT
Verder hebben we
TUCK +uit de lus gehaald. Die berekening kun je beter van te voren doen in plaats van bij iedere lusdoorgang opnieuw.
: KEUS1 ( n ch -- nr )
TUCK + \ ch ch+n
BEGIN KEY
DUP 2OVER WITHIN
UNTIL
NIP
- NEGATE ;
AND DROP DUP ?DUP OR OVER XORergens in deze definitie van KEUS1 te plakken?
Als je uiterlijk zaterdag 12 mei 2007 een oplossing instuurt, stuur ik je mijn oplossingen. Voor de eerste goede oplossing een weekend Madrid op kosten van de Forth-gg, tja... aan mij ligt het niet, maar dat viel niet goed bij de penningmeester. Misschien is zoiets ook niet nodig?
Groeten,
| <terug> |