IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

calculer un radian avec math.h


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut calculer un radian avec math.h
    Bonjour.

    J'essaye de calculer un radian à partir de deux longueurs, mais cela ne semble pas bien fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
     
        float distance = sqrt ( pow ( x1 - x2 ) + pow (  y1 - y2) ) ;
     
        double radian = acos ( ( x1 - x2 ) / distance ) ;
    Mon code vous parrait-il correct ?

    Merci si vous pouvez m'aider .

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur du dimanche
    Inscrit en
    Février 2013
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur du dimanche

    Informations forums :
    Inscription : Février 2013
    Messages : 154
    Par défaut
    J'ai oublié mes formules du lycée, mais sur ton code, il y a juste ceci qui me chiffonne (mais je peux me tromper) :
    Es tu sûr que x1 sera toujours supérieur à x2 ? Dans le cas contraire, tu auras une distance négative pour calculer ton radian.

    Serait ce mieux ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    float distance = sqrt ( pow ( x1 - x2 ) + pow (  y1 - y2) ) ;
    double radian = acos ( sqrt (pow ( x1 - x2 ) ) / distance ) ;
    ou :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    double radian = ( ( x1 > x2)? acos ( x1 - x2 ) : acos ( x2 - x1 ) ) / distance;

  3. #3
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    c'est moi ou pow est censé faire une élévation à une puissance arbitraire, donnée en argument, et qu'ici, ce n'est pas le cas?

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Par défaut
    Oui, merci pour vos réponses.

    c'est moi ou pow est censé faire une élévation à une puissance arbitraire, donnée en argument, et qu'ici, ce n'est pas le cas?
    Autant pour moi, c'était une erreur de retranscription le vrai code est en effet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
      float distance = sqrt ( pow ( ( x1 - x2 ) , 2 ) + pow ( (  y1 - y2) , 2 ) ) ;
    Ca marche pour la condition. Il fallait en effet gérer le positif/négatif .
    Merci à MrPchoun !

  5. #5
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    atan2(x1-x2, y1-y2) ne serait-il pas une meilleure solution au problème?

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par défaut
    On pourrait avoir le vrai type de toutes ces variables pour commencer ?
    Le vrai code qui utilise ce code ?
    Et soyons fous, une vraie description d'erreur que "ça ne semble pas fonctionner" ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul de stock avec valeure null
    Par nideux dans le forum Access
    Réponses: 3
    Dernier message: 02/12/2005, 11h10
  2. Calculer cos(x) avec une série
    Par Évariste Galois dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 23/08/2005, 15h47
  3. formule de calcul du TRI avec PL/SQL
    Par mongilotti dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 30/07/2005, 20h23
  4. composant de calcul [champ date] avec rave report
    Par segnac dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/06/2005, 19h08
  5. calculer une moyenne avec une requete externe
    Par allowen dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/01/2005, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo