Задача с десятками и сотнями тысяч
Никак не могу решить эту задачу, даже не знаю с чего начать. Условие такое:
Дано пятизначное целое число.(Через input) Напишите алгоритм, который возведёт количество десятков в степень количества единиц. Затем умножит это число на количество сотен. И делит получившееся число на разность количества десятков тысяч и количества тысяч
Решения не прошу, просто прошу направить на верный путь.
Ответы (2 шт):
Здесь можно пойти двумя путями:
- Использовать // и %
Например, чтобы получить из четырёхзначного числа трёхзначную часть, нужно его % на 1000:
result = 1234 % 1000 # Остаток от деления
print(result)
234
Если наоборот, нужен первый разряд, то используется //:
result = 4321 // 1000 # Деление нацело
print(result)
4
- Использовать индексацию строк
number = input() # Число в виде str
print("Единицы:", int(number[-1])) # Последний символ строки
print("Десятки + 1:", int(number[-2]) + 1) # Предпоследний символ строки
Ввод:
12345
Вывод:
Единицы: 5
Десятки + 1: 5
Главное, не забывать приводить символ к типу int.
Решение первым способом:
number = int(input())
units = number % 10
dozens = number % 100 // 10
hundreds = number % 1000 // 100
thousands = number % 10000 // 1000
doz_of_thous = number // 10000
print((dozens ** units) * hundreds / (doz_of_thous - thousands))
Решение вторым способом:
number = input()
units = int(number[-1])
dozens = int(number[-2])
hundreds = int(number[-3])
thousands = int(number[-4])
doz_of_thous = int(number[-5])
print((dozens ** units) * hundreds / (doz_of_thous - thousands))
Вычленить всѣ цифры сразу можно такъ:
a, b, c, d, e = map(int, input())
Остальное тривіально.