Micros ID n°2 janvier 1987
Micros ID n°2 janvier 1987
  • Prix facial : 22 F

  • Parution : n°2 de janvier 1987

  • Périodicité : trimestriel

  • Editeur : Mieva Presse

  • Format : (206 x 291) mm

  • Nombre de pages : 84

  • Taille du fichier PDF : 123 Mo

  • Dans ce numéro : PC compatible, comment le choisir ?

  • Prix de vente (PDF) : gratuit

Dans ce numéro...
< Pages précédentes
Pages : 40 - 41  |  Aller à la page   OK
Pages suivantes >
40 41
ate% PSEUDO-LISP Nicolas CHOUKROUN a 20 ans. Il est étudiant en AES (Analyse économique et sociale). PSEUDO-LISP est une simulation vulgarisée du langage LISP, abréviation de LIST-PROCESSING. Son but est de gérer intelligemment les chaînes de caractères. Il permet de memoriser 200 noms contenant chacun jusqu'à 18 compléments, puis d'effectuer des opérations de traitement tels que comparaison, tests divers, recherche, suppression, ajout... Il peut être utilisé comme dictionnaire, support d'un jeu d'aventure ou de toute autre application nécessitant de « jongler » avec des listes de noms. Pour créer un mot, vous devez poser l'affirmation suivante : NOM(complémentl.complément2....) Les compléments, entre 1 et 18, doivent être séparés par des points. Exemple : CHAT(POIL.MOUSTACHE.QUEUE) Après avoir introduit une liste de noms dans l'ordinateur, vous pourrez lui demander de les restituer à l'aide de l'instruction LIST : LIST(C) liste les compléments. LIST(N) liste les noms. AAA.LIST. liste les compléments du nom AAA jusqu'à un niveau de profondeur de 10, c'est-à-dire qu'un complément peut, à son tour, être défini comme nom incluant pour compléments d'autres noms, etc... LIST.BBB. liste les noms qui ont au moins un complément ayant pour nom BBB La commande « ! » sert à supprimer des noms ou des compléments : AAA( !) supprime du dictionnaire le nom AAA et tous ses compléments. AAA.BBB( !) supprime BBB parmi les compléments de AAA. La commande « ? » interroge l'ordinateur pour savoir si un nom ou le complément d'un nom existe : AAA( ?) demande si le nom AAA existe. AAA.BBB( ?) demande si le complément BBB du nom AAA existe. Exemple : CHAT.MOUSTACHE( ?) [La réponse apparaît sous la forme VRAI ou FAUX.] Les comparaisons s'effectuent grâce à la fonction COMP : COMP(AAA.XXX) compare les compléments du nom AAA avec ceux de XXX, et affiche les compléments en commun. Remarque : cette fonction est d'autant plus lente que les compléments sont nombreux. BUFF. affiche le nombre de mot(s) que contient le dictionnaire. La sauvegarde du fichier de noms peut être réalisée par la commande SAVE. La syntaxe est la suivante : de Nicolas CHOUKROUN felte „ „, › Leel fa LANGAGE : BASIC MSX TAILLE MEMOIRE : 3,8K SAVE. « périphérique ». « nom de fichier » Exemple : SAVE.CAS:.Fichel. L'ordinateur vous demandera à partir de quelle fiche vous voulez sauvegarder (répondre 0 pour tout le fichier). Le chargement s'opère avec LOAD (même syntaxe que SAVE). Enfin, l'instruction END. permet le retour au BASIC. En effet, la commande « CTRL » + « STOP » a volontairement été désactivée par mesure de protection des données introduites dans le fichier, car tout retour sous BASIC les détruit instantanément. Messages d'erreur : Au nombre de trois, ils se comprennent tout seul : « Erreur de syntaxe », « Nom inexistant », « Complément inexistant ». Pour terminer ce long préambule, deux variablès initialisées en ligne 10 pourront vous être utiles : N2=nombre maximum de compléments, 18 à l'origine. N3=nombre maximum de noms, 100 à l'origine. Ces valeurs peuvent être redéfinies dans la mesure où elles n'entraînent pas un dépassement de la capacité mémoire. Une valeur de &hE000 doit être affectée au CLEAR en remplacement du &hF380 si vous utilisez un lecteur de disquette. 0 POKE&HFFB1.255 10 A=FRE(0):CLEAR13000.&HF380:N3=200 : N2=10:DIMX$(N3,N2),A$(30):N1=N3-1:N5= 0 20 GOSUB6000:COLOR15:SCREENO:KEYOFF:W IDTH4@:LOCATE10,0:PRINT"MICRO MSX PRE SENTE ":LOCATE15.10:PRINT"PSEUDO C":F 0RI=1701000:NEXT:GOSUB5000 30 CLOSEW=-1:POKE&HFBB1,255 32 PRINT:PRINT"Ok.":FORI=OT010:A$(I)= "":NEXTI:K=-1:PRINT:PRINT":"GOSUB10 0:A$="":JJ=0:0=0 34 FORV=1TOLEN(R$):K=K+1:B$=MID$(R$,V, 1):IFB$="."ORB$="("ORB$=")"THENA$(JJ) =MIDS(R$J1+1,K):V=V+4:JJ=JJ+1:K=0ffl= V-1 44 NEXTV:Bir-RIGHT$(R$,1):IFB$0"."AND B$<>")"THENPRINT"Erreur de syntaxe." : BEEP:60T030 45 IFA$(0)="END"THENPOKE&HFBB1,0:END 50 IFA$(0)="SAVE"THEN10000 52 IFA$(0)="COMP"THEN110 60 IFA$(0)="LOAD"THEN10100
PSEUDO-LISP 70 IFA$(0)="BUFF"THEN6200 72 IFA$(0)="LIST"ANDA$(1)="N"THEN400 74 IFA$(0)="LIST"ANDA$(1)="C"THEN500 76 IFA$(0)="LIST"THEN300 78 IFA$(1)="LIST"THENGOT0200 79 FORT=01.030:IFAS(T)="'"THEN800 80 IFA$(7)=" 1 "ANDT=1THEN600 81 IFAS(T)=" 1 "THEN700 90 NEXTT:GOSUB900:60T030 100 R$="":POKE&HFBB1,255:INPUT"":R$:R ETURN 110 AA$=A$(1):GOSUB1000:T1=I:IFZ=OTHE NGOSUB3000:60T030 114 AA$=A$(2):GOSUB1000:72=I:IFZ=OTHE NG0SUB3000:GOT030 116 FORT=1TON2:FORTT=1TON2:41$=X$(1.1. T):42$=X$(T2,TT):IFA1$=A2iANDA1$ s""T HENPRINTA1$ ; " " ; 118 NEXTTT,T 120 GOT030 200 AA$=A$(0):GOSU81000:Z1=I:IFZ=OTHE NGOSUB3000:GOT030 204 FORT=1TON2:AA$=X$(Z1,T):1FAA$'. "" THENGOSUB1000:VPOKE39,48:Z1(0)=I 206 IFZ=OANDAAS ""THENPRINTAA$ ; " " ; ELSEIFZ=1THENGOSUB210 208 NEXTT:VP0KE39,32:GOT030 210 FORT0=1TON2:AA$=XS(Z1(0),T0):IFAA < ; ""THENGOSUB1000:VPOKE39,49:Z1(1)=I 212 IFZ=OANDAA$ ""THENPRINTAA$ ; " " ; ELSEIFZ=1THENGOSUB220 214 NEXTTO:RETURN 220 FORT1=1TON2:AAi=Xi(Z1(1),T1):IFAA de Nicolas CHOUKROUN is.lerudo LISP. 1111erre eue : Choukroun Nicolas. - - OK. > ? CHATMIENT/I,DOUX. > ? CHIEWegé *MOCHE. lev > ? ANIMAL OK. M ANIMAL.LIST. jECHANT MOCHE SALE X PROPRE OK. Liktingrs LANGAGE : BASIC MSX TAILLE MEMOIRE : 3,8K $<>""THENGOSUB1000:VPOl'E39,50:Z1(2)=I 222 IFZ=OANDAA$‹, ""THENPRINTAA$ ; " " ; ELSEIFZ=1THENGOSUB230 224 NEXTT1:RETURN 230 FORT2=1TON2:AA$=X$(Z1(2),T2):IFAA « ,""THENGOSUB1000:VPOKE39,51:Z1(3)=I 232 IFZ=OANDAA$""THENPRINTAA$:" GENTIL " ; ELSEIFZ=1THENGOSUB240 234 NEXTT2:RETURN 240 FORT3=1TON2:AA$=X$(11(3),T3):IFAA $'"THENGOSUB1000:VPOKE39,52:Z1(4)=I 242 IFZ=OANDAA « : ""THENPRINTAA$ ; " " ; ELSEIFZ=1THENGOSUB250 244 NEXTT3:RETURN 250 FORT4=1TON2:AA$=X$(Z1(4),T4):IFAA $<>""THENGOSUB1000:VPOKE39,53:Z1(5)=I 252 IFZ=OANDAA$', ""THENPRINTAAi ; " " ; ELSEIFZ=1THENGOSUB260 254 NEXTT4:RETURN 260 FORT5=1TON2:AAi=X$(Z1(5),T5):IFAA $<>""THENGOSUB1000:VPOKE39,54:Z1(6)=I 262 IFZ=OANDAA$ ""THENPR1NTAA$ ; " " ; ELSEIFZ=1THENGOSUB265 264 NEXTT5:RETURN 265 FORT6=1TON2:AA$=X$(Z1(6),T6):IFAA <, ""THENGOSUB1000:VPOKE39,55:Z1(7)=I 266 IFZ=OANDAA$,,""THENPRINTAA$:" " ; ELSEIFZ=1THENGOSUB270 268 NEXTT6:RETURN 270 FORT7=1TON2:AA$=X$(Z1(7),T7):IFAA $:,""THENGOSUB1000:VPOKE39,56:Z1(8)=I 272 IFZ=OANDAAiTHENPRINTAA$ ; " " ; ELSEIFZ=1THENGOSUB275 274 NEXTT7:RETURN



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 :


