好的,這是一個瘋狂的問題,但我一整天都在砸我的腦袋,而且一定有一個更簡單的方法來做到這一點!If語句空調
我有2個值和我想測試針對彼此這些值,但有可能是一個+或 - 它們之間10差是可接受的。
所有我一直在想的是,我將不得不寫,有很多的OR是一個巨大的聲明在那裏,即
if (red = red1) || (red == red1 + 1) || (red == red1 + 2) etc.....
請人把我從我的痛苦,告訴我有一個更簡單的方法! !
好的,這是一個瘋狂的問題,但我一整天都在砸我的腦袋,而且一定有一個更簡單的方法來做到這一點!If語句空調
我有2個值和我想測試針對彼此這些值,但有可能是一個+或 - 它們之間10差是可接受的。
所有我一直在想的是,我將不得不寫,有很多的OR是一個巨大的聲明在那裏,即
if (red = red1) || (red == red1 + 1) || (red == red1 + 2) etc.....
請人把我從我的痛苦,告訴我有一個更簡單的方法! !
簡單:假設這是整數值:
if (abs(red - red1) <= 10) {
}
相反,如果你有浮點值:
if (fabs(red - red1) <= 10.0) {
}
還有其他幾個絕對值函數可用,取決於o n值的類型。有關詳細信息,請參見this SO answer
檢查兩數之差的絕對值小於10
if (abs(red - red1) <= 10)
...
您好!謝謝 – 2012-02-17 15:54:45
從'.. red == red1 + 1 ..'的嘗試來看,他們是整數。 – aioobe 2012-02-17 15:55:37
@aioobe - 我同意,這就是爲什麼我投票給你的答案。但是這似乎也可能是由一個沒有經驗的開發者提出的,即使紅色不是整數,也可能嘗試使用「red + 1」。 – 2012-02-17 16:00:41