Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 26-04-2014 15:37:49
- Jeff
- Invité
base
Bonjour aux amatheurs de ce forum,
Je n'ai pas la solution à ce problème, pire, je ne vois pas comment faire pour aborder sa résolution...
Il faut 6 chiffres pour m'écrire en base 23
Il faut 7 chiffres pour m'écrire en base 15
Il faut 8 chiffres pour m'écrire en base 10
Il faut 16 chiffres pour m'écrire en base 3
Il faut 26 chiffres pour m'écrire en base 2
Et je suis le plus petit dans mon genre.
Qui suis-je hexactement ?
Merci de votre aide.
#5 27-04-2014 11:01:20
- pipo
- Membre
- Inscription : 28-02-2014
- Messages : 17
Re : base
Bonjour,
Le nombre donné par Pipo devrait s'écrire avec 8 chiffres puisqu'il est écrit en base 10 !
ah oui c'est vrai je ne sais pas pourquoi je n'y ai pas fait attention !mais un simple petit correctif pourrait rendre le petit programme viable (je ne peux le tester car je ne suis pas chez moi )
Hors ligne
#11 30-04-2014 18:41:52
- Jeff
- Invité
Re : base
Oui, yoshi !
La réponse est bonne.
Vraiment très fort !
Merci.
#14 06-05-2014 20:51:21
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 385
Re : base
Re,
Je testerai demain si avec ça et en partant de 1 on trouve le bon nombre... Un peu de suspense ! ^_^
Pour ce soir, Morphée m'attend...
@+
Dernière modification par yoshi (06-05-2014 21:40:16)
Hors ligne
#15 07-05-2014 10:19:47
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 385
Re : base
Bonjour,
Alors, j'ai un peu abrégé mes souffrances, je ne suis pas parti de 1 mais du plus petit nombre qui s'écrit avec 6 chiffres en base 23
100000 soit 6436343 en base 10.
def longueurs(n,LG):
for bs in [2,3,10,15,23]:
LG.append((int(log(n)/log(bs))+(n>=bs)))
return LG
n=6436343
while 1:
L=longueurs(n,[])
if L==[26,16,8,7,6]:
break
else:
n+=1
L=[]
print "Le nombre cherché est",n
On doit pouvoir raccourcir un peu plus le temps d'attente...
@+
Hors ligne







