SVM n°18 juin 1985
SVM n°18 juin 1985
  • Prix facial : 16 F

  • Parution : n°18 de juin 1985

  • Périodicité : mensuel

  • Editeur : Excelsior Publications

  • Format : (203 x 280) mm

  • Nombre de pages : 188

  • Taille du fichier PDF : 195 Mo

  • Dans ce numéro : l'amour par Minitel / l'Amstrad CPC 664 enfin un ordinateur à prix réaliste.

  • Prix de vente (PDF) : gratuit

Dans ce numéro...
< Pages précédentes
Pages : 94 - 95  |  Aller à la page   OK
Pages suivantes >
94 95
Seedelapage50 11170 NEXT K : IF F2 = 1 THEN CA(XI,Y) = JN:F1 = 1 11180 GOTO 11300 11200 IF YI - Y < > 1 THEN 11000 11210 IF X = N THEN 11250 11215 IF AR(X + 1,Y1,1) = 1 THEN 11000 11220 AR(X + 1,Y1,1) = 1:F2 = 1 : FOR k : = 1 TO 4:IF AR(X+1,Y1,K) = 0 THEN F2 = 0 11230 NEXT K:IF F2 = 1 THEN CA(X + I,Y1) = JN:F1 = 1 11250 IF X = 0 THEN 11300 11255 IF AR(X,YI,3) = 1 THEN 11000 11260 AR(X,Y1,3) = 1:F2 = 1 : FOR K = 1 TO 4 : IF AR(X,YI,K) = 0 THEN F2 = 0 11270 NEXT K : IF F2 = 1 THEN CA(X,Y1) = JN:F1 = 1 11300 RETURN fin de partie, évaluation du score 12000 GOSUB 10000 : FOR I = 1 TO N : FOR J = 1 TO N : TT(CA(I,J)) = TT(CA(I,J)) + I : NEXT J : NEXT 12010 IF TT(1) = TT(2) THEN PRINT : PRINT "MATCH NUL" : END 12020 R = 1 : IF TT(2) > TT(1) THEN R = 2 12030 PRINT "LE JOUEUR " ; R ; " GAGNE PAR " ; TT(R) ; " A " ; N t N - TT(R) : END sous-programme de décison du coup : évaluation du nombre d'arètes libres par case. Y-a-t'il une case à prendre ? 20000 F4 = 0 : FOR I = 1 TO N : FOR J = 1 TO N : EV(I,J) = 0 : FOR el = 1 TO 4:EV(I,J) = EV(I,J) + AR(I,J,K) : NEXT K : IF EV(I,J) = 3 THEN F4 = F4 + 1:II I:J1 = J 20010 NEXT J : NEXT I 20020 IF F4 = 0 THEN 20100 oui il y en a une 20030 GOSUB 21000 20040 IF PC = 0 THEN GOTO 22000 20050 KI = 0 : FOR K= 1 TO 4 : IF AR(I1,JI,K) = 0 THEN K1 = K:K = 4 20060 NEXT K 20070 GOTO 30000 non il n'y en a pas 20100 II = 0:31 = 0 : GOSUB 21000 20110 IF PC = 0 THEN GOTO 25000 20120 PC = 1 + PC t RND (1) : Il = PG(PC,1):J1 = PG(PC,2):K1 = PG(PC,3) : GOTO 30000 sous-programme d'évaluation du nombre de coups jouablessans perte de case. 21000 PC = 0 : FOR 12 = 1 TO N : FOR J2 = 1 TO N : IF 12 = Il AND J2 = JI THEN 21100 21005 IF EV(1242) > I THEN 21100 21010 FOR K2 = 1 TO 4 : IF AR(I2,J2,K2) = 1 TIEN 21090 21020 IF K2 = 1 AND 12 > 1 THEN IF EV(I2 - 1,J2) > 1 THEN 21090 21030 IF K2 = 2 AND J2 < N THEN IF EV(I2,J2 + 1) > 1 THEN 21090 21040 IF K2 = 3 AND 12 < N THEN IF EV(I2 + 1,J2) > 1 THEN 21090 21050 IF K2 = 4 AND J2 > 1 THEN IF EV(I2,J2 - 1) > 1 THEN 21090 21060 PC = PC + 1:PG(PC,1) = I2:PG(PC,2) = J2 : PG(PC,3) = K2 21090 NEXT K2 21100 NEXT J2 : NEXT 12 : RETURN sous-programme de calcul du meilleur coup à jouer en cas de gain de case en fin de partie. 22000 FOR 12 = 1 TO N : FOR J2 = 1 TO N : EX(I2,J2) = 0 : NEXT : NEXT 22010 EX(I1,J1) = 1:CL = 0:CC = 0:LC = I:HH = 0 22020 FOR K = 1 TO 4 : IF AR(I1,JI,K) = 0 THEN KI = K:K2 = K:K = 4 22030 NEXT K:12 = 11:J2 = JI : GOSUB 24000 22040 IF 13 = 0 THEN 22200 22050 IF EV(I3,J3) < 2 THEN 22200 22060 EX(I343) = 1:LC = LC + I : IF LC = 2 AND EV(I3,J3) = 3 THEN HH = 1 22070 IF EV(I3,J3) = 3 THEN 22200 22080 12 = I3:J2 = J3 : GOSUB 23000 : GOTO 22040 22200 IF LC < > 2 THEN 30000 22201 IF HH = 1 THEN 30000 22202 FOR I = 1 IU N : FUK J = 1 TO N : IF EX(I,J) = I OR EV(I,J) < > 2 THEN 22500 22205 P = 0:L = 1:F5 = u 22210 FOR K = 1 TO 4 : IF AR(I,J,K) = 0 THEN P = P + 1:PE(P,1) = I:PE(P,2) = J:PE(P,3) = K 22220 NEXT K 22222 12 = PE(P.I):J2 = PE(P,2):K2 = PE(P,3) : GOSUB 24000 22225 EX(I,J) = 1 22230 IF 13 = 0 THEN 22400 22240 IF EV(I3,J3) < 2 THEN 22400 22250 EX(I3,J3) = 1:L = L + 1 : IF EV(I3,J3) > 3 THEN 22260 22255 IF L > 1 THEN F5 = 1 22256 GOTO 22400 22260 12 = 13:32 = J3 : GOSUB 23000 : GOTO 22230 22400 P = P - 1 : IF P > 0 THEN- 22222 22410 IF L < 3 THEN CC = CC + 1 22420 IF L > 2 THEN CL = CL + 1 22430 L = 0 22500 NEXT J : NEXT I 22510 IF CC > 0 THEN GOTO 30000 22515 IF CL = 0 THEN 30000 22517 IF F5 = 1 THEN 30000 22520 12 = II:J2 = JI:K2 = KI : GOSUB 24000 22530 K = K2 + 2 : IF K > 4 THEN K = K - 1 22540 FOR K3 = 1 TO 4 : IF K3 = K THEN 22600 22550 IF AR(13,J3,K3) = 0 THEN KI = K3:K3 = 22600 NEXT K3:11 = 13:J1 = J3 : GOTO 30000 sous-programme de détermination de la suivante dans une chaine de cases 23000 K = 0 : FOR K2 = 1 TO 4 : IF AR(12,J2,K2) = 1 THEN 23100 23010 IF K2 = 1 AND 12 > 1 THEN IF EX(I2 - 1,32) = 0 THEN K = K2:K2 = 4 : GOTO 23100 23020 IF K2 = 2 AND J2 < N THEN IF EX(I2,J2 + I) = 0 THEN K = K2:K2 = 4 : GOTO 23100 23030 IF K2 = 3 AND 12 < N THEN IF EX(I2 + 1,J2) = 0 THEN K = K2:K2 = 4 : GOTO 23100 23040 IF K2 = 4 AND J2 > 1 THEN IF EX(I2,J2 - 1) = 0 THEN K = K2:K2 = 4 : GOTO 23100 23100 NEXT K2:K2 = K 24000 13 = 0:33 = 0 : IF K2 = 0 THEN RETURN 24010 IF K2 = 1 AND 12 > 1 THEN 13 = 12 - I:J3 = J2 24020 IF K2 = 2 AND J2 < N THEN 13 = I2:J3 = J2 + 1 24030 IF K2 = 3 AND 12 < N THEN 13 = 12 + 1:J3 = J2 24040 IF K2 = 4 AND J2 > 1 THEN 13 = I2:J3 = J2 - 1 24050 RETURN sous-programme de choix du coup laissant la moins longue chaine de cases à l'adversaire lorsqu'il n'y a plus d'autres coups jouables 25000 FOR 12 = 1 TO N : FOR J2 = I TO N : EX(I2,J2) = 0 : NEXT J2 : NEXT 12 25010 ML =N1IN 25020 FOR I = 1 TO N : FOR J = I TO N 25030 IF EX(I,J) = 1 OR EV(I,J) < > 2 THEN 25900 25040 L = I:EX(I,J) = 1:P = 0 25050 FOR K = 1 TO 4 : IF AR(I,J,K) = 0 THEN P = P + 1:PE(P,1) = I:PE(P,2) = J:PE(P,3) = K 25060 NEXT K 25070 12 = PE(P,I):J2 = PE(P,2):K2 = PE(P,3) : GOSUB 24000 25080 IF 13 = 0 THEN 25110 25090 IF EV(I3,J3) < 2 THEN 25110 25100 EX(I3,J3) = 1:L = L + 1:12 = I3:J2 = J3 : GOSUB 23000 : GOTO 25080 25110 P = P - I : IF P > 0 THEN 25070 25120 IF L > ML THEN 25900 25130 ML = L:11 = I:J1 = J : FOR K = 1 TO 4 : IF AR(I,J,K) = 0 THEN KI = K 25140 NEXT K 25900 NEXT J : NEXT I : GOTO 30000 modifification du tableau de jeu après le coup du programme 30000 FI = 0:AR(I1,J1,K1) = 1 : IF EV(II,J1) = 3 THEN CA(1141) = JN:F1 = 1 30010 IF KI = 1 AND I1 > 1 THEN AR(I1 - 1,J1,3) = 1 : IF EV(I1 - 1,J1) = 3 THEN CA(II - 1,31) = JN:Fl = 1 30020 IF KI = 2 AND JI < N THEN AR(I1,JI + 1,4) = 1 : IF EV(II,J1 + 1) = 3 THEN CA(II,JI + 1) = JN:F1 = 1 30030 IF KI = 3 AND II < N THEN AR(I1 + 1,31,1) = 1 : IF EV(II + 1,J1) = 3 THEN CA(I1 + 1,31) = JN:F1 = 1 30040 IF KI = 4 AND JI > I THEN AR(II,J1 1,2) = 1 : IF EV(I1,J1 - 1) = 3 THEN CA(II,J1 - I) = JN:FI = 1 30050 RETURN 94 SCIENCE & VIE MICRO N°18 - JUIN 1985 4 case
LES MOTS DE L'ESPRIT Vous vous croyez imbattable au Mastermind ? Essayez donc le Chasselettres, ce jeu de logique bien plus complexe. Si vous craquez, refilez le bébé à votre Commodore 64 : il s'en délectera grâce au logiciel conçu par notre gagnant du mois, Christian Arnaud. LE PRINCIPE DU CHASSE-LETTRES est simple. Il s'agit tout bètement de découvrir un nouveau mot, à partir de ceux contenus dans un tableau. Pour vous y aider, le chiffre qui accompagne chacun de ces termes indique le nombre de lettres qui conserveront leur place dans le mot cherché. Par exemple : NAGEUR 2 PERSAN 1 METTRE 1 VERSET 1 BERNER 1 MIREUR 1 PASSER 1 BATTRE 1 MINEES 1 Malgré ces indices, tenter de résoudre ce problème risque de vous mener aux confins de la démence. Pour éviter cette issue tragique, adoptez notre programme. Après lui avoir donné le nombre de mots contenus dans l'énoncé, ainsi que leur longueur, vous n'avez qu'à introduire chacun d'eux, avec le chiffre qui l'accompagne. Et ça roule. Votre ordinateur va se mettre en quatre pour vous trouver toutes les solutions possibles. En ce qui concerne l'exemple présenté, il mettra moins de trente secondes pour donner le premier résultat (essayez d'en faire autant I). Puis, il continuera la recherche, explorant toutes les possibilités. S'il existe une deuxième, voire une troisième solution, il vous les révélera. Ceci permettra donc aux créateurs de ce genre de problèmes de vérifier qu'une seule solution est possible. Ainsi, que vous soyez joueur ou génial inventeur de jeux, ce logiciel vous servira aussi utilement. Le Basic employé pour l'écriture de ce programme est à peu près standard, les seules particularités concernent en particulier la gestion du curseur (voir les REM qui indiquent ceux-ci) ; il conviendra de remplacer les divers PRINT " ; par les instructions spécifiques à votre machine. Par ailleurs, attention à l'adressage des tableaux, qui commencent au numéro 0 sur Commodore alors que la plu- 100 V=1:F=0 120 GOSUB 1000 : 130 GOSUB 1500 145 l'JOSLIB 2000 : 150 GOSUB 1800 : 160 GOSUB 2500 170 GOSUB 3000 : 200 PRINT"NOMBRE 210 END CHASSE-LETTRES REM ENTREE DONNEE REM AFFICHE DEBUT REM ELIMINE 43 REM CALCUL POSS. REM CREATION POSS. REM RESOLUTION DE MOTS POSSIBLES ="NM 1000 REM * ENTREE DES DONNEES * 1005 REM * ET INITIALISATION * 1010 PRINT"3", REM EFFACE ECRRN 1020 PRINT"NOMBRE DE MOTS ET" 1025 PRINT"LONGUEUR DES MOTS" 1030 INPUTN,L 1040 DIMMS(N,L),RS(L),X(N),K(N),R1S(N,L) 1045 PRINT"ENTREZ LES MOTS ET LE NOMBRE DE LETTRES A LA BONNE POSITION" 1050 FORI=VTON 1060 PRINT"MOT"I,:INPUT101$,W 1065 IFLEN(W$)<1LORWATHEN1060 1070 FORJ=FTDL-V 1080 M$(I-'v,J)=MIDS(W$,J+V,V):X(I-V)=W:IFX



