This is a Clilstore unit. You can .
The expression means a structure composed of constants, variables, operator symbols, functions, brackets. The expression defines the procedure for calculation of the certain value. Operation applied to one operand is called unary and operation with two operands - binary.
Arithmetic operations
Binary arithmetic operations include:
+ addition
- subtraction
* multiplication
/ division
% division modulo; (this operation is similar to operation mod in Pascal - the remainder of the division). Operation % applies only to integer numbers
Unary operations include:
++ increase by one (increment);
- - decrease by one (decrement);
For example: x=x+1, x++, ++x the result of the two operations is the same.
Both operation signs can be recorded mark both before operand (prefix form) and after operand (postfix form), for example ++хorх++,––хorх––. When using postfix form, the operations ++ and - - are performed after the value of the variable was used in the expression and the prefix operation - until use.
For example: 1) x=5; y=x++; firstly, value х is assigned to variable у, after value хis increased by 1. Initial value х=5, after performance of operations y=5, x=6.
2) x=5; y=++x; result of operation x=6, y=6.
3) a=3; c=2; x=a++ * c++; result of operation a=4, c=3, x=6.
4) a=3; c=2; x=++a * ++c; result of operation a=4, c=3, x=12.
Relational operations
C uses the same set of relational operations, as in other programming languages:
< less
<= less or equal
> greater
>= greateror equal
== equal
!= not equal
The difference is in the recording of operations “equal” and “not equal”.
Therefore, the result of the relational operation is the integer number: if the relation is true –then 1, if false - then 0.
For example: the result of the relational operation in case 5>1, ‘x’==’x’ will equal 1, and in case 5!=5, ‘x’==’X’ result=0.
Logical operations
Basic logical operations in С++ language will be recorded as follows:
&& - conjunction (logic “AND”)
|| - disjunction (logic“OR”)
! - inversion (logic“NOT”)
Table 2 below shows examples of recording expressions in C ++ language using logical operations and relational operations.
Table 2. Recording of expressions
mathematical expression |
recording inС++ |
0<x<10 |
x>0 && x<10 |
y≤-1 или y≥1 |
y<=-1 || y>=1 |
x≠y |
!(x= =y) |
a=b |
a= =b |
‘a’≠’A’ |
‘a’!=’A’ |
Priority to perform logical operations and relational operations as follows:
Assignment operation
General view of the assignment operation as follows:
Name of variable = expression;
For example: x=5; D=b*b-4*a*c; a=b=0;
Assignment operation in C language is not operand, i.e. assignment as any other sign of operation can several times enter the expression.
For example: а=b=c=x+y;
Also in С++ language, assignment operation can be combined with other operations: +=, -=, /=, *=, %=
For example: The following expressions are considered as equivalent.
i+=2 and i=i+2
p/=5 and p=p/5
a*=b+c and a=a*(b+c)
x-=y andx=x-y
n%2 andn=n%2
Instead of expression х=х+2 it is preferable to use recordх+=2, since the second expression will be calculated faster.
Operation“condition”
This is the only operation that has three operands. The format of the operation:
logical operation ? expression -1: expression -2;
or
variable = logical operation? expression -1: expression -2;
This operation implements the algorithmic branch structure. The algorithm of its performance is as follows: the value of the logical expression shall be calculated the first, if it is true, then the expression is calculated - 1 and the obtained result becomes as the result of the operation. Otherwise, the value of the expression-2 is taken as the result.
For example:
x<0 ? –x: x;
max=(a<=b) ? b : a;
a>b ? 2*a: 2*b;
Functions that are calculated automatically by special modules are called standard functions. They are stored in the header file math.h
Standard functions ofС++ language are shown in Table 3.
Table 3. Standard functions ofС++ language
Mathematical function |
Record onС++ |
Argument type |
Result type |
Note |
| x | |
abs (x) |
int |
int |
absolute value of integer number |
| x | |
fabs (x) |
double |
double |
absolute value of real number |
sinx |
sin(x) |
double |
double |
х- radian |
cosx |
cos(x) |
double |
double |
х- radian |
tgx |
tan(x) |
double |
double |
х- radian |
e x |
exp(x) |
double |
double |
e = 2,718 … |
lnx |
log(x) |
double |
double |
natural logarithm, x>0 |
lg(x) |
log10(x) |
double |
double |
decimal logarithm |
sqrt(x) |
double |
double |
square root, x>=0 |
|
xy |
pow(x,y) |
double, double |
double |
x in power of y |
10p |
pow10(p) |
int |
double |
10in power of p |
arcsinx |
asin(x) |
double |
double |
х- radian |
arccosx |
acos(x) |
double |
double |
х- radian |
arctgx |
atan(x) |
double |
double |
х- radian |
sinhx |
sinh(x) |
double |
double |
hyperbolic sine,х- radian |
coshx |
cosh(x) |
double |
double |
hyperbolic cosine,х- radian |
tanhx |
tanh(x) |
double |
double |
hyperbolic tangent, х- radian |
nearest integer, not less х |
ceil(x) |
double |
double |
the result will be displayed in format double |
greatest integer, not exceeding х |
floor(x) |
double |
double |
the result will be displayed in format double |
remainder of the division of integer хonу |
fmod(x,y) |
double, double |
double |
the result will be displayed in format double |
z2=x2+y2 |
hypot(x,y) |
double, double |
double |
calculates hypotenuse of the rectangular triangle according tolegs value z2=x2+y2 |
All other functions are expressed through the standard. Examples of recording of mathematical expressions in C ++ language:
9. e sinx® exp (sin(x))
Short url: https://multidict.net/cs/6245