8.217 SELECTED_REAL_KIND — Выбор действительного вида
- Описание:
-
SELECTED_REAL_KIND(P,R)возвращает значение вида действительного типа данных с десятичной точностью не менееPцифр, диапазоном показателей степени не менееR, и основаниемRADIX. - Стандарт:
- Fortran 95 и более поздние версии, с
RADIXFortran 2008 или более поздними - Класс:
- Трансформационная функция
- Синтаксис:
-
RESULT = SELECTED_REAL_KIND([P, R, RADIX]) - Аргументы:
-
Перед Fortran 2008, по крайней мере, один из аргументов R или P должен быть присутствовать; с Fortran 2008 они предполагаются равными нулю, если отсутствуют.P (Необязательно) должен быть скаляром и типа INTEGER.R (Необязательно) должен быть скаляром и типа INTEGER.RADIX (Необязательно) должен быть скаляром и типа INTEGER. - Значение возвращаемого значения:
-
SELECTED_REAL_KINDвозвращает значение параметра типа kind для действительного типа данных с десятичной точностью не менееPцифр, диапазоном десятичных показателей степени не менееR, и с запрошеннымRADIX. Если параметрRADIXотсутствует, можно вернуть действительные виды с любым основанием. Если несколько действительных типов данных соответствуют критериям, возвращается вид типа данных с наименьшей десятичной точностью. Если ни один действительный тип данных не соответствует критериям, результат составляет- -1, если процессор не поддерживает действительный тип данных с
- точностью не меньше
P, но требованияRиRADIXмогут быть выполнены - -2, если процессор не поддерживает действительный тип с диапазоном
- показателей степени не меньше
R, но требованияPиRADIXмогут быть выполнены - -3, если
RADIX, но неPиRтребования могут быть выполнены
- -4, если
RADIXи либоP, либоRтребования могут быть выполнены- -5, если нет действительного типа с заданным
RADIX - -5, если нет действительного типа с заданным
program real_kinds integer,parameter :: p6 = selected_real_kind(6) integer,parameter :: p10r100 = selected_real_kind(10,100) integer,parameter :: r400 = selected_real_kind(r=400) real(kind=p6) :: x real(kind=p10r100) :: y real(kind=r400) :: z print *, precision(x), range(x) print *, precision(y), range(y) print *, precision(z), range(z) end program real_kinds
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.3/gfortran/SELECTED_005fREAL_005fKIND.html