Animal.bas, Jeu en PC-Basic
Jeux en GW-Basic (PC-Basic)
Contrairement à d'autres jeux informatiques dans lesquels l'ordinateur choisit un chiffre ou une lettre et vous devez deviner ce que c'est, dans ce jeu vous pensez à un animal et l'ordinateur vous pose des questions et essaie de deviner le nom de votre animal.
Si l'ordinateur devine mal, il vous posera une question qui différencie l'animal qu'il a deviné de celui auquel vous pensiez. De cette manière, l'ordinateur "apprend" de nouveaux animaux. Les questions visant à différencier les nouveaux animaux doivent être saisies sans point d'interrogation.
Cette version du jeu n'a pas de fonction SAVE. Si votre système le permet, vous pouvez modifier le programme pour enregistrer le tableau A$, puis recharger le tableau lorsque vous souhaitez rejouer au jeu. De cette façon, vous pouvez enregistrer ce que l'ordinateur apprend au cours d'une série de jeux.
À tout moment, si vous répondez "LISTE" à la question "PENSEZ-VOUS À UN ANIMAL", l'ordinateur vous indiquera tous les animaux qu'il connaît jusqu'à présent.
Le programme commence à l'origine en ne connaissant que FISH et BIRD. Au fur et à mesure que vous constituez un fichier d'animaux, vous devez d'abord utiliser des questions larges et générales, puis vous limiter à des questions plus spécifiques avec des animaux ultérieurs.
Par exemple, si un éléphant devait être votre premier animal, l'ordinateur poserait une question pour distinguer un éléphant d'un oiseau.
Naturellement, il existe des centaines de possibilités, cependant, si vous envisagez de créer un grand fichier d'animaux, une bonne question serait "EST-CE UN MAMMIFÈRE".
Ce programme peut être facilement modifié pour traiter des catégories de choses autres que les animaux en modifiant simplement les données initiales de la ligne 530 et les références de dialogue à l'animal dans les lignes 10, 40, 50, 130, 230, 240 et 600.
Ce serait un programme précieux pour enseigner les caractéristiques distinctives de nombreuses classes d'objets:
formations rocheuses, géographie, vie marine, structures cellulaires, etc.
Développé à l'origine par Arthur Luehrmann au Dartmouth College, Animal a ensuite été raccourci et modifié par Nathan Teichholtz au DEC et Steve North à Creative Computing.
Exemple
AN I HAL CREATIVE COMPUTING HORRISTOWN, NEW JERSEY
PLAY 'GUESS THE ANIHAL'
THINK OF AN ANIHAL AND THE COHPUTER MILL TRY TO GUESS IT.
ARE YOU THINKING OF AN ANIHAL? Y
DOES IT SWIH? N
IS IT A BIRD? N
THE ANIHAL YOU WERE THINKING OF WAS A ? ELEPHANT
PLEASE TYPE IN A QUESTION THAT UQULD DISTINGUISH A
ELEPHANT FROM A BIRD
? DOES IT LIKE PEANUTS
FOR A ELEPHANT THE ANSWER WOULD BE ? Y
ARE YOU THINKING OF AN ANIMAL? Y
DOES IT SWIH? Y
IS IT A FISH? N
THE ANIHAL YOU WERE THINKING OF WAS A ? SEAL
PLEASE TYPE IN A QUESTION THAT UOULD DISTINGUISH A
SEAL FROM A FISH
? DOES IT HAVE SCALES
FOR A SEAL THE ANSUER UOULD BE ? N
ARE YOU THINKING OF AN ANIMAL? Y
DDES IT SWIM? N
DOES IT LIKE PEANUTS? N
IS IT A BIRD? N
THE ANIHAL YOU UERE THINKING OF WAS A ? LION
PLEASE TYPE IN A QUESTION THAT WOULD DISTINGUISH A
LION FROM A BIRD ? DOES
IT ROAR
FOR A LION THE ANSUER WOULD BE ? Y
ARE YOU THINKING OF AN ANIHAL? Y
DOES IT SWIM? Y
DOES IT HAVE SCALES? N
IS IT A SEAL? N
THE ANIHAL YOU WERE THINKING OF WAS A ? OCTOPUS
PLEASE TYPE IN A QUESTION THAT WOULD DISTINGUISH A
OCTOPUS FROH A SEAL ?
DOES IT HAVE EIGHT TENTACLES
FOR A OCTOPUS THE ANSUER UOULD BE ? Y
ARE YOU THINKING OF AN ANIHAL? Y
DOES IT SWIM? N
DOES IT LIKE PEANUTS? Y
IS IT A ELEPHANT? Y
WHY NOT TRY ANOTHER ANIHAL?
ARE YOU THINKING OF AN ANIMAL? Y
DOES IT SWIM? N
DOES IT LIKE PEANUTS? N
DOES IT ROAR? N
IS IT A BIRD? N
THE ANIHAL YOU WERE THINKING OF WAS A ? WUMPUS
PLEASE TYPE IN A QUESTION THAT WOULD DISTINGUISH A
WUMPUS FROH A BIRD ? IS
ITS LAST NAME YOB
FOR A WUMPUS THE ANSWER WOULD BE ? Y
ARE YOU THINKING OF AN ANIHAL? LIST
ANIMALS I ALREADY KNOU ARE:
ELEPHANT FISH LION SEAL OCTOPUS BIRD WUMPUS
ARE YOU THINKING OF AN ANIMAL? NO ARE YOU THINKING OF AN ANIMAL?
BREAK IN 130 OK
5 CLS
10 PRINT TAB(32);"ANIMAL"
20 PRINT TAB(15);"CREATIME C0KPUTING
H0RRIST0WN, NEW JERSEY"
30 PRINT: PRINT: PRINT
40 PRINT "PLAY 'BUESS THE
ANIMAL.'"
50 PRINT "THINK OF AN ANIMAL AND THE COMPUTER WILL TRY TO GUESS
IT."
60 PRINT
70 DIM A$(200)
80 FOR I=0 TO 3
90 READ A$(I)
100
NEXT I
110 N=VAL(A$(0))
120 REM MAIN CONTROL SECTION
130 INPUT "ARE YOU
THINKING OF AN ANINAL";A$
140 IF A$="LIST" THEN 600
150 IF LEFT$(A$,1)<>"Y"
THEN 120
160 K=1
170 GOSUB 390
180 IF LEN(A$(K))=0 THEN 999
190 IF
LEFT$(A$(K),2)="\Q" THEN 170
200 PRINT "IS IT A ";RIGHT$(A$(K),LEN(A$(K))-2);
210 INPUT A$
220 A$=LEFT$(A$,1)
230 IF A$="Y" THEN PRINT "WHY NOT TRY
ANOTHER ANIMAL?": GOTO 120
240 INPUT "THE ANIHAL YOU WERE THINKING OF WAS A
";V$
250 PRINT "PLEASE TYPE IN A QUESTION THAT WOULD DISTINGUISH A"
260
PRINT V$;" FROM A ";RIGHT$(A$(K),LEN(A$(K))-2)
270 INPUT X$
280 PRINT "FOR
A ";V$;" THE ANSWER WOULD BE ";
290 INPUT A$
300 A$=LEFT$(A$,1): IF
A$<>"Y" AND A$<>"N" THEN 280
310 IF A$="Y" THEN B$="N"
320 IF A$="N" THEN
B$="Y"
330 Z1=VAL(A$(O))
340 A$(0)=STR$(Z1+2)
350 A$(ZI)=A$(K)
360
A$(Z1+l)="A"+V$
370 A$(K)="\Q"+X$+"\"+A$+STR$(Z1+1)+"\"+B$+STR$(Z1)+"\"
380 GOTO 120
390 REM SUBROUTINE TO PRINT QUESTIONS
400 Q$=A$(K)
410 FOR
Z= 3 TO LEN(Q$)
415 IF MID$(Q$,Z,1)<>"\" THEN PRINT MID$(Q$,Z,1);: NEXT Z
420 INPUT C$
430 C$=LEFT$(C$,1)
440 IF C$<>"Y" AND C$<>"N" THEN 410
450
T$="\"+C$
455 FOR X=3 TO LEN(Q$)-1
460 IF MID$(Q$,X,2)=T$ THEN 480
470
NEXT X
475 STOP
480 FOR Y=X+1 TO LEN(Q$)
490 IF MID$(Q$,Y,1)="\" THEN
510
500 NEXT Y
505 STOP
510 K=VAL(MID$(Q$,X+2,Y-X-2))
520 RETURN
530 DATA "4","\QD0ES IT SWIM\Y2\N3\","\AFISH","\ABIRD"
600 PRINT: PRINT "ANIMALS
I ALREADY KNOW ARE:"
605 X=0
610 FOR I=l TO 200
620 IF LEFT$(A$(I),2)<>"\A"
THEN 650
624 PRINT TAB(12*X);
630 FOR Z=3 TO LEN(A$(I))
640 IF MID$(A$(I),Z,1)<>"\"
THEN PRINT MID$(A$(I),Z,1);: NEXT Z
645 X=X+1: IF X>5 THEN X=0: PRINT
650
NEXT I
660 PRINT
670 PRINT
680 GOTO 120
999 END