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 :

Débordement


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 256
    Points : 107
    Points
    107
    Par défaut Débordement
    Bonjour,

    j'ai fait une fonction mais pourquoi aux alentour de 25 ou 30 il me retourne comme valeur 0???
    SVP

    Merci!!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    function i_factorielle_de(i_valeur:Integer): LongInt;
    var
       i : integer;
       i_valeur2 : LongInt;
    begin
        if (i_valeur = 1) or (i_valeur = 0) then
            begin
            i_factorielle_de := 1;
            end
        else
            begin
            i_valeur2 := 1;
            for i := i_valeur downto 1 do
               begin
               i_valeur2 := i_valeur2 * (i) ;
               end;
            i_factorielle_de := i_valeur2;
            end;
    end; //(*i_factorielle_de()*)

  2. #2
    Membre expert
    Avatar de TicTacToe
    Inscrit en
    Septembre 2005
    Messages
    1 940
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 940
    Points : 3 575
    Points
    3 575
    Par défaut
    Dépassement de capacité

    30! = 2.65252859812191E32

    or un longint va jusqu'à 2^31 (1 bit pour le signe)

    donc ton résultat est faux bien avant 30!, il est juste jusuq'a 12!

    prend des réels pour faire ton calcul...
    Section Delphi
    La mine d'or: La FAQ, les Sources

    Un développement compliqué paraitra simple pour l'utilisateur, frustrant non ?
    Notre revanche ? l'inverse est aussi vrai ;-)

Discussions similaires

  1. A propos des débordement
    Par programaniac dans le forum Langage
    Réponses: 7
    Dernier message: 25/10/2005, 10h58
  2. Probléme de débordement en virgule flottante
    Par wikers dans le forum Langage
    Réponses: 7
    Dernier message: 05/08/2005, 17h35

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