Пайтон
Дано натуральное число N. Используя операции // и %, следует перевернуть данное число
Ответы
Ответ:
n1 = int(input("Введите целое число: "))
n2 = 0
while n1 > 0:
# находим остаток - последнюю цифру
digit = n1 % 10
# делим нацело - удаляем последнюю цифру
n1 = n1 // 10
# увеличиваем разрядность второго числа
n2 = n2 * 10
# добавляем очередную цифру
n2 = n2 + digit
print('"Обратное" ему число:', n2)
Объяснение:
Алгоритм:
Найдем остаток от деления на 10 исходного числа. Тем самым получим последнюю его цифру.
Добавим эту цифру к новому числу.
Разделим нацело на 10 исходное число. Тем самым избавимся от последней цифры в нем.
Снова найдем остаток от деления на 10 того, что осталось от первого числа. Запомним эту цифру.
Умножим на 10 второе число. Тем самым увеличим его разрядность до двух и сдвинем первую цифру в разряд десятков.
Добавим к полученному второму числу запомненную ранее цифру из первого числа.
Будем повторять действия п. 3-6 пока исходное число не уменьшится до нуля, т. е. пока не избавимся от всех его разрядов.
n = int(input("Enter a number: "))
return n
def reverse(n):
total = ""
while n > 0:
a = n % 10
n//= 10
total+= str(a)
return total
def palindrome (n):
total = 0
while n > 0:
a = n % 10
n//= 10
total+= a
if total == n:
x = "This number has a palindrome"
else:
x = ""
return x
n = number()
print (reverse(n))
print (palindrome(n))