- •«Информатика» программирование на фортране
 - •Часть 1
 - •От автора
 - •Содержание
 - •1. Константы
 - •2. Типы констант
 - •3. Переменные
 - •4. Типы переменных
 - •5. Операторы описания
 - •6. Арифметические операции Операции по приоритету:
 - •7. Расположение текста программы на экране дисплея
 - •Правила набора текста программ:
 - •Правило:
 - •4 Write(6,*)’ Введите значения сторон треугольника a,b,c’
 - •8. Технология прохождения фортран – программ на эвм
 - •Технология прохождения фортран – программ на эвм
 - •9. Арифметический оператор if
 - •If(арифметическое выражение) m1, m2, m3
 - •Примечание:
 - •Правило:
 - •Оператор, следующий после if арифметического должен иметь метку;
 - •If арифметический не может быть последним оператором в цикле do.
 - •4 Write(6,*)’ Введите значения сторон треугольника a,b,c’
 - •8 Write(6,*)’ Площадь треугольника равна нулю’
 - •9 Write(6,*)’ Такой треугольник не существует’
 - •10. If логический
 - •If(логическое выражение) выполняемый оператор
 - •70% Ошибок у программистов возникает из-за несоответствия типов переменных!.
 - •Условные обозначения логических операторов на блок-схемах
 - •If арифметический if логический
 - •11. Табулирование функции
 - •12. Оператор цикла do
 - •Внимание:
 - •Примечание:
 - •3 Write(6,*)’Введите переменные a,b,c’
 - •13. Массивы
 - •Примечание:
 - •Вычисление определенного интеграла
 - •1 Write(6,*)’Введите значения a,b,dx’
 - •14. Работа с одномерными массивами Ввод массивов
 - •Первый способ ввода массивов:
 - •Второй способ ввода массивов:
 - •Третий способ ввода массивов:
 - •15. Вывод массивов Первый способ вывода массива
 - •Второй способ вывода массива:
 - •Третий способ вывода массива:
 - •Четвёртый способ вывода массива:
 - •Способ вывода массива в два столбца:
 - •Фрагменты задач с одномерными массивами
 - •If(b.Eq.K) write(6,*)’ Число m является чётным’
 - •Сортировка массива
 - •Второй способ сортировки массива:
 - •16. Конструкция if then–else if then–else – end if
 - •If (логическое выражение 1) then
 - •Правила:
 - •Примечания:
 - •17. Оператор data
 - •Правило:
 - •По очерёдности следования
 - •По типу данных.
 - •Правило:
 - •18.Работа с двухмерными массивами
 - •19. Ввод двухмерного массива
 - •Второй способ ввода массивов:
 - •Третий способ ввода массивов:
 - •Четвертый способ ввода массивов:
 - •Фрагменты задач с двухмерными массивами
 - •20. Вывод двухмерного массива
 
4. Типы переменных
По неявному соглашению все переменные считаются вещественного типа за исключением тех, имя которых начинается на одну из букв:
I, J, K, L, M, N.
Если имя переменной начинается на одну из этих букв, то эта переменная считается целого типа и она может содержать только целое число.
Во всех других случаях типы переменных задаются с помощью операторов описания.
5. Операторы описания
К операторам описания относят операторы:
REAL – описывает переменные и массивы вещественного типа.
Если имеется переменная или массив целого типа (когда имя начинается на любую букву из I, J, K, L, M, N), то с помощью оператора REAL можно преобразовать её в переменную вещественного типа.
Примеры:
REAL K,LAM(5)
K=2.5
INTEGER – описывает переменные и массивы целого типа.
Используется для преобразования переменной или массива вещественного типа в переменную или массив целого типа.
Примеры:
INTEGER X,TOK,B(10).
TOK=4
B(1)=132
COMPLEX - описывает переменные и массивы комплексного типа. Все переменные и массивы комплексного типа обязательно должны быть описаны в программе оператором COMPLEX .
После описания с помощью оператора COMPLEX переменная любого типа становиться переменной комплексного типа.
Примеры:
COMPLEX Q1,QX2,M12
CHARACTER - описывает переменные и массивы текстового типа (строковые). Все данные строкового типа должны быть описаны. Если длина строковой переменной не превышает 4-х байт, то ее можно не описывать.
Используется при непосредственной работе с текстом для описания переменных как текстовых.
Пример:
CHARACTER*10 C,C1,D12*15
Данная строчка означает, что в программе переменные C,C1 D12 будут текстового типа (строковые), причём переменные С, С1 могут содержать до 10 символов. *10 – обозначает групповой описатель длины переменных. Переменная D12 может содержать до 15 символов текста. *15 – индивидуальный описатель длины переменной D12.
LOGICAL – описывает переменные логического типа.
Пример:
LOGICAL T1,T2
DOUBLE PRECISION или REAL*8 - описывает переменные удвоенной значности.
6. Арифметические операции Операции по приоритету:
вычисление значений функций;
** - возведение в степень;
*, / - умножение и деление;
+, – - сложение и вычитание;
( ) – очерёдность выполнения арифметических операций может задаваться с помощью скобок;
= - присвоить значение.
Встроенные функции языка FORTRAN
sin x  | 
			SIN(x)  | 
			ex  | 
			EXP(X)  | 
		
