
Для гр.113_1-5_Информатика ч.2 / Практика / ФОРТРАН / Арифметические выражения_функции
.pdfВВЕДЕНИЕ В ФОРТРАН
АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ
Константы и переменные целого и вещественного типов представляют числовые данные. С ними можно выполнять следующие арифметические операции: сложение, вычитание, умножение, деление и возведение в степень. Знаки арифметических операций приведены ниже
Сложение |
+ |
Вычитание |
– |
Умножение |
* |
Деление |
/ |
Возведение в степень |
** |
Из констант, переменных и знаков арифметических операций можно составить арифметическое выражение (эквивалентное понятию «формула» в математике). С помощью арифметического выражения осуществляется вычисление по формулам. Примеры простых арифметических выражений приведены в таблице ниже
Обычная |
Арифметическое |
Замечания |
||
|
запись |
выражение |
||
|
|
|||
|
|
|
||
x+4y |
x+4*y |
Знак |
||
|
|
|
|
умножения |
|
|
|
|
обязателен |
|
|
|
||
2ab |
2*a*b |
— "" — |
||
|
|
|
|
|
|
|
|
5.0/6.0*t |
целые числа |
5 |
t |
|
переведены в |
|
|
|
|
||
|
|
|
|
|
6 |
|
вещественные, |
||
|
|
|||
|
|
|
|
так как 5/6=0 |
|
|
|
|
|
|
|
x2 |
x**2 |
|
Арифметические операции различаются порядком их выполнения (т.е.
приоритетом):
1)возведение в степень **
2)умножение или деление *, /
3)сложение или вычитание +, -
Если в выражении подряд записаны операции одного приоритета, то, кроме операции возведения в степень, они выполняются слева направо.
a* b/2/6. |
s − z + 3.5 * y + b |
||
|
|
|
|
1 |
2 |
||
1 |
|||
|
|
||
2 |
|||
|
3 |
||
|
|
||
3 |
|
4 |
В приведенных примерах цифрами в подписи указан порядок выполнения операций.
Операции возведения в степень выполняются справа налево.
b* *y * *2
1
2
b |
y2 |
в обычной записи |
Порядок выполнения арифметических операций можно изменить с помощью заключения части выражения в круглые скобки. Если выражение имеет сложную структуру с большим количеством вложенных друг в друга скобок, то вначале вычисления проводятся в самых внутренних скобках, а затем в следующих по уровню скобках
и т.д. (см. схему)
(…(…(…)…)…)
1
2
3

Примеры арифметических выражений
Обычная |
Арифметическое |
Замечания |
||||||||
|
запись |
выражение |
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
5d + a |
(5*d + a)/(4*b*d) |
Первым вычисляется числитель, а |
||||||
|
|
затем знаменатель |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4bd |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Второй вариант записи: |
|
5d + a |
(5*d + a)/4/b/d |
знаменатель заменен |
|||||||
|
|
|
|
|
|
|
|
|
|
последовательным делением |
|
4bd |
|
||||||||
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
3 |
3 |
|
|
|
|
(3.0 / 7.0)**(1.0 / 3.0) |
Целые числа заменены |
|||
|
|
|
|
|
|
вещественными |
||||
7 |
|
|
|
|
|
|||||
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
c - d |
(c − d)/( −3) или |
|
|||||
|
|
|
|
|
|
− (c − d)/3 |
|
|||
- 3 |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
k3 x |
k**(3*x) |
|
|||||||
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
Результатом вычисления арифметического выражения является число (в простейших случаях целое или вещественное), следовательно, арифметическое выражение имеет тип, определяемый типом результата.
Сформулируем простое правило определения типа выражения (для выражений, содержащих только целочисленные и вещественные данные).
Если в состав выражения входит хотя бы одна вещественная величина, то выражение имеет вещественный тип. Результат также имеет вещественный тип.
Если в выражении только целочисленные данные, то результат – число целое и выражение имеет тип целый.
Ниже приведены примеры выражений, содержащих данные разного типа (тип переменных задается по умолчанию).
Арифметическое |
Тип выражения |
Замечания |
выражение |
|
|
|
|
|
(k+c)**2 |
вещественный |
с – |
|
|
вещественная |
|
|
переменная |
|
|
|
(4+n)/5 |
целый |
|
|
|
|
(4.0+n)/5**(-2) |
вещественный |
число 4.0- |
|
|
вещественное |
|
|
|
m/n**(1./3.) |
вещественный |
возведение в |
|
|
вещественную |
|
|
степень |
|
|
|
Рекомендуется по возможности в одном выражении не использовать константы и переменные разного типа, так как тип промежуточных результатов определяется типом величин, с которыми выполняется эта арифметическая операция.
8/ 7*6 − 9.0/5*7 = 6 − 9.8 = 3.8
=1 =1.4
5.0*(8/10)**2 = 0.0
=0
=0
5.0*(8./10.)**2 = 3.2
=0.8
=0.64
Фортран содержит математические функции вычисления корня квадратного, логарифмов, тригонометрических функций и многие другие, так называемые встроенные (стандартные) функции. В записи арифметических выражений они представляются с помощью указателей функций, т.е. конструкции вида
F(X) - для функции одной переменной, F(X1,X2,X3,…XN) - для функции нескольких переменных.
Здесь F – имя функции, X или X1, X2, X3, …, XN –список аргументов (фактических параметров), для которых производится вычисление значения функции. Это могут быть числовые константы, переменные или арифметические выражения.
Обратим внимание: аргумент функции обязательно в скобках
На следующих слайдах приведен перечень наиболее часто используемых стандартных функций.