Алгоритмы

Определение четности числа с использованием рекурсии

Описание задачи

Программа принимает на вход число и рекурсивно определяет, четное это число или нечетное.

Решение задачи

  1. Принимаем число и записываем его в переменную.
  2. Передаем это число в качестве аргумента в рекурсивную функцию.
  3. Определяем базовое условие рекурсии (т.е., базу рекурсии), при котором решение задачи тривиально и не требует дальнейшего обращения функции к самой себе. В данном случае значение переменной должно быть меньше 2. Если это условие выполняется, то работа функции завершается.
  4. В противном случае мы опять рекурсивно вызываем нашу функцию, уменьшив значение переменной на 2.
  5. В конце концов работа функции завершается, и по ее результату ( True или False) мы определяем четность числа.
  6. Выводим конечный результат на экран.
  7. Конец.

Исходный код

Ниже дан исходный код для программы для рекурсивного определения четности числа. Результаты работы программы также даны ниже.

def check(n):
    if (n < 2):
        return (n % 2 == 0)
    return (check(n - 2))
n = int(input("Введите число:"))
if (check(n) == True):
      print("Число четное!")
else:
      print("Число нечетное!")

Объяснение работы программы

  1. Пользователь вводит число и оно записывается в переменную n.
  2. Число, записанное в переменную n, передается в качестве аргумента в рекурсивную функцию check(), которая в коде написана самой первой.
  3. Базой рекурсии является условие n < 2. При выполнении данного условия функция прекращает свою работу и возвращает либо True, либо False.
  4. В противном случае, функция вызывается снова с аргументом n - 2.
  5. Когда функция завершает свою работу и возвращает результат, мы на его основе определяем, четное это число или нечетное. Если функция возвращает True, то число четное, если False, то нечетное.
  6. Выводим результат на экран.

Результаты работы программы

Пример 1:
Введите число:124
Число четное!
 
Пример 2:
Введите число:567
Число нечетное!
Ilyaragalin

Recent Posts

Библиотека Pydantic: валидация данных на Python

Pydantic - это мощная библиотека проверки данных и управления настройками для Python, созданная для повышения…

2 дня ago

7 наилучших библиотек визуализации Python на 2024 год

Python предлагает набор библиотек, удовлетворяющих различные потребности в визуализации, будь то академические исследования, бизнес-аналитика или…

6 дней ago

Как преобразовать строку в байты в Python

В Python для представления данных в двоичной форме можно использовать байты. Из этой статьи вы…

2 недели ago

Что такое Werkzeug?

В этой статье рассказывается о том, что такое Werkzeug и как Flask использует его для…

3 недели ago

Как прибавить дни, месяцы и годы к дате в Python

При работе с датами часто возникает необходимость прибавлять к дате или вычитать из нее различные…

4 недели ago

Социальная аутентификация в приложении на Flask

В этом руководстве мы рассмотрим, как добавить социальную аутентификацию с помощью GitHub и Google в…

1 месяц ago