以下の値を提供
- 開始値 = 1
- 最終値 = 20
- 間隔 = 5
数字の 6 が与えられました。数字の 6 が当てはまる数字の範囲を見つけなければなりません。答えは 6 から 10 です。
指定された数値が終了値より大きい場合は、同じ数値を返します。
数値の範囲を生成できる式はありますか?
アップデート
以下の解決策を試しましたが、範囲間隔を変更するとうまくいきません。
$end_value = $start_value + $range_interval;
// we blindly return the last term if value is greater than max value
if ($input_num > $end_value) {
return '>' . $end_value;
}
// we also find if its a first value
if ($input_num <= $end_value && $value >= $start_value) {
return $start_value . '-' . $end_value;
}
// logic to find the range for a given integer
$dived_value = $input_num/$end_value;
// round the value to get the exact match
$rounded_value = ceil($dived_value);
$upper_bound_range = $rounded_value*$end_value;
$lower_bound_range = $upper_bound_range - $end_value;
return $lower_bound_range . '-'. $upper_bound_range;