- •Введение
- •Часть 1. Базовые вычислительные процессы и их реализация на языке Фортран
- •Тема 1. Алгоритм и его свойства. Основные понятия языка Фортран. Арифметические и логические выражения. Разработка и реализация программ с линейной структурой
- •1.1 Алгоритм и его свойства.
- •1.2 Основные понятия языка Фортран
- •1.3 Арифметические и логические выражения
- •1.3.1 Арифметические выражения
- •1.4 Структура программы языка Фортран. Основные операторы программы с линейной структурой
1.2 Основные понятия языка Фортран
Алгоритмический язык – это способ описания алгоритма, понятный человеку и машине.
Алфавит алгоритмического языка Фортран состоит из 26 букв английского алфавита, 10 цифр, символа пробел и специальных символов: =, +, -, *, /, (, ), ., $, ', :, _, #, &, <, >.
Элементы языка:
-
ключевые слова и имена;
-
переменные, константы;
-
выражения;
-
операторы;
-
программные блоки.
Ключевые слова – последовательность литер, имеющая определенный смысл в языке, например, названия типов переменных, команды ввода-вывода и др. Примеры ключевых слов: integer, real, if, else, end, endif.
Имя можно дать константе, переменной, массиву, производному типу данных, конструкции, программе, процедуре, функции, модулю. В отличие от математики в программировании объекты принято не обозначать, а именовать. Например, velocity лучше, чем V.
В Фортране действует следующее соглашение об именах
-
в именах разрешается использовать только английские буквы, причем малые и большие буквы не различаются компилятором
-
помимо букв разрешается использовать цифры 0:9 и специальные символы “_” и “$”
-
первым символом имени может быть только буква
-
в Ф-90 допускается длина имени до 31 символа, в Ф-77 – до 8
-
пробелы и знаки препинания, русские буквы, а также знаки операций не допустимы в именах
Переменная и константа – это ячейки памяти, которым для простоты обращения дают уникальные имена. Переменная и константа могут содержать только одно значение. При чем во время работы программы значение, хранящееся в переменной, может изменяться, а в константе постоянно.
Перед использованием переменные и константы объявляют при помощи неисполняемых операторов описания. При объявлении применяются операторы, эти операторы называют еще типами данных. В Фортране используются следующие типы данных (табл.1.2):
Таблица 1.2 Типы данных
ТИП |
FORTRAN |
Пример |
Целые |
INTEGER |
5 |
Вещественные |
REAL |
3.14159 |
Комплексные |
COMPLEX |
(1.3,0.00) |
Логические |
LOGICAL |
.true. |
Символьные |
CHARACTER |
'd' |
Различают 5 типов констант:
-
три числовых типа - целые, вещественные, комплексные
-
логические
-
строки
Каждому типу соответствует своя область допустимых значений, особый способ хранения в памяти компьютера и набор команд для их обработки. Различают явные и именованные константы. Именованные константы, также как и переменные, объявляют в описаниях типа. Тип явной константы понятен по ее внешнему виду.
Целая константа
-
записывается в виде последовательности цифр, которым предшествует знак “-“ или “+” (его можно опустить)
-
лежит в диапазоне от –2 147 483 648 до 2 147 483 647.
-
в памяти компьютера представляется точно
-
действия над целыми выполняются точно
-
по умолчанию записывается в десятичной системе счисления, номожно указать и другую систему счисления
-
примеры записи целых констант: 7 +15 -262
Вещественная константа
-
содержит не десятичную запятую, а десятичную точку “.“, как принято в Англии и Америке, например, 3.14 или 3. , причем точку, как признак вещественной константы, опускать нельзя, в то время как нулевую целую или дробную часть числа - можно
-
для малых и больших по порядку чисел предпочтительнее экспоненциальную форма 1.0Е-7 (число с мантиссой и порядком, обозначаемым “Е”, вместо "∙10 в степени") вместо фиксированной формы 0.0000001
-
лежит в диапазонах либо отрицательных чисел из [–3.40*1038,–1.17*10-38] либо ровно 0.0 либо положительных чисел из [+1.17*10-38,+3.40*1038]
-
число в памяти компьютера предсталено нормализованной мантиссой 0.1≤m<1, содержащей 7 цифр, и порядком из диапазона ±38
-
даже в допустимом диапазоне в памяти компьютера предстаимо не любое число, так что часто хранится приближенное значение
-
действия над вещественными числами выполняются с ошибками округления
-
примеры записи вещественных констант 3.14 -7.0 160000.0 0.0000001 1.6Е+5 -0.0000000000023 ровно ноль можно записать так 0.0 0. .0 и даже просто точкой.
-
при двойной точности 1.6D+5 порядок, обозначен D вместо Е
Комплексная константа
-
записывается в виде упорядоченной пары вещественных констант, разделенных символом “,“ и заключенных в круглые скобки, например, (-10., 8.2)
-
-10. - соответствует действительной части комплексного числа -10+8,2i
-
8.2 - соответствует мнимой части комплексного числа -10+8,2i
Логические константы: .TRUE.–"истина" и .FALSE.– "ложь".
Символьная (строковая) константа
-
это последовательность символов, заключенная в апострофы ‘текст’ или двойные кавычки “O’K”
-
количество символов в константе называется длиной строковой константы, максимум 32767
-
символ “пробел” является значащим
-
пример: ‘при х=’ - это строковая константа из шести символов
Именованные константы, задаются в операторе parameter, например
real, parameter :: pi=3.14, e=2.71
Переменные в Фортране различают по типу: целые, вещественные, комплексные, логические, символьные. Перечисленные 5 типов называют базовыми, на основе которых программист может определять в операторе type производные типы по своему усмотрению. Целесообразно для каждой переменной объявлять ее тип, не полагаясь на принцип "по умолчанию", который отменяется оператором implicit none
Переменную объявляют
-
целой в integer , пример: integer x1, y1, m или с инициализацией некоторых переменных integer :: number=1, sec=2, al;
-
вещественной в real , пример: real X, I15, Z;
-
комплексной в complex , пример: complex complX, complY, complZ;
-
логической в операторе logical , пример: logical L1, L2;
-
строковой в операторе character, - - после “*” указывают длину строки для всех переменных из списка, например, character *70 STIN, STOUT;
- character без указания длины, например, character ONE, first подразумевает длину, равную 1
Перед использованием переменной в правой части выражений ее надо инициализировать, то присвоить значение соответствующего типа.
Все описанные элементы подвергаются обработке компилятором.
Комментарий - текст, который компилятор пропускает. Если программисту нужно записать в тексте программы любую информацию, например, поясняющую код программы, названия и суть модулей, заметки "на полях", он может сделать это с помощью комментариев. Комментарий начинается с восклицательного знака «!».
Программа - это запись последовательности инструкций (операторов). Операторы бывают исполняемые и неисполняемые. Исполняемые операторы задают некоторые действия, которые должны быть выполнены. Неисполняемые определяют различные свойства и соглашения в программе. Объекты, которые подлежат описанию или над которыми выполняются действия называются операндами.
Правила записи программы в свободном формате:
-
длина строки текста не превышает 132 символа;
-
запись оператора может начинаться с любой позиции строки;
-
на одной строке могут размещаться несколько разделенных точкой с запятой операторов;
-
если строка текста завершается символом &, то последующая строка рассматривается как строка продолжения;
-
в операторе FPS может быть до 7200 символов; число строк продолжения при свободном формате не может быть более 54;
-
любые расположенные между восклицательным знаком и концом строки символы рассматриваются как комментарий.
Файл с программой на языке Фортран имеет расширение .F90.