Пример разработки программы

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

1. ввод или инициализация исходных данных расчета (известных значений, аргументов);

2. вычисление неизвестных значений (результатов);

3. вывод результатов.

Программа в таком случае обычно состоит из следующих частей:

1. заголовок;

2. описание величин (аргументов, результатов, промежуточных значений);

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

4. вычисление промежуточных значений и результатов (преобразование данных);

5. вывод результатов;

6. операторы завершения программы.

Для реализации такого алгоритма требуются следующие операторы Фортрана:

1. PROGRAM – оператор, задающий заголовок программной единице и объявляющий ее головной. Имя программы может содержать буквы и цифры и не должно совпадать с именами переменных и констант, а также библиотечных функций и других программных единиц.

2. Описание величин (описание типов данных) может быть выполнено явно и неявно (см. ниже) с помощью операторов описания типа (INTEGER, REAL, COMPLEX, LOGICAL, CHARACTER). Такие операторы состоят обычно из описателя типа и списка имен объектов этого типа, например, REAL x, pi.

3. Инициализация может быть выполнена на этапе описания величин, а также с помощью операторов присваивания, DATA и т.п. Ввод данных в программу выполняется с помощью оператора READ. Возможности этого оператора весьма обширны (так, ввод можно организовать с клавиатуры, из файла, с внешнего устройства). Простейшие операторы служат для ввода данных с клавиатуры, например:

READ *, a,b,c

READ (*,*) a,b,c

Оба эти оператора подразумевают ввод с клавиатуры значений переменных a,b,c в соответствии с их типом. Пользователь должен в данном случае ввести три значения, отделяя их друг от друга с помощью запятой, точки с запятой, пробелов, знаков табуляции или нажимая клавишу . Завершается ввод также нажатием . Значения присваиваются переменным в списке в порядке их ввода (т.е. первое из введенных значений присваивается переменной а, второе – переменной b и т.д.).

4. Основным оператором преобразования данных является оператор присваивания (переменная=выражение), который задает переменной, указанной в левой части, значение выражения, приведенного в правой части.

5. Вывод данных выполняется с помощью операторов WRITE (вывод на экран, внешнее устройство или в файл) и PRINT (вывод на экран). Выводить можно значения переменных, выражений, а также текст (заключается в апострофы). Например, оператор

PRINT *, ‘sum=’, s

выведет на экран текст sum=, а затем значение переменной s.

6. Для завершения программы обычно служат операторы STOP и END. Оператор STOP прерывает выполнение программы и поэтому в конце программы не является обязательным (после выполнения последней команды работа процессора с программой и так будет завершена). Оператор END не является исполняемым, но обозначает конец программной единицы, поэтому его наличие в конце текста программы обязательно.

Приведем пример текста программы (с комментариями), которая обеспечивает чтение с клавиатуры значений целых переменных х и у, вычисление их суммы s и произведения р и вывод результатов на экран:

Program example1 !задается заголовок программы – example1

Integer x,y,s,p !переменные x,y,s,p описываются как целые

Read *, x,y !чтение с клавиатуры значений х и у

s=x+y; p=x*y !вычисление суммы и произведения х и у

write (*,*)’s=’,s,’p=’,p !вывод на экран имен и значений s и р

end example1 !конец программы example1


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *