SVM n°19 jui/aoû 1985
SVM n°19 jui/aoû 1985
  • Prix facial : 16 F

  • Parution : n°19 de jui/aoû 1985

  • Périodicité : mensuel

  • Editeur : Excelsior Publications

  • Format : (203 x 280) mm

  • Nombre de pages : 132

  • Taille du fichier PDF : 200 Mo

  • Dans ce numéro : la micro-informatique expliquée par Bill Gates, le pape du logiciel.

  • Prix de vente (PDF) : gratuit

Dans ce numéro...
< Pages précédentes
Pages : 66 - 67  |  Aller à la page   OK
Pages suivantes >
66 67
1000 X = RND (1) : RETURN Le carré a une surface de 1. Le quart de cercle a une surface de 41-1 1 0 10 20 + TEST DE REPARTITION BIDIMENSIONNELLE + 1 INPUT "NOMBRE DE SOUS-INTERVALLES : " ; M On découpe le carré 0,1 x 0,1 en MxM cases à l'intérieur desquelles on comptabilise le nombre de points obtenus (dans le tableau T%()). M=30 est une bonne valeur. 10 DIM TX(M * M) tirage aléatoire des coordonnées X et Y du point. 20 LOSUB 1000:Y = X : GOSUB 1000 30 N = N + 2 Calcul de la case dans laquelle il se trouve et incrémentation du pointeur correspondant. 40 K = 1 + INT (X * M) + M * INT (Y * M) : TX(K) = 17.(K) + 1 Afficher le nombre de tirages effectués. Continuer jusqu'a ce qu'il y aie en moyenne 5 points par case. 50 PRINT N : IF N < M t M * 10 THEN 20 Calcul du CHI carré. 100 FOR I = 1 TO M * M : Y = Y + (MI) - 5) * (TY.(I) - 5) : NEXT 110 Y = Y/5 : PRINT "VALEUR DU CHI 2 = " ; Y 120 END Générateur aléatoire, ce sous programme peut etre remplacé par la formule de votre choix. CALCUL DE PI PAR LA MÉTHODE DE MONTE-CARLO 1 PROGRAMME X = RND (1):Y = RND (1):N = N + 1 : PRINT 4 * P/N : IFX*X+Y*Y<1THENP=P+ 1 GOTO 10rd Principe : si on trace un grand nombre de points au hasard dans le carré, le rapport de ceux qui sont dans le quart de cercle sur le nombre total est égal au rapport des surfaces c'est-à-dire : 4 Méthode : on tire un grand nombre N de points (X,Y) au hasard. Si X2 + Y2 < 1, le point est dans le cercle ; alors on augmente P de 1 (P = nombre de points dans le cercle). Lorsque N est très grand, - N tend vers 4 13a sic Cette méthode n'est pas très efficace, mais c'est probablement la plus simple. trop nombreux, il y a alors une réaction en chaîne qui peut provoquer une explosion nucléaire, si elle n'est pas maîtrisée. Or, il est pratiquement impossible de déterminer par le calcul où se situe le point critique tant le problème est complexe. La solution consiste donc à simuler le trajet de quelques milliers de neutrons en utilisant les probabilités déterminées par la physique et un bon générateur aléatoire. La statistique obtenue sur un échantillon suffisamment grand permet d'extrapoler les lois de fonctionnement de l'ensemble du système. On comprend que pour une telle application, il soit nécessaire de s'assurer de la qualité des nombres aléatoires utilisés. Frédéric NEUVILLE QUELQUES MÉTHODES POUR FAIRE DES NOMBRES PSEUDO-ALÉATOIRES LA METHODE DU CARRÉ L'une des plus anciennes, mais aussi des moins efficaces. A partir d'un nombre entier de 4 chiffres, on fait une élévation au carré et on prend les 4 chiffres du milieu du résultat. Exemple : à partir de 1 234 : 1234x1234=1522 756. Les 4 chiffres du milieu donnent 2 275, nouveau nombre aléatoire. Inconvénient : si vous tombez sur zéro, toutes les valeurs suivantes sont nulles, le générateur ne fonctionne plus. LES GÉNÉRATEURS À CONGRUENCE Les plus simples et les plus efficaces, à condition de bien choisir les paramètres. On détermine le nombre suivantX,,.1 à partir du précédentX, par une des deux formules suivantes : Xi+1= aX, (modulo c) -› congruence simple aX, +b (modulo c) congruence étendue où a, b etc sont donnés. Exemple : X,,1= 29xX, (modulo 1) X-(Xx29)-INT(Xx29) soit avec X de départ = 0.12345679. Les valeurs des paramètres a, b et c sont critiques pour obtenir un bon comportement statistique. Les générateurs à congruence simple ont plus de corrélation bidimensionnelle. Il est préférable de choisir a et b premiers avecc, sinon vous courez le risque de voir votre générateur boucler sur un tout petit nombre de valeurs. D'AUTRES RECETTES Rien n'empêche d'imaginer des formules plus compliquées pour rendre le générateur plus imprévisible. Méfiez-vous cependant que votre générateur ne converge pas vers une valeur fixe ou n'entre pas dans un cycle périodique. Ainsi le générateur engendré par la formule : (rc +X,)5 (modulo 1) finit par entrer dans une boucle de période 125 sur IBM PC (en simple précision) et de période légèrement inférieure à 800 sur Apple II. Cette différence de période est due aux différences d'arrondis entre les deux machines. 66 SCIENCE et VIE MICRO N°19 - JUILLET•AOÛT 1985
MINI-LOGO A l'instar du serbo-croate ou du Kamasoutra, tout le monde connaît le Logo... de nom. Mais bien peu savent le pratiquer. Ce langage de programmation, axé en partie sur la création graphique est pourtant fort utile. C'est pourquoi un lecteur pédagogue, Thierry Rochebois, vous met, vous ou vos enfants, à l'école du Logo. Vous constaterez qu'avec ce programme mené bon train (pour Sinclair ZX Spectrum), le Logo motive. ATTENTION : IL EST ICI QUESTION d'une version édulcorée ne comportant que des instructions de dessin. Impossible, donc, d'afficher du texte ou de créer des procédures récursives (des procédures s'appelant elles-mémes et s'imbriquant). Mais ce mini-éditeur permet malgré tout, par la création de petits programmes graphiques, de vous initier à Logo et partant à la programmation. Au lancement du programme, l'éditeur affiche une page comportant un cadre qui occupe la presque totalité de l'écran, destinée à l'affichage des graphiques. Sur la gauche s'affichent le menu et les instructions du programme. Le menu de Mini-Logo comporte 9 options. Le curseur, symbolisé par le signe » supérieur à. (>) se déplace au moyen des touches 6 (vers le bas) et 7 (vers le haut). On valide l'option choisie en frappant ENTER. Pour la programmation, on dispose de deux options, une en mode direct, l'autre permettant l'écriture de procédures utilisables en mode direct Voici la syntaxe des ordres du Mini-Logo. Notez d'abord que les ordres de programmation du Mini-Logo se présentent en deux parties, d'un côté l'instruction, et de l'autre la partie numérique, et qu'une instruction dans son ensemble ne peut dépasser 5 caractères de long. Ainsi les instructions de déplacement se présentent sous la forme : td angle : fait tourner le curseur de » angle degrés sur la droite. tg angle : pareil sur la gauche. di angle : pointe le curseur dans la direction. angle » indiquée. av pas : avance le curseur de » pas » pas. Le dessin (en haut à droite) indique l'orientation des angles. Ces instructions, comme celles qui suivent, doivent toutes être frappées en minuscules. Les instructions simples sont : ef : efface l'écran ce : ramène le curseur au centre de l'écran le : lève le crayon, ce qui veut dire qu'un déplacement du curseur se fera sans laisser de trace sur l'écran. po : pose le crayon. Ces instructions n'incluent pas de partie numérique. Pour l'exécution répétée d'un programme, on utilisera : rexxx : xxx indique le nombre de fois où le programme sera exécuté. Quand on voudra utiliser cette instruction, il faudra toujours veiller à la placer en première ligne du programme. 2>C ; S ¶'LET P$=CHR$ 25+"ND ef ce cl diler+CHR$ 20+"carrre4 tc90 "+CHR $ 21Imtriare3...al td120" 7 LET peee-CHR$ 20ehexee£ avvl tdée 10 DIM c$(5) 15 DIM 7.$(4) 2%) LET x=150 : LET..z=87 25 LET e=1 27 LET 1=0 2E 01M ":9) 30 PLOT 41,0 : Dft 0,175 : >eu 214,0 : IfS 0,-175 : CFN -214,0 35 LET d=180 40 LETie=" 5e GO 548ieee 6:3 PRINT 8T 0,0 ; INK 3 ; "Prog:" 70 FOR n=i TO 21 : INPUT "Instruction No " ; (n) ; " : " ; c$ 80 IFc.$="fin " THE} ; GO TO 100 85 PRINT 8Tn,0 ; INK 11I ; c$(1 TO 2) ; INK 1 ; c$(.3 TO 5) : LETieie-c$ NEXT n 180 LET re=1 : LET ff=1 110 IF 1E1 TO 2)="re" Dia LET reUAL i$(3 TO 5) : LET ff=6 120 FOR r=1 TO re 130 FCO'f=ff TO LEN i$-4 STEP 5 140 PRINT 8T f/5+1,0 ; PPPER 8 ; INK 8 ; INUERSE 1 ; ief TO f+4) lte LET leief TO f+4) 160 LET tele ! TO 2) : LET nele3 TO 5) 161 IF 1$(1)="le RMD pe>"" THEN GO TO 300 162 IF n$(1)=M THEN LET n$=STR$ ("v("+ne2 TO 3)+°)")1 163 IF te"en" THEN LET i=URL n$ 180° ic3Ur Z y, specie. "Position us" essZ 165 IF temef" THEN CL : PLOT 41,0 : DRN 0,175 : DFS 214,0 : DRN 0,-175 : DRIN -214,0 1710 IF t$="di" THEN LET d=t9L r$ 172 IF tem+v" THEN LET u(UAL n$(1))=v(Lfi ne1))+4,h9L ri-(2 TO 3) 174 IF t$="-v" TIEN LET v(URL re(1))=v(UAL n$(1))-UFL ne2 TO 3) 176 IF t$=",ev" TIEN LET v(URL n$(1))=v(U8L re(1))*UFL n$(2 TO 3) 178 IF t$="iv" TIEN LET v(UAL n$(1))=v(UAL n$(1))/URL reg TO 3) 179 IF t$(1)="0 THEN LET v(UFL t$(2))=JAL n$ 123 IF t$="ce" TIEN LET : c =15e LET n3=87 : GO TO 235 185 IF temcl" THEN DIM v(„9) : GO TO 235 190 IF tS="td" THEN LET cl=d+Iftl. n$ : GO TO 235 2:33 IF tlets" THEN LET d=d-OAL ne GO TO 235 210 IF tlele" TIEN LET e=8 : GO TO 235 220 IF t$="pc" TIEN LET e=1 : GO TO 235 27e IF 1$="am" TIEN LET a=SIN (d*(PI180)) : LET brOOS (d*(PI/180)) : PLOT INK i ; LET x=x+(a*UFL n$) : LET.rmm+(beAL n$) : IF x(255 8 : x)41 F410 9<175 AND m'A, TFel t)T) II0ERSE NOT e ; INK i ; eKIRL neteURL n$ 275 PRINT FIT fi5+1,@ ; PRPER 8 ; INK 8 ; 1eR6E 0 ; ief TO f+4) 240 NEXT f : NET r : FOR n=0 TO 21 : PRINT FITn,e ; " : NEXT n 250 f-1:. TO 40. 700 LET lect=1 7Ie PRINT FIT 00 ile 2 ; "Inetrm7Z0 IF <1e t+1 TO lect+4)<)1$(2 TO 5) THEN LET lect=lect+CODE (pelect)) 77e IF lect)LEN p$ THEN GO TO 710 740 IF FS. TC lect+4)<)1$(2 TO 5) THEN GO TO 320 353 MW" RT 0,e ; INK 6 ; PRPER 2 ; "4" ; • FLASH 1 ; p$(1ect+1 TO let.+4 : 353 LET e=p$(1ect+5 70 lect+CŒ (pelect))-1) 370 LET re2=1 : LET ff-2=1 SCIENCE & VIE MICRO N°19 - JUILLET-AOÛT 1985 67 9o°



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 19 jui/aoû 1985 Page 1SVM numéro 19 jui/aoû 1985 Page 2-3SVM numéro 19 jui/aoû 1985 Page 4-5SVM numéro 19 jui/aoû 1985 Page 6-7SVM numéro 19 jui/aoû 1985 Page 8-9SVM numéro 19 jui/aoû 1985 Page 10-11SVM numéro 19 jui/aoû 1985 Page 12-13SVM numéro 19 jui/aoû 1985 Page 14-15SVM numéro 19 jui/aoû 1985 Page 16-17SVM numéro 19 jui/aoû 1985 Page 18-19SVM numéro 19 jui/aoû 1985 Page 20-21SVM numéro 19 jui/aoû 1985 Page 22-23SVM numéro 19 jui/aoû 1985 Page 24-25SVM numéro 19 jui/aoû 1985 Page 26-27SVM numéro 19 jui/aoû 1985 Page 28-29SVM numéro 19 jui/aoû 1985 Page 30-31SVM numéro 19 jui/aoû 1985 Page 32-33SVM numéro 19 jui/aoû 1985 Page 34-35SVM numéro 19 jui/aoû 1985 Page 36-37SVM numéro 19 jui/aoû 1985 Page 38-39SVM numéro 19 jui/aoû 1985 Page 40-41SVM numéro 19 jui/aoû 1985 Page 42-43SVM numéro 19 jui/aoû 1985 Page 44-45SVM numéro 19 jui/aoû 1985 Page 46-47SVM numéro 19 jui/aoû 1985 Page 48-49SVM numéro 19 jui/aoû 1985 Page 50-51SVM numéro 19 jui/aoû 1985 Page 52-53SVM numéro 19 jui/aoû 1985 Page 54-55SVM numéro 19 jui/aoû 1985 Page 56-57SVM numéro 19 jui/aoû 1985 Page 58-59SVM numéro 19 jui/aoû 1985 Page 60-61SVM numéro 19 jui/aoû 1985 Page 62-63SVM numéro 19 jui/aoû 1985 Page 64-65SVM numéro 19 jui/aoû 1985 Page 66-67SVM numéro 19 jui/aoû 1985 Page 68-69SVM numéro 19 jui/aoû 1985 Page 70-71SVM numéro 19 jui/aoû 1985 Page 72-73SVM numéro 19 jui/aoû 1985 Page 74-75SVM numéro 19 jui/aoû 1985 Page 76-77SVM numéro 19 jui/aoû 1985 Page 78-79SVM numéro 19 jui/aoû 1985 Page 80-81SVM numéro 19 jui/aoû 1985 Page 82-83SVM numéro 19 jui/aoû 1985 Page 84-85SVM numéro 19 jui/aoû 1985 Page 86-87SVM numéro 19 jui/aoû 1985 Page 88-89SVM numéro 19 jui/aoû 1985 Page 90-91SVM numéro 19 jui/aoû 1985 Page 92-93SVM numéro 19 jui/aoû 1985 Page 94-95SVM numéro 19 jui/aoû 1985 Page 96-97SVM numéro 19 jui/aoû 1985 Page 98-99SVM numéro 19 jui/aoû 1985 Page 100-101SVM numéro 19 jui/aoû 1985 Page 102-103SVM numéro 19 jui/aoû 1985 Page 104-105SVM numéro 19 jui/aoû 1985 Page 106-107SVM numéro 19 jui/aoû 1985 Page 108-109SVM numéro 19 jui/aoû 1985 Page 110-111SVM numéro 19 jui/aoû 1985 Page 112-113SVM numéro 19 jui/aoû 1985 Page 114-115SVM numéro 19 jui/aoû 1985 Page 116-117SVM numéro 19 jui/aoû 1985 Page 118-119SVM numéro 19 jui/aoû 1985 Page 120-121SVM numéro 19 jui/aoû 1985 Page 122-123SVM numéro 19 jui/aoû 1985 Page 124-125SVM numéro 19 jui/aoû 1985 Page 126-127SVM numéro 19 jui/aoû 1985 Page 128-129SVM numéro 19 jui/aoû 1985 Page 130-131SVM numéro 19 jui/aoû 1985 Page 132