• [^] # Re: Sérieusement ?

    Posté par (site web personnel, Mastodon) . En réponse au journal Encore des nouvelles de Fortran. Évalué à 3. Dernière modification le 07 mai 2021 à 12:58.

    Oui, c'est valable pour tous les langages qui calculent avec des flottants.
    La norme c'est IEEE 754
    Il faut une norme pour qu'un même calcul donne le même résultat sur n'importe quel microprocesseur.

    Le problème, c'est qu'en règle générale on sait que le résultat est arrondi, mais on ne sait pas combien de chiffres sont faux. Il y a des gens qui ont travaillé sur des librairies (et des processeurs ?) qui seraient capable de fournir non pas un résultat arrondi, mais un encadrement du résultat entre deux bornes.

    Bien sûr, généralement ça se passe bien, seuls les derniers chiffres seront faux. Et par exemple, un ingénieur se contentera souvent d'un nombre de chiffres significatifs faible. Mais il y a des cas pathologiques.

    Et même si ça se passe bien, plus les calculs s'enchaînent et plus on accumule les arrondis. Avec un processeur qui fait quelques milliards de calculs par seconde, il faut donc être conscient de la façon dont ça fonctionne.

    Une petite citation à méditer :

    « Les Shadoks avaient entendu dire que plus un ordinateur va vite, plus il donne de bons résultats. »
    Les Shadoks et le Désordinateur, Jacques Rouxel, 2000.