Le bon poids graphique ( 501 pas de programme ) tiré du magazine L'ordinateur de poche N°16 Histoire de jouer, le PB-100 peut lui aussi se transformer en balance Roberval. Il choisit au hasard un objet dont le poids est compris entre 1 et 110 grammes, et qui sera représenté par le symbole du carré plein. Le but du jeu est de retrouver le poids exact de cet objet en effectuant une série de pesées. A cette fin, le pocket met à votre disposition une boite de 8 masses qui valent respectivement 1, 2, 2, 5, 10, 20, 20 et 50 grammes. Chaque fois qu'il vous demande "votre pesée?" vous devez répondre en désignant l'une de ces masses par son poids en grammes. Au début de la partie, vous retirez donc une masse de la boite pour la poser sur "votre" plateau de la balance, et le programme vous répond en vous indiquant de quel côté elle penche. Si c'est à droite, la masse est trop lourde; si c'est à gauche, elle est trop légère. Partant de cette indication, vous pouvez ensuite ajouter une autre masse sur le plateau, ou en retirer une pour la ranger dans la boite. Dans ce dernier cas, vous devrez la désigner par son poids précédé du signe "-". Pour corser un peu le jeu, le programme n'affichera pas l'état de la balance quand on remet une masse dans la boite. Naturellement, vous ne pourrez pas tenter l'impossible ( ôter du plateau ce qui se trouve dans la boite ou inversement ). Quand vous aurez enfin trouvé le bon poids, le pocket affichera la balance en équilibre, puis il vous félicitera en vous rappelant combien de pesées vous avez effectuées. De quoi vous encourager à faire mieux la fois suivante. Programme : 3 VAC:PRINT "la balance";:GOSUB 80:A=1:B=2:C=2:D=5:E=10 4 F=20:G=20:H=50 5 P=INT(RAN#*110)+1 10 U=0:Z=3:GOSUB 350:U=4:Z=7:GOSUB 350 27 INPUT "votre pesée",Q:X=X+1:IF Q<0 THEN 75 29 IF Q=0 THEN 37 33 FOR T=0 TO 7:IF A(T)=Q;A(T)=A(T)+.1:GOTO 37 34 NEXT T 35 PRINT "impossible!";:GOSUB 80:GOTO 10 37 W=W+Q:IF P>W;PRINT "_(icone du carré plein)__<-_(icone du carré vide)--";:GOSUB 80:GOTO 10 38 IF P0;A(T)=INT A(T):GOTO 88 77 NEXT T:GOTO 35 80 FOR I=0 TO 40:PRINT:NEXT I:RETURN 88 W=W+Q:GOTO 10 350 FOR T=U TO Z 351 IF FRAC A(T)<>0;PRINT " .";:GOTO 354 352 PRINT A(T); 354 NEXT T:GOSUB 80:RETURN