La question est posé dans le sujet...
J'aimerais savoir comment on peut savoir si le point S (X,Y) se trouve dans le cercle C de centre O (X0,Y0) dans on connaitrait le rayon R et ses coordonnées X0 et Y0.
Merci tt le monde
@++
La question est posé dans le sujet...
J'aimerais savoir comment on peut savoir si le point S (X,Y) se trouve dans le cercle C de centre O (X0,Y0) dans on connaitrait le rayon R et ses coordonnées X0 et Y0.
Merci tt le monde
@++
Il n'y a pas d'hommes cultivés, il n'y a que des hommes qui se cultivent.
pslus un ordinateur possede de RAM, plus vite il peut generer un message d'erreur c'est pour ça que j'en ai 16
salut
et bien ce n'est pas compliqué suffit de savoir si la distance du point au centre du cercle est inférieure au rayon du cercle
c'est du pythagore !
soit si racine_carre((x_point - x_centre)² + (y_centre - y_point)) < rayon
alors le point est dans le cercle
voila en espérant avoir été clair!
Sauf pour le temps de calcul où la deuxième solution est plus rapide![]()
1)http://www.developpez.com/cours/
2)Recherche
3)Posez votre question en suivant les règles
_oOo-DrQ-oOo_
je ne suis pas trop d'accord: dans la première solution évoquée on calcule la distance du point par rapport au centre que l'on compare avec le rayon.
alors que dans la seconde on ne prend pas la racine carrée, mais on la compare avec le rayon que l'on éléve au carré, donc à mon avis les 2 calculs sont aussi rapides l'un que l'autre... non ???
Le proc effectue beaucoup plus vite une multiplication qu'une division, et je ne parle pas de la racine carrée.
Je ne connais pas l'algorithme pour calculer une racine carrée mais ca doit prendre plus de temps que faire une simple multilication.
1)http://www.developpez.com/cours/
2)Recherche
3)Posez votre question en suivant les règles
_oOo-DrQ-oOo_
La racine d'un entier peut generer un resultat du type reel avec une suite de chiffre apres la virgule tendant vers l'infini.
Tandis qu'un carré d'un entier generera toujours un resultat entier.
2^(1/2) = 1.414213562371 ...
2^2 = 4
De plus l'operation racine est calculé en passant par la relation e^((1/2)*ln(2)) qui est elle meme calculé par des developpements limités... qui revient a calculé une suite considerable de puissance!
Alors que le carré c'est juste 2*2!
Et donc le carré est plus rapide a calculé.
Cordialement, Gysmo
[size=9]> Respectez les régles du forum.
> Consultez le guide du developpeur Delphi devant un problème.
> Participez à la F.A.Q Delphi !
ah ok je ne voyais pas les choses de cette façon... j'aurai au moins appris que le processeur utilise les développements limités...
Et oui il ne connais que les operations simple le proc (+,*) et donc on transforme un truc qui connait pas (racine) en truc qui connait par l'intermediare de relations mathematiques debouchant sur un DL (un DL etant plein de + et de * !!!).
De tout facon il fait ca tres vite mais c'est theoriquement plus rapide de faire 2*2 que ...
Bref voila quoi!
Babaille.
Cordialement, Gysmo
[size=9]> Respectez les régles du forum.
> Consultez le guide du developpeur Delphi devant un problème.
> Participez à la F.A.Q Delphi !
à noter quand même que les développements limités ne sont pas des opérations de base puisqu'ils font intervenir la dérivée, la dérivée seconde, la n-ième dérivée... et fait en plus intervenir les factorielles:
bref ce n'est pas si simple:
f(0)+f'(0)/1!.x+f''(0)/2!.x²+...
Oui bien sur, mais dans le cas d'une fonction simple connu le problème ne ce pose pas, elle fait ainsi partis de l'algorythme.
Par ex : e^(t) = 1 + t/1! + t^2/2! + ... + t^n/n! + t^n * epsilon(t)
De plus n! = 1*2*3*4 ... *n ce qui n'est pas compliqué.
On se sert alors de n (l'ordre) pour obtenir la précision voulu.
Comment procédrais tu autrement pour calculer une racine?
Enfin débatre la dessus n'est pas simple tant le sujet est complexe!
Babaille.
Cordialement, Gysmo
[size=9]> Respectez les régles du forum.
> Consultez le guide du developpeur Delphi devant un problème.
> Participez à la F.A.Q Delphi !
oui je suis bien d'accord avec toi, le débat pourrait aller loin tant les mathématiques peuvent être si complexes...
Tout as fait!
Il n'y as qu'à voir les nombres complexes...
Arg quel horreur!
Babaille.
Cordialement, Gysmo
[size=9]> Respectez les régles du forum.
> Consultez le guide du developpeur Delphi devant un problème.
> Participez à la F.A.Q Delphi !
c'est bon vous batez pas...
La rapidité du calcule je m'en fous un peu pour ce que je vais faire ...
Franchement merci, j'avais franchement pas penser a ça...
merci a tous
Il n'y a pas d'hommes cultivés, il n'y a que des hommes qui se cultivent.
pslus un ordinateur possede de RAM, plus vite il peut generer un message d'erreur c'est pour ça que j'en ai 16
1/ Skarla, t'as pas honte de poser une question pareille ?
2/ Les DL pour la racine, je ne suis pas convaincu, il existe en effet des séries qui convergent plus rapidement vers les fonctions classiques qu'une série entière (et pas un DL). Il faudrait regarder du côté des développements généralisés je pense
Moi j'ai appris ca en math.
Maintenant je pense qu'il y a d'autre facon d'avoir un algo pour calculer la racine ou autre.
Mais je ne les connais pas.
Babaille.
Cordialement, Gysmo
[size=9]> Respectez les régles du forum.
> Consultez le guide du developpeur Delphi devant un problème.
> Participez à la F.A.Q Delphi !
bon je pense pas que la machine fasse un Dl pour chaque racine
sinon ca serait encore plus long . En fait je crois qu'elle se base sur certaines propriétés de la fonction racine .
Remarque Si le Dl est bien factorisée et optimisé, et que le degré du développement n'est pas trop important , en assembleur ca va très vite
mais bon je suis d'accord que si j'avais fait une comparaison avec les carrés, il y aurait seulement 2 messages dans le topic...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager