Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Obschy_kurs / Fortran / Metod_Lr2_Fortran.doc
Скачиваний:
57
Добавлен:
21.02.2016
Размер:
262.14 Кб
Скачать
    1. Переменные

Переменные в отличие от констант могут изменять свои значения в программе. Переменные в Фортране могут быть целыми, вещественными, логическими или символьными. Тип переменной во время выполнения программы не изменяется.

Переменные подразделяются на простые и составные. Простые переменные характеризуются одним значением, как в обычной алгебре. Составные переменные могут иметь несколько значений. Примером составных переменных являются массивы.

    1. Имена (идентификаторы)

Для обозначения констант, переменных, программных компонентов используются имена.

Имя – это последовательность латинских букв, цифр, а также символов "$" и "_" (подчеркивание).

На имена накладываются следующие ограничения:

1) число символов в имени не должно превышать 31;

2) имя начинается с буквы или “$”;

3) между символами не должно быть пробелов.

Рекомендуется выбирать имена так, чтобы они по возможности указывали на естественный смысл именуемых объектов. Например, координаты центра окружности х0 и y0 обозначить X0 и Y0, длину окружности обозначить L, а число π – Pi.

    1. Описание переменных

Стандарт Фортрана 90/95 разрешает, для согласования со старыми версиями языка, описывать не все объекты, однако такой подход считается устаревшим и всячески не рекомендуется стандартом. Поэтому все используемые переменные в программе следует описывать, то есть явно указывать их тип. Предложение implicit none отменяет правила неявного определения типов и указывает, что в программе все объекты будут описаны явно. При этом переменные могут быть определенными и неопределенными. Если переменной при описании присваивается значение, то она определена, в противном случае – не определена.

В Фортране 90/95 определены следующие базовые типы:

integerцелый;

realвещественный;

complexкомплексный;

logicalлогический;

characterсимвольный.

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

Логический и символьный типы относятся к нечисловым типам данных.

Объекты логического типа используются для представления результатов логических операций в операторах управления.

Символьные типы используются для представления текстовых объектов.

Оператор описания переменных числового типа имеет вид:

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

или

ТИП, АТРИБУТЫ :: список объектов данных, разделенных запятыми,

где ТИП – имя типа объектов (integer или real );

АТРИБУТЫуказывают дополнительные свойства объектов. Далее будет использоваться только один атрибутparameterдля описания именованных констант. Еслиparameterприсутствует в списке атрибутов оператора описания, то и назначение начальных значений должно производиться тем же оператором.

Пример:

implicit none

integer :: a, b=10, c

real :: d=5.5, abc=-.4, x

real, parameter :: Pi=3.1415, g=9.81

Здесь integerи real – имена типов объектов.

a, bиc - имена переменных целого типа, из них переменнаяbопределена.

d,abc, x– имена переменных вещественного типа, из них переменныеdиabcопределены.

Переменным b, dиabcв операторах описания заданы значения, которые в программе могут быть изменены.

Pi и g – имена именованных констант, значения которых в программе изменять уже нельзя.

Данные логического типа объявляются с помощью следующего оператора описания:

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

Пример.

implicit none

logical :: flag1=.true., flag2=.false.

logical :: prizn

Переменные flag1, flag2 и prizn объявлены логическими, причем переменным flag1 и flag2 в операторе объявления типа присваиваются соответственно начальные значения “истина” и “ложь”.

Объекты символьного типа объявляются с помощью следующего оператора описания:

character (n) :: список объектов данных, разделенных запятыми,

где n – длина строки символов, т.е. сколько символов может содержать объект данных.

Если строка состоит из одного символа, то атрибут (n) можно опустить, т.е.

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

Пример.

implicit none

character :: symbol

character (17) :: str=’это строка текста’

Переменные symbol и str объявлены символьными, причем переменной str сразу присваивается значение, которое впоследствии можно изменить. Переменная symbol может хранить только один символ.

У каждого типа есть несколько разновидностей, которые отличаются друг от друга диапазоном значений и физическим размером абстрактной ячейки памяти, соответствующей данному типу. Одна из разновидностей определяется как стандартная и назначается типу по умолчанию. Например, для 32-разрядных компьютеров диапазон допустимых значений целого типа стандартной разновидности составляет [-231, 231- 1], а для стандартной разновидности вещественного типа типичным является диапазон от 10-38до 1038и шесть-семь значащих цифр.

Для представления объектов логического типа достаточно одного бита, но, как правило, отводится не меньше байта. По умолчанию для представления объектов логического типа отводится 4 байта.

Длина строкового значения n может быть произвольной и изменяться в диапазоне [1, 32767]. Длина символьного значения в байтах равна длине строки.

Соседние файлы в папке Fortran