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

Langage Delphi Discussion :

problème opérations


Sujet :

Langage Delphi

  1. #1
    Membre actif Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    575
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 575
    Points : 262
    Points
    262
    Par défaut problème opérations
    Bonjour à tous,
    je galère depuis qulques temps à savoir pourquoi le résultat d'une opération est différent de celui attendu.
    Je m'explique.
    Voici le bout de code que je viens de taper
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    valeur=(1.2-0.6)/20;
    Code très simple. et le résultat devrait être 0.03.
    Malheureusement delphi me donne 0.029999999326.
    Et ca fausse la suite de mon programme.
    Quelqu'un pourrait-i m'aider ?

    Merci d'avance

  2. #2
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 100
    Points : 53
    Points
    53
    Par défaut
    Essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    valeur := (1.2 - 0.6) / 20.0;
    je sais pas si c'est ca mais ca peut marcher

  3. #3
    Membre confirmé

    Inscrit en
    Novembre 2002
    Messages
    760
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 760
    Points : 499
    Points
    499
    Par défaut
    Peux tu donner un peu plus de ton code , principalement les declarations de variable .
    delphi donne bien 0.3 pour le calcul que tu donnes ce qui est normal!

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 560
    Points : 576
    Points
    576
    Par défaut
    Bonjour,

    A mon avis cela vient de la manière dont les entier sont stoké.

    Essayer de stoker le résultat dans un currency plutôt que dans des nombre a virgule flottante (double, extend etc..).
    Ceci dis, le problème est inhérent au mode de stokage et de calcule commun à tous les ordinateurs. Le currency ne permet que de camoufler la plus grande partie des problèmes.

  5. #5
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      ShowMessage(FormatFloat('0.00',Valeur));
    Ca te sortiera le bon résultat

  6. #6
    Membre actif Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    575
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 575
    Points : 262
    Points
    262
    Par défaut
    Merci pour votre aide à tous.
    Le problème est maintenant résolu.

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

Discussions similaires

  1. Problème opération arithmétique
    Par xnooztv dans le forum VB.NET
    Réponses: 5
    Dernier message: 22/12/2014, 22h34
  2. [Batch] Problème opération mathématique
    Par nekcorp dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 11/11/2012, 20h05
  3. problème "opération en cascade"
    Par Zinemon dans le forum IHM
    Réponses: 6
    Dernier message: 10/08/2007, 16h53
  4. problème opération sum date
    Par lazzeroni dans le forum Oracle
    Réponses: 1
    Dernier message: 19/06/2006, 12h03
  5. Réponses: 4
    Dernier message: 19/02/2006, 18h18

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