1.e0在以下代码中的含义
product *=
((1.e0-pow((double)2,i-32))*(1.e0-pow((double)2,i-32)))/(1.e0-pow((double)2,i-r));
这是c ++代码,以及如何在c#
中编写1.e0答案 0 :(得分:1)
假设pow
正在上台,C#代码将
product *= (1.0 - Math.Pow(2, i - 32)) *
(1.0 - Math.Pow(2, i - 32)) /
(1.0 - Math.Pow(2, i - r));
正如您所看到的,1.e0
只是1.0
- double
代表1
答案 1 :(得分:1)
<number>e<power> = <number> * 10^<power>
权力是十的力量。基本上e
之后的数字会告诉你,如果它是正数,你必须追加多少个零。负数使数字向右移动一位数。
实施例
1.2e-3 = 1.2 * 10^-3 = 1.2 * 0.001 = 0.0012
1.2e-2 = 1.2 * 10^-2 = 1.2 * 0.01 = 0.012
1.2e-1 = 1.2 * 10^-1 = 1.2 * 0.1 = 0.12
1.2e0 = 1.2 * 10^0 = 1.2 * 1 = 1.2
1.2e1 = 1.2 * 10^1 = 1.2 * 10 = 12
1.2e2 = 1.2 * 10^2 = 1.2 * 100 = 120
1.2e3 = 1.2 * 10^3 = 1.2 * 1000 = 1200
您可以在计算器上看到这种表示法。当结果太大而不适合显示时,计算器会自动切换到指数表示法。
在C#中你会写下这样的公式:
product *= (1 - Math.Pow(2, i - 32)) * (1 - Math.Pow(2, i - 32)) /
(1 - Math.Pow(2, i - r));
double
的转化会自动发生。一对括号是多余的。一个子表达式出现两次,你可以写:
double temp = 1 - Math.Pow(2, i - 32);
product *= temp * temp / (1 - Math.Pow(2, i - r));
请参阅: - Math.Pow Method (Double, Double)(msdn)