cos x  | 
			COS(x)  | 
			ln x  | 
			ALOG(X)  | 
		
tg x  | 
			TAN(x)  | 
			lg x  | 
			ALOG10(X)  | 
		
arctg x  | 
			ATAN(x)  | 
			|x|  | 
			ABS(X)  | 
		
				  | 
			SQRT(2.*x)  | 
			max(a,b)  | 
			AMAX1(A,B)  | 
		
				  | 
			X**(1./3.)  | 
			min(a,b,c)  | 
			AMIN1(A,B,C)  | 
		
Предупреждение : функции sin, cos, а также отрицательное число нельзя возводить в вещественную степень.
Для тригонометрических функций угол указывается в радианах.
Оператор присваивания.
В общем виде : переменная = выражение
Символ “ = ” обозначает операцию присвоить значение. При схожести с арифметической операцией “равно” ( Y=48 ), имеет существенное отличие в таких выражениях как :
I = I+1 или X=X+DX
Последняя запись обозначает следующее. Взять число из ячейки X добавить к нему число, хранящееся в ячейке DX и результат записать в ячейку X.
Не могут находиться рядом два знака арифметических операций. Их необходимо отделять скобками .
T * ( -2.* X )
Арифметические операции в выражении выполняются слева направо с учетом приоритета. При нескольких операциях возведении в степень они выполняются справа налево. Например: А=В**С**2 будет выполняться как А=В**(С**2).
При записи арифметических операций количество открытых скобок должно быть равно количеству закрытых скобок.
Отрицательное число
не может быть возведено в вещественную
степень. Поэтому в выражениях записи
функции  sin2x
 запись в программе должна быть  : 
SIN(X)**2
, где  2 – целого
типа. Положительное число может быть
возведено в вещественную степень. В
этом случае используется программа с
логарифмическими функциями. Процесс
возведения в целую степень заменяется
перемножением,
 эта функция должна быть записана так
: X**2.5
+ Y**(1./3.)
– 2.*SIN(X)**2
+ EXP(2.*X)
. В приведенном
выражении желательно использование
данных одного типа. 
При арифметических операциях с переменными или константами целого типа, промежуточный результат является так же целым числом, т.е. сохраняется только целая часть промежуточного результата, а дробная часть отбрасывается.
Примеры:
A=1/3=0
A=1./3.=0.33(3)
I=199/100=1
J=1./3=0.33(3) при вычислении, а при пересылке результата вычисления в ячейку памяти ЭВМ дробная часть результата отбрасывается и J будет равно 0.
	Если выражение для
 
записать как Y**(1/3),
то результат такой записи при любом Y
будет равен 1. Поскольку деление 1 целого
типа на 3 дает результат также целого
типа  ноль. Любое число Y,
возведенное в нулевую степень, будет
равно 1. Правильная
запись: Y**(1./3.).
Ошибки в записи порядка операций с данными целого типа являются одними из самых распространенных!!! Обратите внимание!