Micros ID numéro 2 janvier 1987 Page 1Micros ID numéro 2 janvier 1987 Page 2-3Micros ID numéro 2 janvier 1987 Page 4-5Micros ID numéro 2 janvier 1987 Page 6-7Micros ID numéro 2 janvier 1987 Page 8-9Micros ID numéro 2 janvier 1987 Page 10-11Micros ID numéro 2 janvier 1987 Page 12-13Micros ID numéro 2 janvier 1987 Page 14-15Micros ID numéro 2 janvier 1987 Page 16-17Micros ID numéro 2 janvier 1987 Page 18-19Micros ID numéro 2 janvier 1987 Page 20-21Micros ID numéro 2 janvier 1987 Page 22-23Micros ID numéro 2 janvier 1987 Page 24-25Micros ID numéro 2 janvier 1987 Page 26-27Micros ID numéro 2 janvier 1987 Page 28-29Micros ID numéro 2 janvier 1987 Page 30-31Micros ID numéro 2 janvier 1987 Page 32-33Micros ID numéro 2 janvier 1987 Page 34-35Micros ID numéro 2 janvier 1987 Page 36-37Micros ID numéro 2 janvier 1987 Page 38-39Micros ID numéro 2 janvier 1987 Page 40-41Micros ID numéro 2 janvier 1987 Page 42-43Micros ID numéro 2 janvier 1987 Page 44-45Micros ID numéro 2 janvier 1987 Page 46-47Micros ID numéro 2 janvier 1987 Page 48-49Micros ID numéro 2 janvier 1987 Page 50-51Micros ID numéro 2 janvier 1987 Page 52-53Micros ID numéro 2 janvier 1987 Page 54-55Micros ID numéro 2 janvier 1987 Page 56-57Micros ID numéro 2 janvier 1987 Page 58-59Micros ID numéro 2 janvier 1987 Page 60-61Micros ID numéro 2 janvier 1987 Page 62-63Micros ID numéro 2 janvier 1987 Page 64-65Micros ID numéro 2 janvier 1987 Page 66-67Micros ID numéro 2 janvier 1987 Page 68-69Micros ID numéro 2 janvier 1987 Page 70-71Micros ID numéro 2 janvier 1987 Page 72-73Micros ID numéro 2 janvier 1987 Page 74-75Micros ID numéro 2 janvier 1987 Page 76-77Micros ID numéro 2 janvier 1987 Page 78-79Micros ID numéro 2 janvier 1987 Page 80-81Micros ID numéro 2 janvier 1987 Page 82-83Micros ID numéro 2 janvier 1987 Page 84