Вопрос задан 25.09.2023 в 21:28. Предмет Информатика. Спрашивает Боглай Полина.

Проверка на четность. Пайтон. Задача усложняется. Ваша функция, как и раньше, должна возвращать

True если число четное, и False если число нечетное, но при этом НЕЛЬЗЯ использовать деление и функции связанные с ним. Т.е. запрещено использовать /, //, % и divmod Сложность ещё заключается и в том, чтобы найти решение, которое бы не зависело от размера числа :) Входные данные: Целое число. Выходные данные: Логический тип. Пример: is_even(2494563894038**2) == True is_even(1056897**2) == False is_even(24945638940387**3) == False
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Лаптева Александра.

Ответ:

def is_even(n):

k=[int(i) for i in str(n)]

m=k[-1]

if m == 0 or m == 2 or m == 4 or m == 6 or m == 8:

  return True

else:

  return False

print(is_even(int(input("n="))))

 

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вы можете проверить четность числа, не используя деление, остаток от деления или другие математические операции, следующим образом:

python
def is_even(n): if n & 1 == 0: return True else: return False

Этот код использует побитовую операцию "И" для проверки младшего бита числа. Если младший бит равен 0, то число четное, и функция возвращает True. В противном случае она возвращает False.

Примеры:

python
print(is_even(2494563894038**2)) # Вывод: True print(is_even(1056897**2)) # Вывод: False print(is_even(24945638940387**3)) # Вывод: False

Этот метод работает для чисел любой длины, так как он проверяет только младший бит числа, и не зависит от размера числа.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос