Мне лень решать, но 1) Не строгое сравнение (==) 2) OR (где ||) 3) Где форматирование? 4) Почему ты каждый раз делаешь stdout, когда можешь сложить все в одну строку, а потом ее выплюнуть?
Понял, спасибо) Ты имеешь в виду просто сразу всё в одном эхо а эти ифы заменить на тернарные операторы?
сортировку кастомную по позиции таксистов относительно позиции пассажира, первый в отсортированном массиве будет ближайшим
Как вариант) Мне просто показалось, что тут проще будет через нахождение минимума
$userPosition = rand(0, 1000); $positions = array_column($cars, 'position'); $closestPosition = array_reduce($positions, fn ($prev, $current) => abs($current - $userPosition) < abs($prev - $userPosition) ? $current : $prev); $index = array_search($closestPosition, $positions); var_dump($cars[$index]);
Обсуждают сегодня