Как найти последнюю цифру числа в пайтоне

Обложка для статьи "Нахождение последней цифры числа в Python"

На чтение 2 мин Просмотров 2.4к. Опубликовано

Для работы с числами в Python может потребоваться получить доступ к их отдельным цифрам. Одним из часто возникающих заданий является получение последней цифры числа. Это может понадобиться, например, для решения математических задач или для форматирования вывода данных. В этой статье мы рассмотрим несколько способов получения последней цифры числа в Python.

Получение последней цифры числа путём преобразование числа в строку

Получение последней цифры числа в Python можно выполнить, преобразовав число в строку и обратившись к последнему символу этой строки. Для преобразования числа в строку в Python можно использовать функцию str(). Далее, для получения длины строки, мы можем использовать функцию len(), и после обратиться к последнему элементу строки по его индексу (длина строки — 1, так как индексация идёт с 0):

number = 123456
string_number = str(number)
last_digit = string_number[len(string_number)-1]
print(last_digit)

В этом примере мы сначала преобразуем число в строку с помощью функции str(), а затем получаем длину строки с помощью функции len(). Мы используем длину строки для получения индекса последнего символа (который является последней цифрой числа) и сохраняем его в переменной last_digit. Наконец, мы выводим последнюю цифру числа с помощью функции print().

Приведённый ваше код можно упростить, если знать, что извлечь последний символ строки можно, используя отрицательный индекс -1:

number = 123456
last_digit = str(number)[-1]
print(last_digit)

Использование арифметических операций для получения последней цифры

Для получения последней цифры числа можно использовать арифметические операции. Для этого можно использовать операцию остатка от деления %, которая возвращает остаток от деления двух чисел.

Например, чтобы получить последнюю цифру числа 123, можно выполнить следующую операцию:

123 % 10

Результатом будет число 3, которое является последней цифрой числа 123.

Такой подход является более простым и эффективным, чем преобразование числа в строку и использование индексации.

Однако, стоит учитывать, что если число отрицательное, то данный подход не сработает. В таком случае, можно использовать функцию abs() для получения модуля числа, а затем применить операцию %.

Пример:

number = -12345
last_digit = abs(number) % 10
print(last_digit) # выводит 5

( 2 оценки, среднее 3 из 5 )

Допустим есть число 16 или же число 1876(Все это int). Мне нужно получить последнюю цифру данного числа.
Разбивать на список не хочется т.к. числа могут быть очень большими

задан 21 мар 2020 в 20:47

Мага Гаджиев's user avatar

num = 123456

# очевидный вариант
digit = int(str(num)[-1])
print(digit)

#не такой очевидный вариант
digit = num % 10
print(digit)

ответ дан 21 мар 2020 в 21:07

Константин Комиссаров's user avatar

Вы можете получить остаток от деления на 10. Это как раз и будет последняя цифра.

Пример на Ваших числах

number = (16 % 10) 
print(number)  # 6

number = (1876 % 10) 
print(number)  # 6

ответ дан 22 мар 2020 в 8:23

V.March's user avatar

V.MarchV.March

2,4033 золотых знака17 серебряных знаков40 бронзовых знаков

Давайте разберем, как найти последнюю цифру числа при помощи Python. Начинающим программистам довольно часто задают подобные задачки. Как обычно, есть больше одного способа решения. Мы рассмотрим использование строк и деление по модулю.

Как найти последнюю цифру числа при помощи строк

Чтобы получить последнюю цифру заданного числа, нужно сделать следующее:

  1. Преобразовать число в строку при помощи функции str()
  2. Получить последний символ строки по индексу -1
  3. При помощи функции int() преобразовать полученный символ в целое число

В коде это выглядит так:

number = 24685

last_digit = int(str(number)[-1])
print(last_digit)


# Вывод:
# 5

Мы использовали функцию str() для преобразования целого числа в строку, чтобы можно было получить доступ к символам строки по индексу. Индексы Python отсчитываются от нуля, поэтому первый символ в строке имеет индекс 0, а последний len(my_str) - 1. Также можно использовать отрицательные индексы – тогда отсчет идет с обратной стороны (справа). Последний символ строки имеет индекс -1.

Следующим шагом является получение доступа к символу с индексом -1. Таким образом мы получаем последний символ строки. Получив этот символ, мы должны преобразовать его в целое число при помощи функции int().

Тот же подход можно использовать и для получения последних N цифр заданного числа.

number = 24685

# Получить последние 2 цифры числа
last_two = int(str(number)[-2:])
print(last_two)  # 85


# Получить последние 3 цифры числа
last_three = int(str(number)[-3:])
print(last_three)  # 685

Использование оператора деления по модулю

Чтобы получить последнюю цифру числа, можно применить оператор деления по модулю. Этот оператор возвращает остаток от деления. Если мы разделим число на 10, в остатке получим последнюю цифру числа.

number = 24685

last_digit = number % 10
print(last_digit)  # 5

Если число может оказаться отрицательным, то для получения правильного результата нужно использовать функцию abs().

