Je ne sais pas si le sujet a déjà été traité, j'ai fait quelques recherches, je n'ai rien trouvé.
J'ai passé quelques heures cette après-midi pour calculer la distance entre points sur l'écran d'un ordinateur (on parle de pixels). Prenons, tout a fait au hasard, la résolution d'un CBM-64, 320 points horizontalement et 200 points verticalement. Ce qui fait un total de 64.000 points.
Partons du principe que les points sont numérotés séquentiellement de 1 à 64.000 horizontalement.
Prenons quelques exemple de points:
- 320 : dernier point de la première ligne.
- 321: premier point de la deuxième ligne.
- 63681: premier point de la dernière ligne.
- 64000: dernier point de la dernière ligne.
L'utilisateur introduit deux numéros de point (par exemple 1 et 63681) et le programme calcule la distance (199).
Je me suis amusé sur le PB-100 cette fois-ci
Pour ceux qui veulent essayer ...
Pour les autres, voici comment j'ai fait. Je calcule les coordonnées des points grâce à la sous routine en ligne 100. Attention, le point 1 à comme coordonnée (1,1), pas (0,0) et donc, le dernier point est en (320,200). Il y a, évidemment, moyen d'optimiser tout ça. D'ailleurs, je me dis qu'il faudrait éliminer ce test en 110
Ben
Code : Tout sélectionner
10 input"P1=";n:gosub100:a=w:b=z
20 input"P2=";n:gosub100:c=w:d=z
30 e=sqr((c-a)^2+(d-b)^2)
40 print "DIST=";e
90 end
100 z=int(n/320):w=n-z*320
110 if w=0;w=320:goto130
120 z=z+1
130 return




