Bonjour à tous, je me présente, je suis en première S.
Durant l'été 2013, j'ai créé un algorithme plutôt simple (pour un élève qui travaille aussi peu que moi d'ordinaire...).
Cet algorithme sert à trouver un nombre à la fois rond (multiple de 10) carré (un carré parfait bien sûr !) et triangulaire (résultat de la somme : 1+2+3+...+n ou, autrement dit; de type (n(n+1))/2).
Je vous propose de ce nombre, grâce à l'informatique.
Je l'ai créé sur python, mais des logiciels comme algobox marche aussi.
Vous avez trouvé ? Voici la solution :
Le nombre est : 48 024 900
C'est le carré de 6930
c'est (9800 x 9801)/2
Je vous donnerais les codes de l'agorithme si vous le shouaitez !
A plus tard.
Bonjour,
"ce nombre" ?? il y en a une infinité...
tu as effectivement trouvé le plus petit
le suivant est 73804512832419600
le suivant a 29 chiffres
etc
je m'incline devant le logiciel à précision illimitée
mon algo en Javascript (= Algobox) s'arrête à :
10650001844790² = (15061377048200 × 15061377048201)/2
mais la valeur de 10650001844790² il ne sait pas la calculer en valeur exacte
Le suivant est déja entaché d'erreurs d'affichage
le programme ne travaille pas en cherchant les valeurs mais en calculant directement les bonnes.
plutôt qu'un concours de celui qui sortira le plus grand nombre, l'intérêt de ce problème est dans l'analyse mathématique (récurrences, modulos, équation de Pell-Fermat) qui permet de les obtenir directement par une formule.
je n'ai quasiment rien fait ...
j'ai pique la formule ici
j'ai ensuite affiche les nombres divisibles par 100.
Donc sur Xcas:
N:=(1/32)*((3+2*sqrt(2))^k-(3-2*sqrt(2))^k)^2;
simplifier(seq([k,N],k,6,54,6));
rien n'oblige à s'arreter à 54 mais quel interet ?
vous pourriez peut-etre donner vos algos.
@Jhabitesurterre
c'est une question que tu t'es posee ou un exercice qu'on t'a donne ?
En tout cas bravo pour ces vacances studieuses !
Pour ma part je suis parti de la mise en équation suivante :
on sait (facile) que pour tout nombre triangulaire 8Tn + 1 est un carré
on en déduit que le nombre triangulaire qui doit être un carré satisfait à l'équation 8a² + 1 = b²
ce qui s'écrit b² - 8a² = 1
c'est une équation de Pell dont la solution triviale est b0 = 1, a0 = 0 et la solution fondamentale est b1 = 3, a1 = 1
et toutes les solutions sont alors obtenues par
bn+1 = 3bn + 8an, an+1 = bn + 3an
(je passe sur la théorie des équations de Pell, c'est pas au programme)
à partir de ça on en déduit une autre formule de récurrence qui donne les seuls qui nous intéressent qui sont les an :
an+2 = 6an+1 - an
c'est cette relation qui va être utilisée ici.
on veut trouver les an qui sont multiples de 10
donc on écrit cette récurrence modulo 10 et on cherche s'il y a des an qui vallent 0 modulo 10
c'est vite vu, il y en a ! (en plus de a0 = 0 bien sur)
a1 = 1 mod 10
a2 = 6 mod 10
a3 = 5 mod 10
a4 = 4 mod 10
a5 = 9 mod 10
a6 = 0 mod 10
a7 = -9 mod 10
a8 = -4 mod 10
a9 = -5 mod 10
a10 = -6 mod 10
a11 = -1 mod 10
a12 = 0 mod 10
a13 = 1 mod 10
a14 = 6 mod 10
a15 = 5 mod 10
a16 = 4 mod 10
a17 = 9 mod 10
a18 = 0 mod 10
(par un algo de "deux lignes")
on conjecture que les n qui donnent an 0 mod 10 sont les n = 6k
et ensuite on le démontre (démontrer que le reste de an+12 est le même que celui de an etc ...)
il suffit d'itérer la formule 6 fois pour avoir la formule de récurrence des a6n et c'est fini
c'est exclusivement cette nouvelle formule de récurrence qu'on programme dans l'algorithme final
on obtient ainsi "directement" les a dont le carré a² est un nombre triangulaire et un multiple de 10.
la formule de récurence est obtenue en élevant à la puissance 6 la matrice
ce qui donne an+6 et bn+6 en fonction de an et bn
en partant de la solution triviale a0 = 0 (et b0 = 1) on les obtient directement.
l'algo commence par calculer (une fois pour toutes) la matrice à la puissance 6, ce qui donne d'ailleurs la première solution "en clair", et ensuite une boucle pour obtenir les solutions successives
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :