Арифметические выражения
Арифметические выражения строятся из операндов, арифметических операций и круглых скобок. Операндами могут быть константы, переменные и функции.
В бесскобочных арифметических выражениях операции выполняются слева направо в соответствии с их приоритетом.
1. * (умножение); / (деление); % ( остаток от деления целых чисел).
2. + (сложение); - (вычитание).
Изменить порядок выполнения операций можно с помощью
круглых скобок. Выражение, заключенное в круглые скобки, выполняется в первую очередь. Например, выражению: а/b*с соответствует математическая запись: , а выражению а/(b*с) – запись .
Тип арифметического выражения определяется типом входящих и него операндов.
Арифметическое выражение является целым, если все входящие и него операнды целого типа.
Если в арифметическом выражении содержится хотя бы один вещественный операнд, то результат - вещественный. Целые операнды в вещественном арифметическом выражении всегда преобразуются к вещественному типу.
Операция выделения остатка или деление по модулю ( % ) применима только к целым числам. Результат ее выполнения имеет целый тип.
Исключение составляет операция деления с использованием символа ‘/’ (косая черта). Результат выполнения этой операции всегда зависит от типа операндов.
Например, значением выражения 2/5 будет число 0.
Примеры вычисления арифметических выражений
Арифметические выражения | Результат | Тип результата |
6 + 4 * (5 - 3) | Целый | |
6 + 4 * (5 - 3.0) | 14.0 | Вещественный |
7 % 2 | Целый | |
7/2.0 | 3.5 | Вещественный |
Стандартные функции
Часто используемые в арифметических выражениях математические функции оформлены в виде стандартных подпрограмм, которые хранятся в библиотеке системы С/С++ (файл с именем math.h). Для правильного обращения к стандартной функции необходимо записать имя функции, за которым в круглых скобках следует аргумент (параметр). Приоритет вычисления функций выше, чем приоритет арифметических операций.
Примеры программирования арифметических выражений
Математическая запись | Запись на языке С/С++ |
(a+12*b)/(с1 - 1.8E3) | |
exp((2*sin(4*x)+pow((cos(x* x),2)))/(3*x)) | |
log(fabs(tan(al)-sin(pow(al,3)))) |
Задания
1. Составить описания для заданных переменных
Вариант | Математическая запись | Тип |
Sum, max, w Т, Z1, R | Вещественный Целый | |
A C3, kb, ,X1, ∑ | Символьный Вещественный | |
I, d0, KH Ch, Q, rez | Целый Символьный | |
N, Kc, a2 Z,fd, | Целый Символьный | |
I, kd, ,v,Tn | Символьный Вещественный | |
M1, j, r, b0,A, σ | Символьный ВещественныйI | |
Mo, j, rcm E, £, f1 | Целый Вещественный | |
α, μ, c str, P1,φ | Вещественный Символьный |
2. Записать на языке С++ числовые константы
а) целые;
б) вещественные (в форме десятичных чисел и чисел с порядком).
Вариант | Математическая запись |
а)377; -15.103; 25,4.103 б) -0,572.106; 6.28; 5886; 0,0695.102 | |
а)12; 7,5.103; -0,05.102 б) -0,084.10-2; 7,12; -52; 0,0085 | |
а)15; -9,4.103; 99,0 б)-5,14; 27,06.10-6; ; 0,008.102 | |
а) 276; 9,275.103; -02 б) -0,56.10б; -0,07425; 6; -0,873 | |
а) 3; 52.10°; -1,0.103 б) ; 631,5.102; -8,25; 92,1.104 | |
а)-16; 95,72.102; -576 б)-2,75; 81,2.10-6; -15,0.103; 0,033.10-3 | |
а) 5; -91,0.103; 14,5.102 б) 3,48; 1,5.102; -912.10-5; 0,0385 | |
а) 8; 7,2.104; -12.102 6)54; 17,8; 2,041.10-3; 513.103 |
3. Записать на языке С/С++ арифметические выражения
Вариант | Математическая запись |
4. Записать в виде алгебраической формулы