Objective-c对负面的力量

时间:2015-12-19 23:44:05

标签: objective-c exponent

编写一个评估表达式的程序

3.31 × 10^(-8) + 2.01 × 10^(-7) ÷ 7.16 × 10^(-6) + 2.01 × 10^(-8)

答案

float result;

result = (3.31 * 10.0e + 2.01 * 10.0e-8) / (7.16 * 10.0e-6 + 2.01 * 10.0e-8);

NSLog(@"%e",result);

这是我找到的答案,但请解释指数部分以及为什么我需要 'e' 还有其他任何方式来做负数的力量。我尝试过其他方式,但它没有工作

2 个答案:

答案 0 :(得分:1)

使用double,而不是float。 float只能为您提供小于8位数的精度。除非你能解释为什么要使用float,否则请使用double。

传统的以“科学格式”编写数字的传统方式,自1970年左右开始在C中编写,但在FORTRAN中更早,在第一个数字中为3.31E-8,第二个为2.01E-7,依此类推。

所以:

double result = 3.31E-8 + 2.01E-7 / 7.16E-6 + 2.01E-8;

你写的括号错了。或者你原来的公式错了,不能说哪一个。

答案 1 :(得分:0)

答案必须

  

result =(3.31e-8 + 2.01e-7)/(7.16e-6 + 2.01e-8);

您可以使用此stack exchange link来更好地理解。 为了使用更少的字符,而不是10^(-8)或其他任何程序员应该写10.0e-8

这是解决问题的最佳方法。