科学计数法 scientific notation
科学计数法,是将一个数分为两部分来表示的方法。
例如 54300 = 5.43E4。
这里5.43称为有效数字,有效数字小数点左边有且只有1位数字。
4则表示10的指数,E在这里表示计算机中的写法,因为不便写10的4次方。
当一个数非常大或者非常小时,使用科学计数法是非常方便的。
把一个数转化为科学计数法时,如何处理这个数尾部的0, 比如123.000。原则上保留这些尾部的0,因为这些尾部的0可能表示测量的精度, 123.000 = 1.23000E2。
圆周率可以表示为3.14159, 也可以表示为3.1416,如果写成科学计数法的形式,那么:
3.14159 = 3.14159E0
3.1416 = 3.1416E0
可见,采用科学计数法时,有效数字越多,精度越高。
下面的代码示例如何用科学计数法输出数据:
include <iostream>
include <iomanip> // 必须包含iomanip头文件,输出格式控制
int main {
double number = 123456789.123456;
// 设置输出为科学计数法
std::cout << std::scientific << number << std::endl;
// 设置输出为科学计数法,并且指定小数点后的有效数字为4位
std::cout << std::setprecision << std::scientific << number << std::endl;
return 0;
}
在VS IDE上运行,输出为:
1.234568e+08
1.2346e+08