Встроенные типы данных.

Для описания различных данных в Фортране предусмотрены различные типы данных. В частности, укажем пять стандартных типов: целый (integer), вещественный (real, вещественные числа одинарной точности), комплексный (complex, комплексные числа одинарной точности), логический (LOGICAL) и символьный (CHARACTER).

В таблице 1.4.1 приведены сведения о диапазонах изменения числовых типов данных (целый, вещественный и комплексный типы).

При этом, в таблице 1.4.1 диапазон изменения вещественных чисел представлен в научном формате, в котором, например запись − 3.435E+38 обозначает − 3.435∙1038.

Память, занимаемая переменной или константой стандартного целого или вещественного типа, равна 4 байтам.

Объекты стандартных числовых типов объявляются операторами, имена которых совпадают с именами типов данных, например:

integer i, j ! Объявляем переменные целого типа i и j real a, b ! Объявляем переменные вещественного типа a и b complex d ! Объявляем переменную комплексного типа d i=3; j=6*i ! Используем переменные в простых выражениях x=1.5; y=0.2*x d=(1.2, -2.4)*1.5 ! Возвращает: (1.8, -3.6)

Таблица 1.4.1. Диапазоны изменения числовых типов данных.

№ п/п Тип Диапазон изменения
integer от − 2 147 483 648 до + 2 147 483 647
real отрицательные числа: от − 3.4028235E+38 до − 1.1754944E−38; число 0; положительные числа: от + 1.1754944E−38 до + 3.4028235E+38; дробная часть может содержать до шести десятичных знаков.
complex Состоит из пары вещественных чисел одинарной точности real, задающих действительную и мнимую часть комплексного числа.

Параметр разновидности стандартных числовых типов данных равен четырем, то есть, например, для целого типа объявления integer и integer(4) эквивалентны.

 

 

В таблице 1.4.2 представлены возможные числовые типы данных.

 

Таблица 1.4.2. Возможные числовые типы данных.

№ п/п Тип Диапазон изменения Число байт
Целый
integer(1) от − 128 до + 127
integer(2) от − 32 768 до + 32767
integer(4) то же, что и integer
byte то же, что и integer(1)
Вещественный
real(4) то же, что и real
real(8) отрицательные числа: от − 1.797693134862316D+308 до − 2.225073858507201D−308; число 0; положительные числа: от 2.225073858507201D−308 до 1.797693134862316D+308; дробная часть может содержать до 15 десятичных знаков.
double precision тоже, что и real(8).
Комплексный
complex(4) то же, что и complex
complex(8) Состоит из пары вещественных чисел двойной точности real(8), задающих действительную и мнимую часть комплексного числа.
DOUBLE COMPLEX то же, что и complex(8)

 

Тип real(8) называется вещественным типом двойной точности.

Запись типа 3.435D+38 для данных двойной точности обозначает 3.435∙1038.

Очевидно, что использование данных с меньшим параметром разновидности позволяет экономить занимаемую данными память, а в случае вещественных или комплексных чисел еще и время вычислений.

Объект логического типа данных может принимать два значения: .TRUE. (истина) и .FALSE. (ложь). Объект стандартного логического типа объявляется оператором LOGICAL или LOGICAL(4), например

logical id1 logical(4) :: id2=.true.

 

Объект стандартного логического типа занимает в памяти 4 байта, объекты типа LOGICAL(2) − 2 байта, а LOGICAL(1) − 1 байт. Объекты с меньшим значением параметра разновидности используются, в частности, с целью экономии памяти.

Символьный тип данных имеет вид CHARACTER(n), где n − длина символьной строки (1≤n≤32767) или длина строки в байтах (занимает n байт). В частности, тип CHARACTER или CHARACTER(1) занимает 1 байт.

 

В заключении заметим, что в Фортране стандарта FORTRAN-77 синтаксис определения типа был иным, а именно вместо integer(1), integer, complex(4) и complex(8) используются соответственно integer*1, integer, complex*8 и complex*16.