Powered by Blogger.

Write a program to find which one is closest no to a given no


function getClosestNumber(array $arr,$number) {
    $closestNumber = '';
    if(is_int($number)) {
        $leastdifference = 0;
        $closestNumber = '';
        foreach($arr as $key=>$value) {
            if($value == $number) {
                $closestNumber = $number;
                break;
            }
       
            $difference = abs($number - $value );
            if(empty($leastdifference) || $leastdifference > $difference) {
                $leastdifference = $difference;
                $closestNumber = $value;
            }
        }
    }
    return $closestNumber;
}

echo getClosestNumber(array(45,25,67,89, 66),18);

------------------------------------
Output -- 25

No comments