あなたのコード行:
what = add(age, subtract(height, multiply(weight, divide(iq, 2))))
に変換:
age + (height - (weight * (iq / 2)))
操作の順序により、次のように簡略化できます。
age + height - weight * iq / 2
または英語で:
Age plus Height subtract Weight times half of IQ
私がそれを解決した方法は、ステートメントを少し拡張して読みやすくすることでした。
ステップ1:
add(
age, subtract(
height, multiply(
weight, divide(
iq, 2
)
)
)
)
次に、最も内側のステートメントから始めて、各ステートメントを翻訳します。
ステップ2:
add(
age, subtract(
height, multiply(
weight, (iq / 2)
)
)
)
ステップ 3:
add(
age, subtract(
height, (weight * (iq / 2))
)
)
ステップ 4:
add(
age, (height - (weight * (iq / 2)))
)
ステップ 5:
age + (height - (weight * (iq / 2)))
編集:
次の基本レベルの理解が必要です。
multiply(x, y) is equivalent to x * y
add(x, y) is equivalent to x + y
subtract(x, y) is equivalent to x - y
divide(x, y) is equivalent to x / y
次に、これらを組み合わせることができることも理解する必要があります。
multiply(x, add(y, z)) is equivalent to multiply(x, (y + z)), and x * (y + z)
(y + z)
埋め込み関数では常に内部の値が最初に計算されるため、最初に計算する必要があることを示すために括弧を付けました。