TP2 Dix problèmes du Projet Euler

Transcription

TP2 Dix problèmes du Projet Euler
TP no 2
ESIEE IGI-3005
2016-2017
Quelques problèmes du projet Euler
Le projet Euler ( Project Euler, http://projecteuler.net) est un ensemble de
problèmes mathématico-informatiques, demandant des connaissances en mathématiques et en programmation pour être résolus.
Chacun de ces problèmes peut être programmé en Java, C ou Python (ou en tout
autre langage, et parfois même au papier-crayon), et, d’après les concepteurs du
projet, chaque problème, s’il est correctement analysé, pourra être résolu par un
programme s’exécutant en moins d’une minute même en utilisant un langage lent
sur une machine ancienne.
En vous inscrivant sur le site, vous pourrez soumettre une réponse à chaque problème (un nombre, une chaîne de caractères) et, si votre réponse est correcte, vous
pourrez accéder à un fil de discussion (solutions, commentaires) correspondant à
ce problème, ce qui vous donnera d’autres éléments de réflexion.
Le site est très correct (votre inscription ne vous amènera pas de propositions
d’achats, de spams, etc.). Un classement par niveau (un niveau tous les 25 problèmes résolus) vous permettra de juger votre progression et des récompenses vous
seront accordées lorsque certains problèmes seront résolus.
Voici les énoncés traduits en français des dix premiers problèmes du Project Euler
. Prenez en connaissance, choisissez en quatre (un par demi-heure) et résolvez-les.
Ne m’envoyez vos programmes que si vous les avez écrit vous-même et
si vous voulez avoir un avis ou un déboguage.
Note : certains calculs ou résultats dépassent la capacité des entiers standard
(C ou Java). Documentez-vous et utilisez le type long long (en C) ou la classe
BigInteger (en Java).
Exercice 1. Multiples de 3 ou de 5
Si l’on écrit tous les entiers naturels positifs inférieurs à 10 et multiples de 3 ou de 5, on
obtient 3, 5, 6 et 9. La somme de ces multiples vaut 23.
Quelle est la somme de tous les nombres inférieurs à 1 000 qui sont multiples de 3 ou de 5 ?
–1/3–
TP no 2
ESIEE IGI-3005
2016-2017
Exercice 2. Nombres de Fibonacci pairs
Chaque nouveau terme de la suite de Fibonacci s’obtient en additionnant les deux derniers
termes de la suite.
En partant de 1 et 2, les termes de valeur inférieure à 100 sont :
1, 2, 3, 5, 8, 13, 21, 34, 55, 89
La somme des termes pairs de la suite de Fibonacci de valeur inférieure à 100 vaut 44.
Combien vaut la somme des termes pairs de la suite de Fibonacci de valeur inférieure à
quatre millions ?
Exercice 3. Plus grand facteur premier
Les facteurs premiers de 13 195 sont 5, 7, 13 and 29.
Quel est le plus grand facteur premier de 600 851 475 143 ?
Exercice 4. Plus grand produit palindrome
Un nombre palindrome reste identique si on le lit de gauche à droite ou de droite à gauche.
Le plus grand nombre palindrome produit de deux nombres à deux chiffres est 9 009 = 91 × 99.
Quel est le plus grand nombre palindrome produit de deux nombres à trois chiffres ?
Exercice 5. Plus petit multiple
2 520 est le plus petit entier divisible par chaque nombre de 1 à 10.
Quel est le le plus petit entier divisible par tous les nombres de 1 à 20 ?
Exercice 6. Différence entre le carré de la somme et la somme des carrés
La somme des carrés des dix premiers entiers naturels positifs vaut
12 + 22 + . . . + 102 = 385
Le carré de la somme des dix premiers entiers naturels positifs vaut
(1 + 2 + . . . + 10)2 = 552 = 3 025
La différence entre le carré de la somme des dix premiers entiers naturels positifs et la somme
de leurs carrés vaut 3 025 − 385 = 2 640.
Quelle est la différence entre le carré de la somme des cent premiers entiers naturels positifs
et la somme de leurs carrés ?
Exercice 7. 10 001e nombre premier
En écrivant les six premiers nombres premiers : 2, 3, 5, 7, 11 et 13, on peut constater que le
6e nombre premier est 13.
Quel est le 10 001e nombre premier ?
–2/3–
ESIEE IGI-3005
TP no 2
2016-2017
Exercice 8. Plus grand produit dans une suite de chiffres
Quel est le plus grand produit de cinq chiffres consécutifs dans ce nombre de mille chiffres ?
73167176531330624919225119674426574742355349194934
96983520312774506326239578318016984801869478851843
85861560789112949495459501737958331952853208805511
12540698747158523863050715693290963295227443043557
66896648950445244523161731856403098711121722383113
62229893423380308135336276614282806444486645238749
30358907296290491560440772390713810515859307960866
70172427121883998797908792274921901699720888093776
65727333001053367881220235421809751254540594752243
52584907711670556013604839586446706324415722155397
53697817977846174064955149290862569321978468622482
83972241375657056057490261407972968652414535100474
82166370484403199890008895243450658541227588666881
16427171479924442928230863465674813919123162824586
17866458359124566529476545682848912883142607690042
24219022671055626321111109370544217506941658960408
07198403850962455444362981230987879927244284909188
84580156166097919133875499200524063689912560717606
05886116467109405077541002256983155200055935729725
71636269561882670428252483600823257530420752963450
Exercice 9. Triplet pythagoricien de somme égale à 1 000
Un triplet pythagoricien est un ensemble de trois entiers naturels a < b < c tels que
a2 + b2 = c2
Par exemple, 32 + 42 = 9 + 16 = 25 = 52 .
Un seul triplet pythagoricien vérifie a + b + c = 1 000. Que vaut le produit abc ?
Exercice 10. Somme de nombres premiers
La somme des nombres premiers inférieurs à 10 vaut 2 + 3 + 5 + 7 = 17.
Quelle est la somme de tous les nombres premiers inférieurs à deux millions ?
–3/3–