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

 Delphi Discussion :

manipuler des entier avec la virgule


Sujet :

Delphi

  1. #1
    Débutant  
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Points : 170
    Points
    170
    Par défaut manipuler des entier avec la virgule
    quand on veut manipuler des données (des entier) avec la virgule quel type on doit spécifié pour ces données et pour les transformer aussi en String comment les faire

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Currency, Comp, Extended, Double, Real, Single et Real48.

    Voici tout les types réels, certains sont dépréciés dans le lot et tous ne permettent pas de stocker la même quantité ou n'ont pas la même précision. Consulter l'aide de Delphi pour plus d'infos.

    Quand aux fonctions de conversion, chercher tout les FloatToXXX.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  3. #3
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Hai,
    Citation Envoyé par sky88 Voir le message
    quand on veut manipuler des données (des entier) avec la virgule quel type on doit spécifié pour ces données et pour les transformer aussi en String comment les faire
    Des entiers avec la virgule, ça ne va pas ensemble.

    Il te faut utiliser des Réels (voir message de Aka Guymelef).
    Si les cons volaient, il ferait nuit à midi.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    Si le nombre de chiffres après la virgule est prédéfini, tu peux utiliser des entiers en multipliant/divisant tes valeurs par un multiple de 10.
    Ex., 2 chiffres après la virgule -> multiplie par 100 pour travailler sur des entiers, puis divise par 100 pour retrouver la valeur réelle.

  5. #5
    Membre confirmé
    Avatar de OutOfRange
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 533
    Points : 474
    Points
    474
    Par défaut
    Citation Envoyé par GoustiFruit
    Si le nombre de chiffres après la virgule est prédéfini, tu peux utiliser des entiers en multipliant/divisant tes valeurs par un multiple de 10.
    Ex., 2 chiffres après la virgule -> multiplie par 100 pour travailler sur des entiers, puis divise par 100 pour retrouver la valeur réelle.
    C'est bien compliqué...
    Si je travaille sur des extended, le résultat sera un extended ! Alors pourquoi intercaler des conversions ???
    Je suppose sky88 que tu as mal formulé ta question
    Pour manipuler des nombres à décimale, il te faut utiliser un des types réel cité par Aka Guymelef
    Et pour convertir en représentation de type chaîne, tu as FloatToStr
    Choisir, c'est renoncer...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    Le problème avec les réels c'est qu'on a parfois des (mauvaises) surprises, par ex. au niveau des comparaisons; il peut arriver que des nombres qu'on pense égaux ne passent pas le comparatif 'if x1 = x2 then...".

  7. #7
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Gao,
    Citation Envoyé par GoustiFruit Voir le message
    Le problème avec les réels c'est qu'on a parfois des (mauvaises) surprises, par ex. au niveau des comparaisons; il peut arriver que des nombres qu'on pense égaux ne passent pas le comparatif 'if x1 = x2 then...".
    C'est vrai. Et il faut ajouter le cumul des approximations, qui peut assez rapidement faire dériver les valeurs obtenues, si le nombre d'opérations successives augmente trop.
    Si les cons volaient, il ferait nuit à midi.

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

Discussions similaires

  1. gprolog : manipuler des entiers avec beaucoup de chiffres
    Par DavidleVrai dans le forum Prolog
    Réponses: 2
    Dernier message: 15/11/2012, 09h01
  2. Lire des chiffres avec les virgules
    Par stiko dans le forum C++
    Réponses: 4
    Dernier message: 19/07/2006, 23h04
  3. Quel langage pour manipuler des entiers très longs ?
    Par mis_dj dans le forum Langages de programmation
    Réponses: 8
    Dernier message: 10/05/2006, 21h12
  4. Manipulation des caractères avec KSH
    Par apocalypse dans le forum Linux
    Réponses: 2
    Dernier message: 30/04/2006, 22h41
  5. Manipulation des fichiers avec fstream.
    Par Pragmateek dans le forum SL & STL
    Réponses: 4
    Dernier message: 04/04/2006, 13h12

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