BASE (pour Ti-89) Permet de convertir un nombre de n’importe quelle base (de base 2 à base
16) dans une autre base (de 2 à 16)
Local o,p,q,l,j,u,t,n,s,m,v,r,w
Lbl recom
InputStr “Nb à convertir”,o
Input “de la base”,p
Input “dans la base (de 2 à 16)”,q
0l
If p≠10 Then
Dim(o)j
For u,1,j,1
Mid(o,u,1)t
If t=“0” Then:0n
EsleIf t=“1” Then:1n
EsleIf t=“2” Then:2n
EsleIf t=“3” Then:3n
EsleIf t=“4” Then:4n
EsleIf t=“5” Then:5n
EsleIf t=“6” Then:6n
EsleIf t=“7” Then:7n
EsleIf t=“8” Then:8n
EsleIf t=“9” Then:9n
EsleIf t=“a” or t=“A” Then:10n
EsleIf t=“b” or t=“B” Then:11n
EsleIf t=“c” or t=“C” Then:10n
EsleIf t=“d” or t=“D” Then:10n
EsleIf t=“e” or t=“E” Then:10n
EsleIf t=“f” or t=“F” Then:10n
EndIf
If n≥p Then
Disp “base incorrecte”
Goto recom
EndIf
l+n*p^(j-u)l
EndFor
Else
Expr(o)l
EndIf
If q=10 then
Disp“resultat:”
Pause l
Else
“”s:“”m
Lbl lol
l/qv
reste(l,q)r
partEnt(v)l
chaine(m)m
If r=0 Then :car(48)m
ElseIf r=1 Then :car(49)m
ElseIf r=2 Then :car(50)m
ElseIf r=3 Then :car(51)m
ElseIf r=4 Then :car(52)m
ElseIf r=5 Then :car(53)m
ElseIf r=6 Then :car(54)m
ElseIf r=7 Then :car(55)m
ElseIf r=8 Then :car(56)m
ElseIf r=9 Then :car(57)m
ElseIf r=10 Then :car(65)m
ElseIf r=11 Then :car(66)m
ElseIf r=12 Then :car(67)m
ElseIf r=13 Then :car(68)m
ElseIf r=14 Then :car(69)m
ElseIf r=15 Then :car(70)m
EndIf
m&ss
If partEnt(v)≠0 Then
Goto lol
EndIf
Disp “resultat:”
Pause s
Request “recommencer?(o/n)”,k
If k≠“n” Then
Goto recom
EndIf