Files
Python-2018/Décomposition Ultime.py
2019-01-20 00:55:05 +01:00

51 lines
2.0 KiB
Python

from math import sqrt
import sys
Nombre = int(input("Nombre = ")) #Nombre à tester
Début = "Vrai"
Puissance = 0
AncienDiviseur = 0
if Nombre <= 1: #J'ai forcé...
print("Le nombre entré est invalide")
else:
for Diviseur in range(2,4): #Initialisation pour 2 et 3 (le 4 c'est à cause de leur langage...)
Puissance = 0
while Nombre%Diviseur == 0: #Bonne chance pour comprendre... sans explication=mission impossible
Puissance = Puissance + 1
if AncienDiviseur != Diviseur:
if Début == "Vrai":
Début = "Faux"
else:
print('*',end="")
print(Diviseur,end="")
else:
if Puissance == 2:
print('^',end="")
Nombre = Nombre/Diviseur
AncienDiviseur = Diviseur
if Puissance >= 2:
print(Puissance,end="")
Diviseur = 5
while Nombre != 1: #Tant qu'il existe des diviseurs ...
Puissance = 0
while Nombre%Diviseur != 0: #Tant que les diviseurs ne sont pas valides ...
Diviseur = Diviseur+2 #Remarque: j'ai eu la flemme des 6k-1 et 6k+1 => prochaine mise à jour
while Nombre%Diviseur == 0: #Bonne chance pour comprendre... sans explication=mission impossible
Puissance = Puissance + 1
if AncienDiviseur != Diviseur:
if Début == "Vrai":
Début = "Faux"
else:
print('*',end="")
print(Diviseur,end="")
else:
if Puissance == 2:
print('^',end="")
Nombre = Nombre/Diviseur
AncienDiviseur = Diviseur
if Puissance >= 2:
print(Puissance,end="") #60 lignes de plaisir!