Autres parutions de ce magazine  voir tous les numéros


Liens vers cette page
Couverture seule :


Couverture avec texte parution au-dessus :


Couverture avec texte parution en dessous :


SVM numéro 18 juin 1985 Page 1SVM numéro 18 juin 1985 Page 2-3SVM numéro 18 juin 1985 Page 4-5SVM numéro 18 juin 1985 Page 6-7SVM numéro 18 juin 1985 Page 8-9SVM numéro 18 juin 1985 Page 10-11SVM numéro 18 juin 1985 Page 12-13SVM numéro 18 juin 1985 Page 14-15SVM numéro 18 juin 1985 Page 16-17SVM numéro 18 juin 1985 Page 18-19SVM numéro 18 juin 1985 Page 20-21SVM numéro 18 juin 1985 Page 22-23SVM numéro 18 juin 1985 Page 24-25SVM numéro 18 juin 1985 Page 26-27SVM numéro 18 juin 1985 Page 28-29SVM numéro 18 juin 1985 Page 30-31SVM numéro 18 juin 1985 Page 32-33SVM numéro 18 juin 1985 Page 34-35SVM numéro 18 juin 1985 Page 36-37SVM numéro 18 juin 1985 Page 38-39SVM numéro 18 juin 1985 Page 40-41SVM numéro 18 juin 1985 Page 42-43SVM numéro 18 juin 1985 Page 44-45SVM numéro 18 juin 1985 Page 46-47SVM numéro 18 juin 1985 Page 48-49SVM numéro 18 juin 1985 Page 50-51SVM numéro 18 juin 1985 Page 52-53SVM numéro 18 juin 1985 Page 54-55SVM numéro 18 juin 1985 Page 56-57SVM numéro 18 juin 1985 Page 58-59SVM numéro 18 juin 1985 Page 60-61SVM numéro 18 juin 1985 Page 62-63SVM numéro 18 juin 1985 Page 64-65SVM numéro 18 juin 1985 Page 66-67SVM numéro 18 juin 1985 Page 68-69SVM numéro 18 juin 1985 Page 70-71SVM numéro 18 juin 1985 Page 72-73SVM numéro 18 juin 1985 Page 74-75SVM numéro 18 juin 1985 Page 76-77SVM numéro 18 juin 1985 Page 78-79SVM numéro 18 juin 1985 Page 80-81SVM numéro 18 juin 1985 Page 82-83SVM numéro 18 juin 1985 Page 84-85SVM numéro 18 juin 1985 Page 86-87SVM numéro 18 juin 1985 Page 88-89SVM numéro 18 juin 1985 Page 90-91SVM numéro 18 juin 1985 Page 92-93SVM numéro 18 juin 1985 Page 94-95SVM numéro 18 juin 1985 Page 96-97SVM numéro 18 juin 1985 Page 98-99SVM numéro 18 juin 1985 Page 100-101SVM numéro 18 juin 1985 Page 102-103SVM numéro 18 juin 1985 Page 104-105SVM numéro 18 juin 1985 Page 106-107SVM numéro 18 juin 1985 Page 108-109SVM numéro 18 juin 1985 Page 110-111SVM numéro 18 juin 1985 Page 112-113SVM numéro 18 juin 1985 Page 114-115SVM numéro 18 juin 1985 Page 116-117SVM numéro 18 juin 1985 Page 118-119SVM numéro 18 juin 1985 Page 120-121SVM numéro 18 juin 1985 Page 122-123SVM numéro 18 juin 1985 Page 124-125SVM numéro 18 juin 1985 Page 126-127SVM numéro 18 juin 1985 Page 128-129SVM numéro 18 juin 1985 Page 130-131SVM numéro 18 juin 1985 Page 132-133SVM numéro 18 juin 1985 Page 134-135SVM numéro 18 juin 1985 Page 136-137SVM numéro 18 juin 1985 Page 138-139SVM numéro 18 juin 1985 Page 140-141SVM numéro 18 juin 1985 Page 142-143SVM numéro 18 juin 1985 Page 144-145SVM numéro 18 juin 1985 Page 146-147SVM numéro 18 juin 1985 Page 148-149SVM numéro 18 juin 1985 Page 150-151SVM numéro 18 juin 1985 Page 152-153SVM numéro 18 juin 1985 Page 154-155SVM numéro 18 juin 1985 Page 156-157SVM numéro 18 juin 1985 Page 158-159SVM numéro 18 juin 1985 Page 160-161SVM numéro 18 juin 1985 Page 162-163SVM numéro 18 juin 1985 Page 164-165SVM numéro 18 juin 1985 Page 166-167SVM numéro 18 juin 1985 Page 168-169SVM numéro 18 juin 1985 Page 170-171SVM numéro 18 juin 1985 Page 172-173SVM numéro 18 juin 1985 Page 174-175SVM numéro 18 juin 1985 Page 176-177SVM numéro 18 juin 1985 Page 178-179SVM numéro 18 juin 1985 Page 180-181SVM numéro 18 juin 1985 Page 182-183SVM numéro 18 juin 1985 Page 184-185SVM numéro 18 juin 1985 Page 186-187SVM numéro 18 juin 1985 Page 188