条件やループなしでこの問題を解決するのに助けが必要です:
、、およびのgetInRange3 つの値 (すべて数値であると想定することができます) を取る関数を記述します。が 2 つの境界の間にある場合は、変更せずにそのまま返します。が下限より小さい場合は下限を返し、上限より大きい場合は上限を返します。xbound1bound2bound1bound2xxx
例えば:
getInRange(1, 3, 5)3 を返します (1 は範囲 [3,5] の左側にあるため、下限)getInRange(4, 3, 5)4 を返します (4 は範囲 [3,5] にあるため、元の値)getInRange(6, 3, 5)5 を返します (6 は範囲 [3,5] の右側にあるため、上限)getInRange(6, 5, 3)また、5 を返します (6 は範囲 [3,5] の右側にあるため、上限)