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 :

Comparer une variable a nan


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 50
    Par défaut Comparer une variable a nan
    Bonjour,

    Je fais des calculs avec des angles en c cependant lorsque je calcul l'angle je fait une division par 0 et le resultat me renvoie.

    Je pourrais faire des tests pour tester si le dénominateurs sont de a zero, mais il serait plus facil pour moi de pouvoir test si la valeur existe.

    En gros, je voudrais faire un test pour comparer une variable avec la valeur If (x==nan)
    {....

    Mais sa ne marche pas si quelqu'un a une idée?

    Bonne journée et merci d'avance

    Nicolas

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    On utilise la fonction isnan() pour tester.

    Note que si je me souviens bien, NaN n'est égal à rien du tout, pas même à lui-même.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    On utilise la fonction isnan() pour tester.

    Note que si je me souviens bien, NaN n'est égal à rien du tout, pas même à lui-même.
    Exact. Mais isnan va fonctionner pour un NaN signallant sans generer d'exception (au sens IEEE 754) tandis que le comparer avec lui meme va le faire. (Et isnan() est C99, pas C90).

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet Voir le message
    isnan() est C99, pas C90
    Alors y a-t-il un moyen de le faire en C90?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  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
    Citation Envoyé par Médinoc Voir le message
    Alors y a-t-il un moyen de le faire en C90?
    Non. Je ne tiendrais simplement pas compte des NaN signalants jusqu'a ce que j'en rencontre un. (Les seuls que j'ai vus, c'est ceux que j'ai faits pour jouer avec eux).

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/02/2010, 11h08
  2. comparer une variable
    Par lyasd591 dans le forum iReport
    Réponses: 1
    Dernier message: 22/01/2009, 15h07
  3. Réponses: 3
    Dernier message: 28/02/2008, 16h25
  4. [Dates] Comparer une variable avec 2 éléments
    Par oceane751 dans le forum Langage
    Réponses: 14
    Dernier message: 07/01/2007, 17h54
  5. comparer un variable avce une collection
    Par java_fun dans le forum Langage
    Réponses: 1
    Dernier message: 13/01/2006, 18h11

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