Accueil » Tutoriels » Python » PYTHON TD N°3
Compilation Python | Création de site internet
Compilation Python | Création de site internet

PYTHON TD N°3

Soit NN dans NN, avec N2N≥2.
Écrire une fonction donnant le plus grand facteur premier de NN.

Remarque: l’énoncé original du Project Euler » se limite à N=600851475143N=600851475143.
Le résultat est alors 68576857.

  1. Première solutionCette première solution en fait peut-être un peu trop, puisqu’elle forme la liste (ordonnée suivant les valeurs croissantes) de tous les diviseurs premiers pp de NN (avec répétitions éventuelles, selon la valuation de pp dans NN).

    Pour obtenir cette liste (plutôt que son dernier élément), il suffit de remplacer la dernière ligne par return(fp).

  2. Deuxième solution
  3. Troisième solutionVoici une solution récursive.
    L’idée est de chercher le plus petit diviseur dNd≥N de NN.
    Si d=Nd=N c’est que NN est premier (et il est le résultat), sinon on cherche le plus petit diviseur de N/dN/d.

  4. Quatrième solutionOn améliore la solution précédente en utilisant un deuxième argument d0d0 optionnel (par défaut égal à 22).
    En effet, quand on a trouvé le plus petit diviseur d2d≥2 de NN, et si d<Nd<N, il faut partir à la recherche du plus petit diviseur δδ de N/dN/d: mais on commence cette recherche à partir de δ=dδ=dplutôt que de recommencer à δ=2δ=2.

    Python

À propos Amine MAGDICH

Animé par l'envie d'entreprendre, je déborde de curiosité pour le numérique et les nouvelles technologies. Sans cesse à la recherche de savoir, je pousse ma capacité d'apprentissage à son maximum, afin d'obtenir des compétences globales, répondant aux enjeux de la gestion humaine et technique d'un projet multimédia.

Laisser une réponse

x

Check Also

Compilation Python | Création de site internet

PYTHON TD N°6

Énoncé: soit nn dans N∗N∗. Écrire une fonction calculant (∑k=1nk)2−∑k=1nk2(∑k=1nk)2−∑k=1nk2. Remarque: l’énoncé original du Project ...

Compilation Python | Création de site internet

PYTHON TD N°5

Énoncé: Soit NN un entier strictement positif. Quel est le plus petit entier strictement positif ...