Давайте решим обе задачи по порядку.
Задача 25
Напишем программу на Python, которая будет принимать последовательность целых чисел, заканчивающуюся нулём, и проверять, чередуются ли знаки чисел (+ и -).
def check_alternating_signs():
previous_sign = None
while True:
number = int(input("Введите целое число (для окончания введите 0): "))
if number == 0:
break
current_sign = '+' if number > 0 else '-' if number < 0 else None
if previous_sign is not None and previous_sign == current_sign:
print("Знаки элементов не чередуются.")
return
if current_sign is not None:
previous_sign = current_sign
print("Знаки элементов чередуются.")
check_alternating_signs()
Задача 23
Теперь создадим программу, которая считает количество чётных положительных чисел в введённой последовательности, также заканчивающейся нулём.
def count_even_positive_numbers():
count = 0
while True:
number = int(input("Введите целое число (для окончания введите 0): "))
if number == 0:
break
if number > 0 and number % 2 == 0:
count += 1
print("Количество чётных положительных чисел:", count)
count_even_positive_numbers()
Объяснение кода:
- Оба кода используют бесконечный цикл
while True, который будет запрашивать ввод чисел, пока не будет введено число 0. - В первой задаче мы проверяем знаки введённых чисел. Если следующий элемент имеет тот же знак, что и предыдущий, программа сообщает, что знаки не чередуются.
- Во второй задаче мы просто увеличиваем счётчик на 1, если введённое число положительное и чётное.
Если у вас есть дополнительные вопросы или нужно разобрать код подробнее, не стесняйтесь спрашивать!
