[réglé] fonction de calcul de distance

fonction de calcul de distance [réglé] - C - Programmation

Marsh Posté le 01-03-2007 à 14:54:19    

[réglé]

Message cité 1 fois
Message édité par Vincent21 le 02-03-2007 à 22:15:48
Reply

Marsh Posté le 01-03-2007 à 14:54:19   

Reply

Marsh Posté le 01-03-2007 à 15:26:42    

On fait pas les exercices. c'est un problème d'algo. C'est quoi ton problème ?


Message édité par Taz le 01-03-2007 à 15:27:44
Reply

Marsh Posté le 01-03-2007 à 15:29:46    

et d'ailleurs tmpVect ne sert à rien. La distance n'est pas un vecteur. Réutiliser cette structure au lieu d'avoir déclarer dx, dy, dz prête à confusion.

Reply

Marsh Posté le 01-03-2007 à 16:15:13    

tu testes la distance d'un joueur vis à vis de lui-même
tu testes plusieures fois les même distances
 
déroule tes boucles en notant les couples testés
 
tu peux comparer les distances², ça permet de faire le sqrt à la fin.


Message édité par bjone le 01-03-2007 à 16:16:18
Reply

Marsh Posté le 01-03-2007 à 19:07:52    

Vincent21 a écrit :

La fonction trouverDistanceMax calcul la distance maximale entre 2 joueurs.
 
Comment pourrais refactoriser la fonction pour quelle calcul aussi la distance minimale entre 2 joueurs?


Une fonction ne peut pas renvoyer 2 valeurs différentes !!!
 
Ta fonction renvoie la valeur maximale, il faut que t'en écrives une autre qui te renvoie la valeur minimale.


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 02-03-2007 à 01:01:34    

[réglé] merci


Message édité par Vincent21 le 02-03-2007 à 22:16:10
Reply

Marsh Posté le 02-03-2007 à 15:44:00    

[réglé] merci


Message édité par Vincent21 le 02-03-2007 à 22:16:32
Reply

Marsh Posté le 02-03-2007 à 16:08:01    

pour la distance minimale, tu initialises minDist à MAX_FLT (header float.h, en espérant que ce soit standard :D)
 
et tu gardes une comparaison simple
if( tmpDist < minDist )
     minDist=tmpDist;
 
(pas besoin d'accolades pour juste une instruction C)


Message édité par bjone le 02-03-2007 à 16:09:08
Reply

Marsh Posté le 02-03-2007 à 16:34:53    

FLT_MAX [:aloy]
 
Et c'est standard.

Reply

Marsh Posté le 02-03-2007 à 23:02:20    

oups :D :lol: fallait bien que je glisse :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed