2012-12-03 46 views
0

我看到这个公式在电子表格中的细胞之一,我期待到如何将这个excel单元格公式转换成英文单词?

=IF(F28<1189,2.2,IF(F28 <1568,0.000792049*F28+1.258,IF(F28<2491,0.004873 * F28-5.142,0.02269*F28^0.7329))) 

正在创建一个程序,我需要让我知道哪一个先编写人翻译这英文单词,它看起来很混乱,因为如果在Excel中查看一个单元格,公式出现在一行中,我不知道哪一个会先行。一个伪代码也可以帮助。

+1

http://stackoverflow.com/questions/13683087/how-to-convert-this-excel-formula-in-english-words/13683196的重复#comment18784716_13683196 – CustomX

+0

这不是重复的,如果你查看excel公式,他们是不一样的:P – sasori

+0

OMG yes对不起,你**增加了一个额外的IF语句**,现在如果你应用简单的逻辑和一点努力你会知道那是做什么的。总而言之,懒惰和DUPLICATE。 – CustomX

回答

1

如果您基于圆括号缩进,它会有所帮助:

=IF(F28<1189, 
    2.2, 
    IF(F28 <1568, 
     0.000792049*F28+1.258, 
     IF(F28<2491, 
      0.004873 * F28-5.142, 
      0.02269*F28^0.7329 
     ) 
    ) 
) 

因此,这意味着这样的:

if (F28 < 1189) { 
    return 2.2 
} else if (F28 < 1568) { 
    return 0.000792049 * F28 + 1.258 
} else if (F28 < 2491) { 
    return 0.004873 * F28 - 5.142 
} else { 
    return 0.02269 * F28^0.7329 
} 
1

IF(a, b, c)take value b if a is true or take c otherwise处理。

所以将其转换成常用的伪代码(不是纯英文):

if F28 < 1189: 
    return 2.2 
    if F28 < 1568: 
    return 0.000792049*F28+1.258 
    if F28 < 2491: 
    return 0.004873 * F28-5.142 
    return 0.02269*F28^0.7329 

所以这是一个函数f(x),或者更确切地说,F28的定义是这里的变量的名称,它由在x规模的一些范围内的几个表达式。

1

在伪代码中,该式指出

int val; 
if(F28<1189) 
    val = 2.2 
else if(F28<1568) 
    val = 0.000792049*F28+1.258 
else if(F28<2491) 
    val = 0.004873 * F28-5.142 
else 
    val =0.02269*F28^0.7329 
相关问题