- •«Информатика»
- •Содержание
- •1. Константы
- •2. Типы констант
- •3. Переменные
- •4. Типы переменных
- •5. Операторы описания
- •6. Арифметические операции Операции по приоритету:
- •7. Расположение текста программы на экране дисплея
- •Правила набора текста программ:
- •Правило:
- •4 Write(6,*)’ Введите значения сторон треугольника a,b,c’
- •8. Технология прохождения фортран – программ на эвм
- •Технология прохождения фортран – программ на эвм
- •9. Арифметический оператор if
- •If(арифметическое выражение) m1, m2, m3
- •Примечание:
- •Правило:
- •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. Вывод двухмерного массива
3. Переменные
Переменная– это величина, которая может в программе принимать различные значения.
Переменные различаются по именам. Имя переменной (идентификатор) может содержать от 1 до 6 символов. Причём первый символ – буква (желательно латинского алфавита). Следует избегать имен (идентификаторов), совпадающих с операторами языка, например REAL,READ, а так же с именами встроенных функций.
В Фортран-77 и более поздних версиях имя переменной может содержать более 6 символов (до 1320), но только первых 6 символов являются распознаваемыми.
Примеры имен переменных: X,Y1,tok, kit,ambassadort. Имена переменных в программе могут быть набраны прописными или строковыми буквами. В последнем имени распознаваемыми будут только первых 6 символовambass.
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переменная любого типа становиться переменной комплексного типа.
Примеры:
COMPLEXQ1,QX2,M12
CHARACTER - описывает переменные и массивы текстового типа (строковые). Все данные строкового типа должны быть описаны. Если длина строковой переменной не превышает 4-х байт, то ее можно не описывать.
Используется при непосредственной работе с текстом для описания переменных как текстовых.
Пример:
CHARACTER*10 C,C1,D12*15
Данная строчка означает, что в программе переменные C,C1D12 будут текстового типа (строковые), причём переменные С, С1 могут содержать до 10 символов. *10 – обозначает групповой описатель длины переменных. ПеременнаяD12 может содержать до 15 символов текста. *15 – индивидуальный описатель длины переменнойD12.
LOGICAL– описывает переменные логического типа.
Пример:
LOGICALT1,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.).
Ошибки в записи порядка операций с данными целого типа являются одними из самых распространенных!!! Обратите внимание!