@Almost

Как найти ближайшее целое число для вещественного, исключая целые числа из списка?

Дано вещественное число, допустим float.
Необходимо найти ближайшее целое число, которое не будет находиться в отдельном списке.

Примеры:
1) Есть число 4.6. В отдельном списке число 5. Результат должен быть 4.
2) Есть число 4.6. В отдельном списке числа 5, 4. Результат должен быть 6.
3) Есть число 4.6. В отдельном списке числа 3, 4, 5, 6, 7. Результат должен быть 2.
  • Вопрос задан
  • 71 просмотр
Решения вопроса 1
WblCHA
@WblCHA
Округляешь число, проверяешь находится ли оно в массиве.
Если нет, число найдено.
Если да, прибавляешь/отнимаешь от числа 1 и ещё раз проверяешь находится ли оно в массиве.
Если нет, число найдено.
Если да, отнимаешь/прибавляешь к числу 2 и ещё раз проверяешь находится ли оно в массиве.
Если нет, число найдено.
Если да, прибавляешь/отнимаешь от числа 3 и ещё раз проверяешь находится ли оно в массиве.
И т.д.

Чередуешь сложение с вычитанием (начинать в зависимости от того, куда было округлено) и на каждой итерации увеличиваешь слагаемое-вычитаемое на 1.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы