实数

<前> 浮动 r = 5.0 5.0 值是一个表示为小数部分的数字(具有整数和小数部分)。在计算机科学中,这样的数字称为实数。
 
实数是具有整数部分和小数部分的数字。整数和小数部分用点分隔,而不是数学中的逗号。

即使数字的小数部分等于零,如示例中的 r 变量,编译器仍会在内存中创建一个实数变量。这一点可以说是向译者发出的一个信号,表明有必要创建一个真实的变量。 

非常大和非常小的数字都是用“浮点数”写的(以所谓的科学格式)。  
在科学格式中,数字表示为mantissa(数字的重要部分)和exponent。写入时,尾数和指数由字母 e 相互分隔(在某种程度上表示 10)。 
例如,您可以将电子的电荷值存储在变量中 
\(1,60217662 \times 10^{-19}\) Kl),写作   <前> 浮动El= 1.60217662e-19 // 对于正订单,+号可以省略
几乎所有的实数都不能完全准确地存储在计算机内存中,因为分配给它们的存储位数有限。因此,在使用实数进行计算时,与表示不准确相关的误差会累积。而且,分配的空间越少,这个错误就会越大。 C++中为了减少错误,使用了double类型,在内存中存储一​​个双精度的实数(占用内存八个字节,而float类型- 4字节)。

进入

您可以从输入流中输入几个真实变量,并以标准方式将它们写入变量: 浮动 x, y; 辛>> x>>是; 第一个数字进入 x 变量,第二个 - 进入 y



结语

显示实数时,默认显示6位小数,自动选择科学格式或定点数。
输出格式可以自定义。为此,使用了一个额外的库 iomanip - 控制输出的操纵器。
对于定点格式的输出,使用  fixed 操纵符,对于科学格式 - scientific。然后,您需要使用  setprecision() 操纵器确定小数部分的位数。 使用  setw() 操纵器,您可以设置为数字输出分配的总位置数。

 
例子
浮动 x = 1.0/6; 输出 <<固定的<<设置精度(9); //设置小数部分显示9位 输出 << setw(12) << X;
屏幕会显示 <前> _0.166666672
所有命令都可以写在一行中: <前> 输出 <<固定的<<设置精度(9)<< setw(12) << x;

实数运算。 cmath

模块 在处理实数时,我们可以使用我们已经熟悉的 math 模块,其中包含大量内置函数。 
在解决问题时,通常需要将实数四舍五入到最接近的整数值。为此有两个函数。

需要记住!
1. 显式类型转换 ( float x=1.5; int y = int(x))  - 截去实数的小数部分 (y = 1); 
2. 函数floor(x) - 返回小于或等于 x (向下舍入)的最大整数;
3. 函数ceil(x) - 返回大于或等于 x (四舍五入)的最小整数。

以下是 cmath 模块中包含的最有用的函数。 <表格边框="1" cellpadding="4"> <正文>
函数 描述
舍入
round(x)
C++11
将数字四舍五入为最接近的整数。如果数字的小数部分为 0.5,则将数字四舍五入为最接近的整数。 
trunc(x)
C++11
丢弃小数部分
地板(x) 向下舍入一个数字(“floor”),因此 floor(1.5) == 1floor(-1.5) ==  ; -2
ceil(x) 将数字向上舍入(“上限”),而 ceil(1.5) == 2ceil(-1.5) ==  ; -1
绝对值(x) 模数(绝对值)。
晶圆厂(x) 模实数
根,对数
平方(x) 平方根。用法:y = sqrt(x)
pow(x, y) 将 x 提高到 y 次方。 \(x^y\)
日志(x) 自然对数。 
exp(x) 自然对数的底数e = 2.71828...
三角函数
罪(x) 以弧度指定的角度的正弦值
余弦(x) 以弧度指定的角度的余弦值
棕褐色(x) 以弧度指定的角度的正切
asin(x) 反正弦,以弧度返回值
acos(x) 反余弦,以弧度返回值
阿坦(x) 反正切,以弧度返回值
atan2(y, x) (x, y) 点的极角(以弧度为单位)。