Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста с задачей на питоне простой код нужно.

Лиза Косачева Косачева Ученик (176), на голосовании 4 недели назад
Питон Дано натуральное число л (n <= 9999) . Выяснить, явля ется ли оно палиндромом («перевертышем с учетом четы рех цифр, как, например, числа 7777, 8338, 0330 и т. п. (па- линдромом называется число, десятичная запись которого читается одинаково слева направо и справа налево).
Голосование за лучший ответ
Андрей Пищур Мыслитель (5384) 1 месяц назад
А спинку тебе вареньем крыжовниковым не намазать?
Лиза Косачева КосачеваУченик (176) 1 месяц назад
Дывай ^^
Андрей Пищур Мыслитель (5384) Лиза Косачева Косачева, Даю. Чуешь старание?
Лев Перфилов Просветленный (33991) 1 месяц назад
 n = input()
if n[::-1] == n:
print("YES")
else:
print("NO")
Алекс ГМастер (1574) 1 месяц назад
А если будет n = 2232? Проканает?
Лев Перфилов Просветленный (33991) Алекс Г, А это и не палиндром.
Алекс Г Мастер (1574) 1 месяц назад
Через if левую и правую сторону сравнивая
Типа if list[0]==lust[-1] or и тд
Аглая Шниц Искусственный Интеллект (147083) 1 месяц назад
вот поэтому питон плохо подходит для изучения программирования.

в условии сказано "дано число". число -- это НЕ строка, поэтому применять инвертирование списка при проверке на палиндром можно лишь после преобразования типов.

если оставаться исключительно в рамках целочисленной арифметики, то должно быть что-то такое:
 def is_palindrome(N : int) -> bool :

# проверка, что входные данные удовлетворяют условию задачи
assert isinstance(N, int), "это не число"
assert 0 < N < 10000, "некорректные условия"

# создание списка цифр
digits = []
for _ in range(4) : digits += [N % 10]; N //= 10

# проверка на палиндром
return digits[::-1] == digits



N = 4334
print (is_palindrome(N))
Похожие вопросы