Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Programme pour conversion de Base
MagiiK le 18/11/2015 à 14:56
Bonjour à tous, j'aurai besoin d'aide pour un algorithme pouvant transformer un nombre en n'importe quelle base vers n'importe quelle base. Il y en a déjà des existants sur le forum mais il marchent rarement, si vous en avez un qui marche, ça me sauverai la vie
mercild le 21/11/2015 à 15:55
Non c'est faux, de nombreuses personnes ici ont fait des prgm de conversion qui fonctionnent parfaitement.
De la base 10 à X et inversement, pour X de 2 à 36.
Prgm AllBase V3 187 octets.
Code
:"0123456789ABCDEF->Chaîne0 ---- (Allez jusqu'à Z pour la base 36).
:EffEcr:0->N:0->R
:Input:"DE BASE ",X
:Input "A ",Y
:Input "N= ",Chaîne1
:longueur(Chaîne1->L
:For(Z,0,L-1
:carChaîne(Chaîne0,sous-Chaîne(Chaîne1,L-Z,1))-1
:R+X^ZRép->R
:End
:Repeat non(R
:N+1->N
:Output(8,17-N,sous-Chaîne(Chaîne0,1+R-Yent(R/Y),1
:ent(R/Y->R
:End
Vous pouvez le tester à cette adresse :
https://www.kaagaard.dk/service/convert.htm adribaz le 01/12/2015 à 14:11
Bonjour j'ai pas compris a quoui sert :
non( ?

Mingerton le 01/12/2015 à 19:12
Il s'agit d'une commande booléenne, qui retourne VRAI si la valeur de vérité de son argument est FAUX, et FAUX si la valeur de vérité est VRAI. Ca fonctionne comme un inverseur.
En TI-Basic, on l'utilise souvent pour savoir si un test est faux, ou pour savoir si un nombre est égal à 0 (FAUX=0).
Dans ce cas, on répète la boucle jusqu'à e que R soit nul. (d'ailleurs cette ligne se remplace par While R

)
ld le 02/12/2015 à 16:54
Oui mais Repeat effectue une dernière fois la boucle si non(R est vrai.
Tandis que While R s'arrête net, et ce n'est pas ce q'il faut dans mon prgm.Ruadh le 02/12/2015 à 17:56
ld a écrit :
Oui mais Repeat effectue une dernière fois la boucle si non(R est vrai.
Tandis que While R s'arrête net, et ce n'est pas ce q'il faut dans mon prgm.
Non, c'est faux. La différence est que le test est effectué en début de boucle pour While et en fin de boucle pour Repeat.
Dans ce programme, la seule différence est quand N=0, avec Repeat, le programme affiche 0, alors qu'avec While, il n'affiche rien.
ld le 03/12/2015 à 13:23
Et bien on a raison tout les deux.
Repeat fait donc une boucle de plus.Ruadh le 03/12/2015 à 17:58
Sans doute que je te comprend mal
J'ai compris que tu disais que Repeat effectuait une itération supplémentaire que While pour tout N.
Donc si c'est bien ça que tu disais, c'est faux, le nombre d'itérations est identique pour tout N non nul.
Si c'était pas ça que tu disais, alors désolé.
Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.