number = -24685

last_digit = abs(number) % 10
print(last_digit)  # 5

Функция abs() возвращает абсолютное значение числа. Иными словами, если число положительное, то ничего не изменится, а если число отрицательное, то будет возвращено это же число без знака минус.

print(abs(-27))  # 27
print(abs(27))  # 27

Оператор деления по модулю возвращает остаток от деления первого числа на второе.

print(10 % 2)  # 0
print(10 % 4)  # 2

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

В нашем случае оператор по деления модулю % делит число на 10 и возвращает остаток от этого деления. Например, остаток от деления 12345 на 10 равен 5.

number = 12345

print(12345 - 1234 * 10)  # 5

Ниже приведено еще несколько примеров:

number = 12345


print(82342 % 10)  # 2
print(248 % 10)  # 8
print(150 % 10)  # 0

Какой подход вы выберете, зависит от личных предпочтений. Мы бы рекомендовали использовать оператор деления по модулю %, так как он довольно прост для чтения и интуитивно понятен.

Перевод статьи Borislav Hadzhiev “Get the last digit of a number in Python”.

  • Как получить последнюю цифру числа на python?
  • Какой формулой определить последнюю цифру числа в программе на языке Python?
  • Какой программой на языке Python ввести число и вывести последнюю цифру введённого числа?

На Python можно использовать выражение num % 10 для определения последней цифры числа num.

% это оператор остатка от деления, который возвращает остаток от деления левого операнда на правый операнд. Например, 7 % 3 вернет 1, так как 7 делится на 3 с остатком 1.

В данном случае, если число делить на 10, то остаток от деления будет самой последней цифрой числа.

Пример:

num = 123

last_digit = num % 10

print(last_digit) # Output: 3

В этом примере, последняя цифра числа 123 является 3.

Также можно использовать функцию str() для преобразования числа в строку, и индексацию строки для получения последнего символа:

num = 123

last_digit = str(num)[-1]

print(last_digit) # Output: ‘3’

Вы можете выбрать любой из этих методов в зависимости от ваших потребностей и предпочтений.

Оба метода возвращают последнюю цифру числа как строку или число, в зависимости от используемого метода.

система выбрала этот ответ лучшим

vdtes­t
[29.1K]

2 года назад 

Для любого числа последняя цифра это последний символ в строке записи этого числа.

Сначала число надо перевести в строку, для этого в языке Python предусмотрена функция str, а потом можно взять последний символ строки в которую переведено число.

Чтобы это сделать потребуется найти индекс последнего символа.

Индекс последнего символа строки на единицу меньше чем длина строки.

Получили выражение для нахождения последнего символа числа a:

str(a)[len(str(a))­]

Составим программу для ввода целого числа и вывода на печать последней цифры введённого числа:

a = int(input(‘Введите число: ‘))

print(f’Последняя цифра числа {a} равна {str(a)[ len( str(a) )-1]} ‘)

Пример выполнения этой программы:

Введите число:

357

Последняя цифра числа 357 равна 7

vdtes­t
[29.1K]

2 года назад 

Последняя цифра числа это последний символ в текстовой записи числа.

Сначала придётся перевести число в текстовую строку с помощью функции str, а из полученной строки взять самый последний символ ( в языке программирования Python последний символ строки имеет индекс -1)

Последний символ числа из переменной n определяется выражением:

str(n)[-1]

Составим программу для ввода десятичного числа и вывода на печать его последней цифры:

n= float(input(‘Введите десятичное число’))

print(f’ {str(n)[-1]} – последняя цифра числа {n}’)

Результат выполнения этой программы:

Введите десятичное число

1234.5

5 – последняя цифра числа 1234.5

Груст­ный Родже­р
[396K]

2 года назад 

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

Целочисленное деление возвращает целую часть частного. Деление по модулю возвращает остаток от деления. И не штука догадаться, что последняя цифра – это как раз остаток от деления числа на 10.

Поэтому последняя цифра определяется элементарно:

print (number % 10)

где “number” – число, последнюю цифру которого надо получить, а % – операция извлечение остатка от деления.

Знаете ответ?

Язык программирования Python

Мне нужно написать программу для нахождения суммы первой и последней цифр числа.

import math #Импортируем необходимую библиотеку n=int(input('Введите число ')) x = [(n//(10**i))%10 for i in range(math.ceil(math.log(n, 10))-1, -1, -1)] #отделим каждую цифру print(x) #Выводим список с цифрами

Code language: PHP (php)

Я не знаю, как взять первую и последнюю цифру из этого списка, а затем сложить их вместе.

Решение.

Найти первую и последнюю цифру числа можно несколькими способами, среди которых:

Использование string:

>>> n = 5638 >>> int(str(n)[0]) 5 >>> int(str(n)[-1]) 8

Использование math

>>> import math >>> n // (10 ** int(math.log10(n))) 5 >>> n % 10 8

Code language: JavaScript (javascript)

Добавить комментарий