如何用英语单词转换这个excel单元格公式?

时间:2012-12-03 12:52:04

标签: 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中查看一个单元格,公式出现在一行中,我不知道哪个一个人会先行..伪代码也可以帮助

3 个答案:

答案 0 :(得分: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 :(得分: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范围内的某些范围中的几个表达式组成。

答案 2 :(得分: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