Question

J'exécute le code AWK et j'obtiens

The factorial of 200 is inf

Cela suggère que AWK n'utilise pas le même module int standard IEEE que Python. Il semble que la limite d'AWK soit de 170!.

Comment faire comprendre à AWK autant de grands entiers que Python?

Était-ce utile?

La solution

De ici :

  

La représentation interne de tous les nombres, y compris les entiers, utilise des nombres à virgule flottante double précision. Sur la plupart des systèmes modernes, ils sont au format standard IEEE 754.

Python peut avoir des entiers de de n'importe quelle longueur . , en fonction de la mémoire disponible. Ceci est indépendant de IEEE 754. BTW, cette norme donne la limite d’un flottant double précision à environ 10 ^ (+/- 308). La valeur de log10 (factorielle (171)) est > 309. Voir aussi Double précision et Ce que tous les scientifiques devraient savoir sur l'arithmétique en virgule flottante .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top