Je suis en train de travailler avec un grand nombre (~ 10^14), et je dois pouvoir les stocker et itérer sur les boucles de cette longueur, soitlong ints en Fortran
n=SOME_BIG_NUMBER
do i=n,1,-1
Je J'ai essayé la notation habituelle des étoiles, kind=8
etc. mais rien ne semble fonctionner. Ensuite j'ai vérifié la huge
fonction intrinsèque, et le code:
program inttest
print *,huge(1)
print *,huge(2)
print *,huge(4)
print *,huge(8)
print *,huge(16)
print *,huge(32)
end program inttest
produit le numéro 2147483647 dans tous les cas. Pourquoi est-ce? J'utilise gfortran (f95) sur une machine 64 bits.
Si je vais avoir besoin d'une bibliothèque bignum, que l'on ne les gens suggèrent?
Est-ce que vous déclarez vos variables comme nombre entier * 8? – Vanya
Itérer sur une boucle ~ 10^14 fois? Est-ce que vous vous rendez compte combien de temps cela pourrait prendre? Je pense que vous devez repenser votre algorithme. –