Напишите программу на языке Python, которая выводит фразу «в лесу найдено k грибов», в зависимости от значения

  • 48
Напишите программу на языке Python, которая выводит фразу «в лесу найдено k грибов», в зависимости от значения переменной k. (количество грибов может быть любым целым положительным числом: 1, 3, 34, 127 и т.д. окончание фразы определяется значением последней цифры.).
Magicheskaya_Babochka
3
Конечно! Вот решение задачи:

python
def output_grib(k):
last_digit = k % 10
if 10 < k < 20:
ending = "грибов"
elif last_digit == 1:
ending = "гриб"
elif last_digit in [2, 3, 4]:
ending = "гриба"
else:
ending = "грибов"

print(f"В лесу найдено {k} {ending}.")

# Примеры вывода
output_grib(1) # В лесу найдено 1 гриб.
output_grib(3) # В лесу найдено 3 гриба.
output_grib(34) # В лесу найдено 34 гриба.
output_grib(127) # В лесу найдено 127 грибов.


В данном примере используется функция `output_grib`, которая принимает значение переменной `k`. Внутри функции мы находим последнюю цифру числа, используя операцию деления по модулю (`% 10`). Затем мы проверяем условия, чтобы определить правильное окончание фразы. Если значение `k` находится в диапазоне от 10 до 20, или последняя цифра равна 1, то окончание будет "гриб". Если последняя цифра равна 2, 3 или 4, то окончание будет "гриба". Во всех остальных случаях окончание будет "грибов". Затем мы выводим фразу с использованием f-строки, чтобы вставить значение `k` и правильное окончание в предложение.

Если у вас есть еще вопросы, не стесняйтесь задавать.