👤

Terminale S

Bonjour à tous, me voila encore avec un algorithme :

Ecrire un algorithme qui, prenant en entrée un nombre écrit en base 7, renvoie en sortie son écriture en base 10.

J'ai deux méthodes : la première, conventionnelle, consiste à utiliser la boucle tant que et la division euclidienne (mais je n'arrive pas à écrire un algorithme qui fonctionne).
La deuxième méthode est non conventionnelle. Elle consiste à calculer la base 7 d'un nombre : par exemple, 1263 en base 7 = 486 et afficher ce nombre (en l’occurrence 486) mais je pense que ce n'est pas ce que le prof attend...

Merci à vous :D


Répondre :

bonjour,

pouvez vous essayez celui-ci

un nombre en base 7

a(7^k)a(7^(k-1)a(7^k-2)           a7^1 a7^0

0 devient n

de i allant de 0 à k

faire  n + (aix7^i) devient n

sortie n

j'ai essaye

458 base 7

8*7^0=8

(5*7^1)=35    8+35=43

(4*7^2)=4*49=196   196+43=239

A vous de juger