Bonsoir,
Je dois créer un programme (je le fais sur AlgoBox) qui convertisse un nombre n en base A vers une base décimale.
Je sais bien le faire à la main, mais je n'arrive pas à mettre le programme en place…
À la main, je décompose n en fonction de la base A^…
ex : 111 en base 2 :
111 correspond à 1x2^2+1x2^1+1x2^0=4+2+1=7
Donc 111 en base 2 correspond à 7 en base 10.
Merci d'avance pour toute aide que vous pourrez m'apporter.
Bonjour,
Tu dois demander A
Le nombre à convertir
Calculer le nombre de chiffres qui le compose.
Pour chacun d'eux, multiplier par Aⁿ
Il te faudra peut être faire une conversion en chaîne de caractères pour calculer la longueur du nombre... (je connais mal algobox)
Merci.
Dans certains langages, une technique consiste à convertir le nombre en chaîne de caractères puis à utiliser la fonction qui donne la longueur de la chaîne. En anglais, c'est len(chaîne)
Je suis désolée mais malgré mes recherches en vain, je ne trouve pas ce paramètre dans AlgoBox.
N'existe-il pas une autre solution ?
ouvé sur: http://www.xm1math.net/algobox/doc.html
Opérations avec les chaînes :
Le contenu d'une chaîne doit être encadré par des guillemets :
Exemple : a prend la valeur "bonjour" (a étant une variable du type chaine)
Il est possible d'ajouter (concaténer) des chaînes :
Exemple : b prend la valeur a+"bonjour" (a et b étant des variables du type CHAINE)
Il est possible d'extraire le contenu d'une chaîne avec l'instruction chaîne.substr(position_premier_caractère_à_extraire,nombre_de_caractères_à_extraire).
Attention : la premier caractère a pour position 0 (et pas 1)
Exemple : b prend la valeur a.substr(4,2) (b sera alors formé des 5ème et 6ème caractères de a ; a et b étant des variables du type CHAINE)
Un nombre peut-être transformé en chaîne avec l'instruction nombre.toString()
Exemple : machaine prend la valeur nb.toString() (nb étant une variable du type NOMBRE et machaine étant une variable du type CHAINE)
La longueur d'une chaine peut-être obtenue avec l'instruction chaine.length
Exemple : longueur prend la valeur machaine.length (longueur étant une variable du type NOMBRE et machaine étant une variable du type CHAINE)
L'instruction machaine.charCodeAt(pos) permet d'obtenir le nombre égal au code ascii de la lettre figurant à la position pos dans la chaine machaine (Attention : le premier caractère a pour position 0).
Inversement, l'instruction String.fromCharCode(nombre) renvoie une chaine contenant le caractère dont le code ascii est égal à nombre.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :