Kinds de real en Fortran
Un tercio a 32 y a 64 bits: iso_fortran_env nombra las precisiones de forma portable.
program real_kinds
! iso_fortran_env names the kinds portably: real32, real64.
use iso_fortran_env, only: real32, real64
implicit none
real(real32) :: single = 1.0_real32 / 3.0_real32
real(real64) :: double = 1.0_real64 / 3.0_real64
print *, "single: ", single
print *, "double: ", double
print *, "epsilon at 32 bits: ", epsilon(single)
print *, "epsilon at 64 bits: ", epsilon(double)
print *, "largest double: ", huge(double)
end program real_kinds
Cómo funciona
use iso_fortran_env, only: real32, real64importa las constantes de kind.1.0_real64estampa el kind en el literal, no solo en la variable.epsilonyhugereportan la precisión y el techo de cada kind.
Palabras clave y builtins usados aquí
endepsilonhugeimplicitnoneonlyprintprogramrealuse
El intento, en números
- Líneas
- 13
- Caracteres a escribir
- 456
- Tokens
- 75
- Ritmo de tres estrellas
- 60 tpm
Al ritmo de tres estrellas de 60 tokens por minuto, este intento toma unos 75 segundos.
Paso 1 de 3 en Kinds y módulos; paso 22 de 27 en Fundamentos del lenguaje.