code en python

OQHERIC, maths et informatique

Continuant dans la lignée de l’article playlist aléatoire en ligne de commande,  je ressuscite un texte écris le 5 octobre 2014.
J’y décris mon cheminement mental de la lecture d’un passage dans un livre à la production d’un petit script en python permettant de faire des maths ludique.
C’est sans aucune prétention, mais cela permet de donner un exemple ou la démarche expérimentale dite OQHERIC/OHERIC… peut s’appliquer aux maths et à l’informatique. C’est la démarche que j’essaie dans le cadre de mon activité professionnelle de faire pratiquer les jeunes autour des sciences et techniques (mais pas/peu en maths et informatique).


OQHERIC et expérimentation en maths/informatique

Voici une petite production pédagogique retranscrivant sous la forme canonique « OQHERIC » une expérience élémentaire que j’ai faite.

C’est un exemple permettant d’alimenter bienveillamment comment démarcher en maths et/ou1 informatique pour aussi (re)trouver des résultats par la démarche expérimentale.

Observation 1 :

En lisant page 62 du n°18 du « le monde est mathématique » sur les nombres remarquables, j’ai été interloqué sur le passage suivant :

Le 1233

Ce nombre est intéressant car il est égal à 12²+33², c’est-à-dire la somme des carrés de ses deux premiers et deux derniers chiffres. Un autre exemple d’un nombre qui a cette propriété est 8833=88²+33².

Question 1 : Est-ce vrai ?

Hypothèse 1 : Vu la source cela ne peut être que vrai !

Expérience(s) 1 :  A l’aide d’une machine à calculer, je calcule le calcul suivant : 12*12+33*33. Pour le plaisir2 et la rigueur3 j’effectue aussi 88*88+33*33.

Résultat 1 : 1233 et 8833.

Interprétation 1 :  L’hypothèse est bonne !

Conclusion 1 et Observation 2 :

Il existe deux nombres tel que i*i+j*j=i*100+j comme évoqué dans le livre : 1233 et 8833.

Question 2 : Existe-t-il d’autres nombres de ce type ?

Hypothèse 2 : Bien sûr ! Enfin, pourquoi pas, ça serait sympa. La formulation le laisse entendre et l’auteur nous laisse chercher les autres !

Expérience 2 :

Comme on ne peut pas faire tous les calculs à la main, je code un script/programme/logiciel qui teste toutes les combinaisons possibles :

  • avec i et j compris entre 1 et 99 pour vérifier qu’il n’en manque pas,
  • mais aussi pour i et j compris entre 100 et 999, 1000 et 9999, 10000 et 99999.

Dispositif en langage python

Il teste de façon brutale, en force, toutes les combinaisons i et j et n’affiche que les couples valides.

for i in range (bornemoins,borneplus):
    for j in range (bornemoins,borneplus):
         if ((i*i+j*j)==(i*(borneplus+1)+j)):
            print (i , j)

NB : Je n’ai copié ici que la partie importante du script. Il faut y ajouter la définition des « bornesmoins » (10,100,1000,10000) et « bornesplus » (99,999,9999,99999) et quelques améliorations pour rendre l’interface sympa et commenter mon code.

Résultats 1 : Les trois premiers solutions sont soudain solvé :

12-33
88-33

10-100
990-100

558-2353
9412-2353

Pour le 4ème test je laisse tourner l’ordinateur durant la nuit. En effet il n’y a que 100.000*100.000 ou 10.000.000.000 combinaisons à tester.

Au petit matin, avant le café du petit déj, j’ai r-allumé l’écran de l’ordinateur pour contempler :

17650 38125
25840 43776
74160 43776
82350 38125
99010 9901

Interprétation 2 :

  • J’ai des résultats qui s’écrivent à l’écran, ce dispositif expérimental fonctionne génialement  ! Avec le premier test j’ai vérifié que j’ai le même nombre de résultat que le livre. Le script à priori donne tous les résultats et est valide.
  • J’ai des résultats pour les intervalles supérieurs, que je suppose complets vu l’interprétation ci-dessus.
  • Le tout dernier résultat est troublant mais valide si on le lit 09901.

Conclusion 2 : Il existe un certains nombre limité de nombre du type i*i+j*j=i+1*10^m (m= 100, 1000, 10000, 100000 selon i et j). Il y en a 11. Et je les ai calculé !4

(Observations et Questions) 3 et plus :

  • Que se passe-t-il si on met au cube au lieu du carré i*i*i+j*j*j= i*1000+j5 ?
  • Est ce valable pour des nombres plus grand encore ?
  • Peut-on les calculer sans tester toutes les combinaisons possibles ?
  • 99010 et 09901 sont anagramme
  • Il y a des répétions dans les couples . Elles vont par 2 : 33, 100, 2353…

Expérience 3 : Aller sur internet.

Résultats 3

http://www.recreomath.qc.ca/dict_narcissique_n.htm

http://mathafou.free.fr/pba/sol019b.html

1 On pourrait se contenter d’un Ou logique
2 Je suis toujours émerveillé de vérifier ce genre de résonnement trouvé dans des livres, magasines… et de trouver l’astuce pour refaire l’expérience quand elles sont plus compliquées que ce simple calcul.
3 Scientifique et non économique !
4 On a les petites fiertés que l’on veut !
5 Le résultat est assez étrange

Le pdf est téléchargeable sur github

Author: melomane-en-revolte

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.