8.241 SELECTED_REAL_KIND — Выбор вида вещественного типа
- Описание:
-
SELECTED_REAL_KIND(P,R)возвращает значение вида вещественного типа данных с десятичной точностью не менееPразрядов, диапазоном показателей степени не менееR, и основаниемRADIX. - Стандарт:
-
Fortran 90 и более поздние версии, с
RADIXFortran 2008 или более поздние - Класс:
-
Трансформационная функция
- Синтаксис:
-
RESULT = SELECTED_REAL_KIND([P, R, RADIX]) - Аргументы:
-
P (Необязательно) должен быть скаляром и иметь тип INTEGER.R (Необязательно) должен быть скаляром и иметь тип INTEGER.RADIX (Необязательно) должен быть скаляром и иметь тип INTEGER.До Fortran 2008, по крайней мере один из аргументов R или P должен быть присутствовать; начиная с Fortran 2008, они предполагаются равными нулю, если отсутствуют.
- Возвращаемое значение:
-
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
- -1, если процессор не поддерживает вещественный тип данных с точностью не менее
- Пример:
-
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
- См. также:
Далее: SET_EXPONENT, Предыдущее: SELECTED_INT_KIND, Наверх: Встроенные процедуры [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gfortran/SELECTED_005fREAL_005fKIND.html