Как изменить код в 9 уроке Яндекс.Практикума (Python), чтобы Анфиса грамотно называла количество новых сообщений, когда они меньше 100? Используйте логический оператор "или" (or) и условное ветвление с помощью "elif". Например: "У вас 1 новое сообщение", "У вас 35 новых сообщений", "У вас 24 новых сообщения". Корректное склонение определяется последней цифрой числа. Удобнее всего получить эту цифру, вычислив остаток от деления числа на 10. В коде для этого задания используется оператор модуля %, например: a = 17 # англ. remainder, "остаток" remainder = a % 10 # остаток от деления числа `a`
Жемчуг
Конечно, вот пример кода, который вы можете использовать для задачи:
Давайте разберем этот код по шагам:
1. Мы определяем функцию `сообщения`, которая принимает один аргумент `количество`, указывающий на количество новых сообщений.
2. Внутри функции мы вычисляем остаток от деления `количество` на 10 с помощью оператора `%`.
3. Затем мы используем условное ветвление `if-elif-else`, чтобы определить правильное склонение для вывода сообщения в зависимости от значения остатка и значения `количество`.
4. В первом условии мы проверяем, равен ли остаток 1 и `количество` не равно 11. Если это выполняется, то выводим сообщение в формате "У вас [количество] новое сообщение".
5. Во втором условии мы проверяем, принадлежит ли остаток к списку [2, 3, 4] и `количество` не находится в диапазоне от 10 до 20 (исключая числа от 10 до 19). Если это выполняется, то выводим сообщение в формате "У вас [количество] новых сообщения".
6. Если ни одно из условий не выполняется, то мы выводим сообщение в формате "У вас [количество] новых сообщений".
7. В последней строке кода мы вызываем функцию `сообщения` с заданным значением `количество_сообщений` равным 35. Это можно изменить на любое другое число, чтобы проверить работу кода.
Таким образом, при запуске этого кода Анфиса будет грамотно называть количество новых сообщений в зависимости от их числа.
python
# Определение функции, которая будет выводить количество новых сообщений
def сообщения(количество):
остаток = количество % 10
if остаток == 1 and количество != 11:
print("У вас", количество, "новое сообщение")
elif остаток in [2, 3, 4] and not 10 < количество < 20:
print("У вас", количество, "новых сообщения")
else:
print("У вас", количество, "новых сообщений")
# Пример вызова функции
количество_сообщений = 35
сообщения(количество_сообщений)
Давайте разберем этот код по шагам:
1. Мы определяем функцию `сообщения`, которая принимает один аргумент `количество`, указывающий на количество новых сообщений.
2. Внутри функции мы вычисляем остаток от деления `количество` на 10 с помощью оператора `%`.
3. Затем мы используем условное ветвление `if-elif-else`, чтобы определить правильное склонение для вывода сообщения в зависимости от значения остатка и значения `количество`.
4. В первом условии мы проверяем, равен ли остаток 1 и `количество` не равно 11. Если это выполняется, то выводим сообщение в формате "У вас [количество] новое сообщение".
5. Во втором условии мы проверяем, принадлежит ли остаток к списку [2, 3, 4] и `количество` не находится в диапазоне от 10 до 20 (исключая числа от 10 до 19). Если это выполняется, то выводим сообщение в формате "У вас [количество] новых сообщения".
6. Если ни одно из условий не выполняется, то мы выводим сообщение в формате "У вас [количество] новых сообщений".
7. В последней строке кода мы вызываем функцию `сообщения` с заданным значением `количество_сообщений` равным 35. Это можно изменить на любое другое число, чтобы проверить работу кода.
Таким образом, при запуске этого кода Анфиса будет грамотно называть количество новых сообщений в зависимости от их числа.
Знаешь ответ?