C++程序 将科学计数法转换为十进制

C++程序 将科学计数法转换为十进制

在这里,我们将看到如何使用C ++程序将科学记数法转换为十进制。

例子:

1e9 = 1000000000

1e9 = 1000000000.000000

使用pow(a,b)函数计算幂

使用的头文件: <math.h>

pow也被称为幂函数。在这里,pow(a,b)指的是a的b次方。让我们用一个例子来检查它:

2^3 = 8

pow(2,3)= 8 //与2 ^ 3相同。

例子:

//C++程序实现
//pow函数
#include <iostream>
#include <math.h>
  
using namespace std;
  
int main()
{
int n = 9;
  
cout& lt;& lt; "pow(2,9):“& lt;& lt; pow(2,9)& lt;& lt; endl;
cout& lt;& lt; "pow(10,n):“& lt;& lt; pow(10,n)& lt;& lt; endl;
  
return 0;
}  

输出

pow(2,9):512
pow(10,n): 1e +09 

在上面的代码中,这里我们计算10的n次幂,因为n是9,所以基本上我们计算了10的9次方。但是这里的输出以科学形式呈现。所以我们将其转换为十进制形式。

如何删除科学记数法?

为了在我们的代码中获得非常精确的答案,我们需要解决科学记数法的问题。科学记数法是pow返回除了十进制或整数以外的一些值的数字,原因是答案太长以至于无法以整数或浮点数显示。

C ++中去除科学记数法的方法。获取更精确的值有两种方法:

  • 使用固定值
  • 使用setprecision

1.使用固定值将科学数字转换为十进制

Fixed关键字返回到小数点后6位的值。我们不能有那6个精确数字。

例子:

//C++程序实现
//固定函数
#include <iostream>
#include <math.h>
using namespace std;
  
int main()
{
int n = 9;
cout& lt;& lt; "使用pow:“& lt;& lt; pow(10,n)& lt;& lt; endl;
cout& lt;& lt; "使用固定值:“& lt;& lt; fixed& lt;& lt; pow(10,n)& lt;& lt; endl;
  
return 0;
}  

输出

使用pow:1e + 09
使用固定:1000000000.000000 

在这里,我们可以看到我们将科学记数法转换为十进制数。但是这样做的问题是我们在小数点后会得到6个零。所以要确定需要小数点后有多少个零,我们可以使用setprecision(x)。

2. 使用setprecision()函数将科学数字转换成十进制数

使用的头文件: <iomanip>

我们可以使用setprecision()设置小数点后的数字位数。

例子:

//C++程序实现
//setprecision()用于
//获得精确值
#include <iomanip>
#include <iostream>
#include <math.h>
using namespace std;
  
int main()
{
int n = 9;
cout& lt;& lt; pow(10,n)& lt;& lt; endl;
    
cout& lt;& lt; fixed& lt;& lt; pow(10,n)& lt;& lt; endl;
cout& lt;& lt; fixed& lt;& lt; setprecision(4)& lt;& lt; pow(10,n)& lt;& lt; endl;
cout& lt;& lt; fixed& lt;& lt; setprecision(3)& lt;& lt; pow(10,n)& lt;& lt; endl;
cout& lt;& lt; fixed& lt;& lt; setprecision(1)& lt;& lt; pow(10,n)& lt;& lt; endl;
  
return 0;
}  

输出

1e+09
1000000000.000000
1000000000.0000
1000000000.000
1000000000.0

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 示例