Bei diesem Denkspiel geht es darum einen Geheimcode, den der Computer erzeugt, zu erraten. Jeder Versuch wird dabei bewertet, das heiĂt, daĂ angegeben wird wieviel Zahlen mit denen des Geheimcodes in Wert und Stelle ĂŒbereinstimmen. Das Programm malt dann die entsprechende Anzahl von KĂ€stchen âSCHWARZâ aus. Wenn die Stelle der Zahl mit der des Geheimcodes nicht ĂŒbereinstimmt, die Zahl aber an einer anderen Stelle vorhanden ist, so wird dies mit âWEISSENâ KĂ€stchen angezeigt. Wenn Sie Ihren Code eingegeben haben, fragt das Programm, ob Sie diesen Code nehmen wollen. Sollten Sie diese Frage mit N bzw. n beantworten, dann bleibt zwar der âalteâ Code auf dem Bildschirm stehen, doch sie können bzw. mĂŒssen nun erneut einen Code eintippen. FĂŒr das Erraten des Geheimcodes haben Sie zehn Versuche zur VerfĂŒgung, wenn Sie den Code bis dahin erraten haben, bekommen Sie dafĂŒr einen Tusch gespielt. Sollten Sie den Code mit dem zehnten Versuch nicht erraten haben hört das Programm auf und gibt einen Text und den Code aus. AuĂerdem können Sie die Runde jederzeit abbrechen wenn Sie keine Lust mehr haben. DrĂŒcken Sie dafĂŒr einfach die Taste âEâ. Die Anzahl der Versuche mag zwar gering erscheinen, doch bei genauer Analyse der âSchwarzenâ und der âWeiĂenâ erhĂ€lt man genug Zusatzinformationen, um den Code schnell zu bestimmen.
Beim Starten des Programms (wobei man immer im âEDITâ-Modus sein sollte!), wird zuerst nach der Anzahl der Zahlen des Geheimcodes gefragt. Man kann hier bis zu sechs Zahlen wĂ€hlen. Damit lĂ€Ăt sich bei einem entsprechenden Zahlenbereich ein hoher Schwierigkeitsbereich erreichen (ĂŒber 300000 Möglichkeiten). Als nĂ€chstes erwartet das Programm die Eingabe des Bereichs, der von 1 bis 9 gewĂ€hlt werden kann. Bei beiden Eingaben kann man durch DrĂŒcken der < Return > -Taste die Standardwerte einstellen. Nachdem die -Anzahl der Möglichkeiten angezeigt wurde, können Sie Ihren Zahlencode eingeben. Die einzelnen Ziffern werden, um sie besser hervorzuheben, als âSegmentziffernâ ausgegeben, wie sie auch bei Taschenrechnern und Digitaluhren verwendet werden.
Zum Einschalten der verschiedenen, im Normalbasic nicht ansprechbaren Schriftarten, werden die GEM-VDI Routinen aufgerufen. NÀhere ErklÀrungen dazu finden Sie im GEM-Artikel in diesem Heft.
Beim Eintippen des Programms muĂ auf die Zeilennummern keine RĂŒcksicht genommen werden, da das Programm nur SprĂŒnge zu âLabelsâ enthĂ€lt.
CODES Code
Z() Code (indizierte Variable)
Zl() Code fĂŒr Vergleich
V() Versuch
N Anzahl der Zahlen
Z Bereich der Ziffern
E$ allgemeine Eingabevariable
A,B allgemeine Schleifenvariablen
VN Anzahl der Versuche ,
S Anzahl der âSchwarzenâ
W Anzahl der âWeiĂenâ-
X,Y Variablen fĂŒr LINE und FILL
HAUPTROUTINEN
150 Zufallsgenerator setzen
160 Dimensionierung der Felder
170 Fenster vorbereiten
180 GroĂe Fettschrift setzen
182- 188 Zeichnen von zwei Köpfen
190 GroĂe, kursive und fette Schrift setzen
194 Kleinschrift setzen
195 Variablen fĂŒr Standardspiel setzen
200- 270 Eingabe und Kontrolle von Anzahl und Bereich
280 Anzahl der Möglichkeiten ausgeben
290- 330 Zufallscode generieren
340 Aufruf der Zeichenroutine
360- 720 Hauptprogramm
370- 380 Anzahl der Versuche erhöhen und kontrollieren
410- 570 Eingabe des Codes und Kontrolle
460 LINE-Befehl fĂŒr Markierung der Eingabe
500 Zahlencodes umwandeln in Code fĂŒr Segmentziffern ,
530â 570 Abfrage ob Eingabe in Ordnung
590- 710 Auswertung des eingegebenen Codes
600 Anzahl der âSchwarzenâ und âWeiĂenâ zurĂŒcksetzen
620 Geheimcode in das Feld Zl() ĂŒbertragen
630 Anzahl der âSchwarzenâ ĂŒberprĂŒfen
650 ĂberprĂŒfen ob gewonnen
690 Anzahl der âWeiĂenâ ĂŒberprĂŒfen
740- 770 Programmteil fĂŒr âGEWONNENâ
790- 820 Programmteil fĂŒr âGENUGâ
800 Lösungscode ausgeben
840- 870 Programmteil fĂŒr âAUFGEGEBENâ
880 Programmende
900-1040 Unterprogramm zum Zeichnen der Vierecke
905 Standardschrift setzen
930 y-Koordinate berechnen
950 LĂŒcke zwischen âSchwarzenâ und âWeiĂenâ
960 y-Koordinate berechnen
970-1000 LINE-Befehl fĂŒr Viereck
1060-1110 Unterprogramm zum AusfĂŒllen der âSchwarzenâ
1070 â 1080 x- und y-Koordinaten berechnen
1090-1100 Farbe setzen und ausfĂŒllen
1130-1180 Unterprogramm zum AusfĂŒllen der âWeiĂenâ
1140-1150 x- und y-Koordinaten berechnen
1160-1180 COLOR setzen und ausfĂŒllen
1200-1310 Unterprogramm âTuschâ fĂŒr âGewonnenâ
1210 Ausschalten der drei TonkanÀle
1220-1240 Akkord mit drei TonkanÀlen setzen
1250 TonkanÀle einschalten und Ton halten
1260-1290 Zweiten Akkord setzen und spielen
1400-1500 Unterprogramm zum Setzen von SchriftgröĂe und Schriftart
GEM-Routinen 107,106
1510-1630 Unterprogramm zur maĂstabsgerechten Textausgabe GEM-Routine 8
Listing Code99.bas