Pregunta

Ejecuto el código AWK y obtengo

The factorial of 200 is inf

Esto me sugiere que AWK no utiliza el mismo módulo int IEEE-standard que Python. Parece que el límite de AWK es 170 !.

¿Cómo puede hacer que AWK entienda enteros tan grandes como Python?

¿Fue útil?

Solución

De aquí :

  

La representación interna de todos los números, incluidos los enteros, utiliza números de coma flotante de doble precisión. En la mayoría de los sistemas modernos, estos están en formato estándar IEEE 754.

Python puede tener enteros de cualquier longitud , dependiendo de la memoria disponible. Esto es independiente de IEEE 754. Por cierto, ese estándar da el límite de una flotación de doble precisión a aproximadamente 10 ^ (+/- 308). El valor de log10 (factorial (171)) es > 309. Consulte también Doble precisión y Lo que todo científico debe saber sobre la aritmética de coma flotante .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top