Je suis un nombre entier de 6 chiffres (mon premier chiffre n'est pas 0).
Je ne me termine ni par 0, ni par 1.
Mon carré se termine par les mêmes chiffres que les miens et dans l'ordre.
Quel nombre suis-je ?
S'il existe plusieurs possibilités, indiquez-les toutes.
-----
Bonne chance à tous.
bonjour,
Apres avoir fait chauffer mon ordinateur, je trouve 2 nombres verifiant les conditions requises: il s'agit de:
109376
890625
verification 109376²=11963109376
890625²=793212890625
ci joint le programme(en maple)
enigme:=proc()
> local i;
> for i from 10**5 to 999999 do
> if i**2 mod (10**6)=i then print (`i`); fi;od;
> end:
merci pour l'egnime
De tels nombres sont appelés nombres automorphes.
Il y en a deux qui possèdent 6 chiffres :
8906252 = 793 212 890 625
1093762 = 11 963 109 376
Bonjour
Il y a 2 nombres qui vérifient cette propriété :
i = 109376 ---> i² = 11963109376
i = 890625 ---> i² = 793212890625
Merci pour l'énigme
Bonjour,
Solution proposée :
Nombre de solution : 2
890625
109376
en espérant ne pas en avoir oublié
Méthode :
examen des cas, par la multiplication en ligne, des nombres se terminant soit par 5, soit par 6 (puisque 0 et 1 exclus)
Puis remontée unité->dizaine->centaine...
Merci pour l'énigme,
Philoux
Si n^2 se termine par les mêmes chiffres que n, n^2-n=n(n-1) se termine par 6 zéros, donc est divisible par 10^6. Comme n ne se termine pas par 0 ni 1, n ni n-1 ne sont divisibles par 10. Comme ils sont premiers entre eux, l'un est divisible par 5^6=15625 l'autre par 2^6=64 (puisque n a 6 chiffres, celui divisible par 5^6 est de la forme 15625k avec 6<k<64.
15625 = 9 (mod 6) ( = congruence) donc 15625k=9k (mod 64). Comme 9 et 64 sont premiers entre eux, la congruence 9k=+/-1 a une solution unique pour 0<k<64
Pour k=7, 15625k=-1 (mod 64) ; de même pour k=57, 15625k=1 (mod 64)
D'où deux solutions n-1=7*15625 donc n=109376 (n^2=11963109376)
et n=57*15625=890625 (n^2=793212890625)
ON a donc X2-X = X(X-1) multiple de 106
Comme X ne se termine ni par 1 ni par 0 , on ne peut avoir que :
1. X-1 = A1*56 et X = B1*26 avec A1 compris entre 7 et 63 et B1 compris entre 1563 et 15624
ou
2. X -1= A2*26 et X = B2*56 avec B2 compris entre 7 et 63 et A2 compris entre 1563 et 15624
1. B1*26 - A1*56 =1
donne A1=7 et B1=1709 et X=1709*64 = 109376
2. B2*56 - A2*26 =1
donne A2=13916 et B2=57 et X=57*15625 = 890625
Il y a donc deux solutions : 109376 et 890625
#!/bin/sh
nb=100000
while [ $nb -lt 1000000 ]; do
carre=$(($nb*$nb))
if [ $(($carre%1000000)) -eq $nb -a $(($nb%10)) -gt 1 ]; then
echo "${nb}^2 => $carre"
fi;
nb=$(($nb+1));
done;
====================
109376^2 => 11963109376
890625^2 => 793212890625
J'interprète l'énoncé comme "je suis les derniers chiffres du carré" et non "le carré et moi avons nos derniers chiffres en commun".
Je propose 2 solutions :
1093762 = 11963109376
8906252 = 793212890625
Nicolas
Salut,
ton enigme n est pas clair,"Mon carré se termine par les mêmes chiffres que les miens " combien de derniers chiffres 2, 3, 4, 5?
pour 2 chiffres
la condition est que les deux derniers chiffres soit 25 ou 76 et que le nombre verifie les conditions donnees dans l enonce
pour 3 chiffre
pareil mais avec les sequences 625 et 376
et ainsi de suite jusqu a 5 ou les sequences sont 09376 et 90625
voici la regle, je suis pas sur que c ce que tu attendais car ton sujet etait ambigue.
@+
Salut J-P et bonjour à tous :
Alors je trouve 2 solutions qui sont :
- 109 376 car 109376² = 11 963 109 376
- 890 625 car 890625² = 793 212 890 625
voila, j'espère ne pas avoir oublié de solutions ...
merci pour l'énigme !
romain
tout d'abord, si on appelle x ce nombre, alors on a x²-x=q*(10^6)
donc 4*(10^6)*q+1 est un carré parfait qui impair.(équation du second degré, voir delta).
donc 4*(10^6)*q+1=(2*m+1)^2 , donc q*(10^6)=m(m+1).
je suis 109376 et 890625.
car 109376^2 = 11963109376 et 890625^2 = 793212890625
voilà
Bon j'ai honte de la méthode mais je pense les résultats corrects:
109376²=11963109376
890625²=793212890625
Bonjour,
Je trouve 2 nombres :
* 290625
* 109376
Merci pour l'enigme.
Bonjour,
Je trouve 2 nombres :
* 290625
* 109376
Merci pour l'enigme.
Salut, j'ai trouvé deux solutions à ton énigme: 109376 et 890625.
1093762= 11963109376
8906252= 793212890625
Wesley
Salut a tous,
Le nombre cherche est 890625. en effet son carre est: 793212890625
On retrouve bien les 6 chiffres a la fin et ds l ordre
A tte sur l'ile
bonjour,
la seule reponse qui est valable ,ça j'en suis sur, est :
le nombre est : 109376
je n'ai trouvé que 6 pour que cela marche ;avec 5 on est fermé au rang des 1000 avec les zero.
alors poisson ou smiley ?
a plus tard.
Paulo
Bonjour,
J'ai trouvé deux entiers:
En effet, les nombres cherchés doivent se terminer par 5 ou par 6.(ni 0, ni 1).
Recherche du nombre se terminant par 5 (gag):
5*5=25 => 2
25*25=625 =>6
625*625=390625 =>0
0625*0625=390625 =>9
90625*90625=8213890625 =>8
Le nombre est donc 8 9 0 6 2 5.
bonjour
j'ai trouvé uniquement 2 réponses : 109 376 et 890 625
Bonjour,
à titre indicatif confirmant ma réponse, voici un petit programme en qbasic .
DECLARE SUB Test ()
DECLARE FUNCTION InitNb! ()
DECLARE SUB InitCar ()
DECLARE FUNCTION SeeNb$ ()
DECLARE SUB IncNb ()
DECLARE FUNCTION Encore! ()
DECLARE SUB FindCar ()
DECLARE FUNCTION SeeCar$ ()
DIM SHARED nb(6) AS INTEGER
DIM SHARED car(13) AS INTEGER
DIM e AS INTEGER
DIM SHARED t AS INTEGER: t = 1
CLS
e = InitNb
WHILE (e)
IncNb
FindCar
Test
e = Encore
WEND
END
FUNCTION Encore
SHARED nb() AS INTEGER
Encore = (nb(6) = 0)
END FUNCTION
SUB FindCar
SHARED car() AS INTEGER
SHARED nb() AS INTEGER
InitCar
DIM i AS INTEGER, j AS INTEGER, k AS INTEGER, p AS INTEGER, q AS INTEGER, r AS INTEGER, tot AS INTEGER, r2 AS INTEGER, q2 AS INTEGER
FOR i = 0 TO 5
k = i
r = 0
FOR j = 0 TO 5
p = nb(i) * nb(j) + r
r = INT(p / 10)
q = p MOD 10
tot = car(k) + q
q2 = INT(tot / 10)
r2 = tot MOD 10
car(k) = r2
r = r + q2
k = k + 1
NEXT j
car(k) = car(k) + r
NEXT i
END SUB
SUB IncNb
SHARED nb() AS INTEGER
DIM report AS INTEGER: report = 1
DIM i AS INTEGER: i = 0
WHILE (report <> 0)
nb(i) = nb(i) + report
report = INT(nb(i) / 10)
nb(i) = nb(i) MOD 10
i = i + 1
WEND
END SUB
SUB InitCar
SHARED car() AS INTEGER
DIM i AS INTEGER
FOR i = 0 TO 13: car(i) = 0: NEXT i
END SUB
FUNCTION InitNb
SHARED nb() AS INTEGER
DIM i AS INTEGER
FOR i = 0 TO 4: nb(i) = 0: NEXT i: nb(5) = 1
'nb(0) = 4:nb(1) = 2:nb(2) = 6:nb(3) = 0:nb(4) = 9:nb(5) = 8:nb(6) = 0
'nb(0) = 5:nb(1) = 7:nb(2) = 3:nb(3) = 9:nb(4) = 0:nb(5) = 1:nb(6) = 0
InitNb = -1
END FUNCTION
FUNCTION SeeCar$
SHARED car() AS INTEGER
DIM i AS INTEGER
DIM mot AS STRING
mot = ""
FOR i = 12 TO 0 STEP -1
mot = mot + CHR$(car(i) + 48)
NEXT i
SeeCar$ = mot
END FUNCTION
FUNCTION SeeNb$
SHARED nb() AS INTEGER
DIM i AS INTEGER
DIM mot AS STRING
FOR i = 5 TO 0 STEP -1
'PRINT i
mot = mot + CHR$(nb(i) + 48)
NEXT i
SeeNb$ = mot
END FUNCTION
SUB Test
SHARED t AS INTEGER
DIM equal AS INTEGER
equal = (car(0) = nb(0)) AND (car(1) = nb(1)) AND (car(2) = nb(2)) AND (car(3) = nb(3)) AND (car(4) = nb(4)) AND (car(5) = nb(5))
LOCATE 1, 10: PRINT "Nb="; SeeNb$
'LOCATE t, 30: PRINT "car="; SeeCar$
IF equal THEN
LOCATE t, 30: PRINT "bon car="; SeeCar$
t = t + 1
END IF
END SUB
tout comme Teebo, j'ai honte de la méthode
mais quand on ne sait pas programmer, tous les stratagèmes sont bons...
Tu sais borneo, ce problème était accessible sans avoir recours à la programmation ou à un logiciel quelconque.
Un papier, un crayon et un peu de réflexion pouvaient suffire.
Personnellemnt, je trouve ça même mieux d'y arriver sans programme!
Moi aussi...
Je trouve que c'est beaucoup plus gratifiant, d'autant plus qu'ici avoir quelques notions sur les congruences et connaitre ses tables de multiplication suffisait
moi c'est pas que je trouve ça mieux d'y arriver sans programme mais comme je sais pas programmer j'ai pas le choix
Mieux ou pire ?
Le resultat est le même pour tout le monde, chacun applique les outils dont il dispose.
Même si ça avez été au pif-o-métre, c'est vraiment important ?
asevere, je pense seulement que demander à un programme de chercher la réponse pour toi, c'est ne pas faire preuve de beaucoup de réflexion et choisir la facilité.
Bah, je suis pas trop d'accord là.
Si je suis capable d'ecrire ce qu'il faut pour que la machine le calcule, je vais pas m'en passer
J'ai pas simplement rentré ma question dans la machine et attendu qu'elle me ponde la réponse.
je lui ai donné des données et des opertations à leur appliquer.
Dans ce cas précis, qu'on me dise que ça fait un peut brute-force, d'accord, c'en est un. Mais j'ai pas simplement "demandé à un programme"puisque c'est moi qui l'ai tapé
posté par : asevere
#!/bin/sh
Tiens tiens ça m'aurait étonné
Perso j'ai choisi Python
Salut à tous :
je me demandais :
Combien trouvez vous de nombres de 6 chiffres (ne commençant pas par 0), pouvant se terminer par 0 ou 1 et vérfiant la condition de J-P, c'est à dire que si on le(s) met au carré, on obtient un nombre se terminant par ses chiffres dans l'ordre ?
à vous de réfléchir ...
romain
posté par : Teebo
posté par : asevere
#!/bin/sh
Tiens tiens ça m'aurait étonné
Ben on se refait pas hein
Salut romain
avec 0, seul 000000²=000000 conviendrait mais commence par 0 => exclus,
avec 1, seul 000001²=000001 conviendrait mais commence par 0 => exclus,
Donc, effectivement, J-P aurait pu ne pas émettre cette restriction.
Méthode : la même que celle de ma résolution du 25.08 12:21,
examen des cas, par la multiplication en ligne, des nombres se terminant soit par 0, soit par 1
Puis remontée unité->dizaine->centaine...
A noter les résolutions élégantes de piepalm et Nofutur2 !
Philoux
merci philoux
c'est aussi ce que je trouvais, et je me disais que c'était bizarre, parce que J-P aurait pu laisser ces 2 cas histoire de nous faire chercher un peu plus
je suis d'accord avec ton PS : j'ai aussi bien aimer la résolution de Nofutur2 , merci à lui pour la clarté de sa réponse.
Pour en revenir à toi philoux, je te décerne ton
félicitations
romain
posté par : philoux
Pour aller plus loin...
Avec ton lien, ca devient tout de suite plus facile.
J'avais utilisé la meme méthode que toi, un peu bébête et pas super réflechie...
Et comme Lyonnais et toi, je remercie Nofutur2 pour la clareté de son explication
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :