0

条件やループなしでこの問題を解決するのに助けが必要です:

、、およびの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] の右側にあるため、上限)
4

1 に答える 1

1

「getInRange」は単に中央値のように聞こえます。

def getInRange(x, y, z):
   return sorted([x, y, z])[1]
于 2012-12-25T04:52:17.477 に答える