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

PYTHON TD N°6

Énoncé: soit nn dans NN∗.
Écrire une fonction calculant (k=1nk)2k=1nk2(∑k=1nk)2−∑k=1nk2.

Remarque: l’énoncé original du Project Euler se limite à n=100n=100.
Le résultat est alors 2516415025164150.

 

  1. Première solutionBien sûr, ça n’est pas très intéressant
    car (k=1nk)2=n2(n+1)24(∑k=1nk)2=n2(n+1)24 et k=1nk2=n(n+1)(2n+1)6∑k=1nk2=n(n+1)(2n+1)6.

    On doit calculer S(n)=n2(n+1)24n(n+1)(2n+1)6=112(n1)n(n+1)(3n+2)S(n)=n2(n+1)24−n(n+1)(2n+1)6=112(n−1)n(n+1)(3n+2).

  2. Deuxième solutionAdmettons qu’on ne veuille pas utiliser les formules donnant (k=1nk)2(∑k=1nk)2 et k=1nk2∑k=1nk2.
    Si on sait quand même que k=1nk3=(k=1nk)2∑k=1nk3=(∑k=1nk)2, alors S(n)=k=1nk2(k1)S(n)=∑k=1nk2(k−1).

  3. Troisième solutionIci, on calcule les deux sommes k=1nk∑k=1nk et k=1nk2∑k=1nk2 avec l’instruction sum, appliquée à l’intervalle r=[1,N[r=[1,N[.

    Voici une toute petite variante, en mappant une lambda fonction pour éviter l’utilisation du fordans l’indexation:

À 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°5

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

Compilation Python | Création de site internet

PYTHON TD N°4

Un entier naturel (écrit en base 1010) est un palindrome s’il se lit à l’identique ...