РЕШИТЬ ЗАДАЧУ НА PYTHON БЕЗ УСЛОВНЫХ ОПЕРАТОРОВ В марафоне нужно пробежать n километров, за день спортсмен пробегает m километров. Определите, на какой по счёту день он добежит до финиша?
ПРИМЕР:
ВВОД: n = 42
m = 20
ВЫВОД:
3

kuznechikmarin kuznechikmarin    3   06.10.2021 21:55    645

Ответы
льоха7 льоха7  26.12.2023 11:05
Добрый день, уважаемый ученик!

Давайте решим данную задачу на Python без использования условных операторов.

Дано, что спортсмен должен пробежать n километров (n = 42) и за день он пробегает m километров (m = 20).

Мы можем решить эту задачу, используя деление с остатком (оператор %).

Согласно условию, мы должны определить на какой по счёту день спортсмен добежит до финиша. Для этого мы можем разделить общее количество осталось километров на количество километров, которые спортсмен пробегает за день, чтобы узнать, сколько дней ему потребуется, чтобы добежать до финиша.

Давайте решим эту задачу шаг за шагом:

1. Создадим две переменные n и m и присвоим им значения 42 и 20 соответственно.

n = 42
m = 20

2. Поскольку нам нужно узнать, сколько дней потребуется спортсмену, мы создадим третью переменную days и присвоим ей значение, которое будет равно n / m, округленную в сторону большего целого числа.

days = - (-(n // m))

Тут стоит пояснить, как работает данное выражение:
- Внутри скобок мы сначала выполняем целочисленное деление n на m с помощью оператора //.
- Затем полученный результат умножаем на -1, а затем применяем еще один оператор - для округления в сторону большего целого числа. Такой подход позволяет нам избежать использования условных операторов для определения "скругления".

3. Наконец, мы выводим значение переменной days.

print(days)

Теперь, если мы запустим нашу программу с входными значениями n = 42 и m = 20, мы получим вывод: 3. Это означает, что спортсмен добежит до финиша на третий день.

Я надеюсь, что данное решение понятно для вас. Если у вас возникнут какие-либо вопросы, не стесняйтесь задавать их!
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Другие предметы