Ответы
def print_odd_numbers_in_descending_order(a, b):
"""
Виводить всі непарні числа від A до B включно, в порядку спадання.
Параметри:
a: Початкове число.
b: Кінцеве число.
"""
# Перевіряємо, чи є числа A і B цілими.
if not isinstance(a, int) or not isinstance(b, int):
raise ValueError("a і b повинні бути цілими числами.")
# Перевіряємо, чи A більше B.
if a <= b:
raise ValueError("a повинен бути більше b.")
# Ініціалізуємо змінну, яка буде зберігати поточне число.
current_number = a
# Цикл, який буде виводити всі непарні числа від A до B включно, в порядку спадання.
while current_number >= b:
# Виводимо поточне число.
print(current_number)
# Зменшуємо поточне число на 2.
current_number = current_number - (2 if current_number % 2 == 0 else 1)
if __name__ == "__main__":
# Вводимо початкове і кінцеве числа.
a = int(input("Введіть початкове число: "))
b = int(input("Введіть кінцеве число: "))
# Викликаємо функцію для виведення непарних чисел.
print_odd_numbers_in_descending_order(a, b)
```
У цьому алгоритмі ми замінили інструкцію if на умовне вираз. Умовний вираз current_number - (2 if current_number % 2 == 0 else 1) повертає поточне число, зменшене на 2, якщо поточне число парне, або поточне число, зменшене на 1, якщо поточне число непарне.
Ответ:
1 способ
a=int(input())
b=int(input())
a=a-int((a%2)==0)
while a>=b:
print(a,end=' ')
a-=2
2 способ
a=int(input())
b=int(input())
a=a-int((a%2)==0)
for i in range(a, b-1, -2):
print(i)
Объяснение:
фото
![](https://st.uroker.com/files/fd2/fd22be11131f51b12c682c61a16eec51.png)
![](https://st.uroker.com/files/283/28395e08d6dc0a0e318659720bf87ac7.png)