Предмет: Информатика, автор: Mrkrutoy100

Язык Python3

Разложение на простые
Требуется разложить целое число N на простые множители с учётом их степени и вывести результат в порядке возрастания множителей.

Входные данные

Программе дано число N(2≤N≤109).

Выходные данные

Вывести разложение N на простые множители. Возведение в степень обозначайте значком ^.

Примеры


Ввод:

2

Вывод:

2

Ввод:

1008

Вывод:

2^4*3^2*7


Помогите пожалуйста!!!

Язык Python3

Ответы

Автор ответа: timkafey
2

power = 0

n = int(input())

copy = n

i = 2

flag = False

while copy != 1:

  while copy % i != 0: i += 1

  power = 0

  while copy % i == 0:

     copy //= i

     power += 1

  if flag: print('*', end = '')

  else: flag = True

  if power > 1: print(str(i) + '^' + str(power), end = '')

  else: print(i, end = '')

  i += 1


Mrkrutoy100: Загрузи ответ в текством документе, пожалуйста. Я попытался самостоятельно поставить пробелы-не получилось((
timkafey: ок
timkafey: прости уже изменить не могу
timkafey: там где 2 перед строкой выдели эти пробелы и нажми tab
timkafey: где 5 пробелов выдели пробелы и 2 раза нажми tab
Похожие вопросы
Предмет: Другие предметы, автор: kartycov
Предмет: География, автор: badpigges02