OctToDec : transforme une string (contenant le nombre décimal en base

DecToOct : transforme un nombre décimal en string (contenant le nombre décimal en base

Je n'ai pas trouvé d'algo non plus donc j'en appelle à vous

Merci d'avance !
Code : Tout sélectionner
Procedure OctToDec(o$)
d=0
L=Len(o$)
For i=1 To L
d=d+Val(Mid(o$,L-i+1,1))*Pow(8,i-1)
Next i
ProcedureReturn d
EndProcedure
Procedure DecToOct(d)
o$=""
Repeat
o$=Str(d%8)+o$
d=Int(d/8)
Until d<8
o$=Str(d)+o$
ProcedureReturn Val(o$)
EndProcedure
Debug OctToDec("17")
Debug DecToOct(96)
Code : Tout sélectionner
Procedure OctToDec(o$)
d=0
L=Len(o$)
For i=1 To L
d=d+Val(Mid(o$,L-i+1,1))*Pow(8,i-1)
Next i
ProcedureReturn d
EndProcedure
Procedure DecToOct(d)
o$=""
Repeat
o$=Str(d%8)+o$
d=Int(d/8)
Until d<8
o$=Str(d)+o$
ProcedureReturn Val(o$)
EndProcedure
Procedure BaseToDec(o$, base.l)
d=0
L=Len(o$)
For i=1 To L
d=d+Val(Mid(o$,L-i+1,1))*Pow(base,i-1)
Next i
ProcedureReturn d
EndProcedure
Procedure DecToBase(d, base.l)
o$=""
Repeat
o$=Str(d%base)+o$
d=Int(d/base)
Until d<base
o$=Str(d)+o$
ProcedureReturn Val(o$)
EndProcedure
Debug OctToDec("4610")
Debug DecToOct(2440)
Debug BaseToDec("4610",8)
Debug DecToBase(2440,8)
Code : Tout sélectionner
Procedure BaseToBase(N1,Base1, N2, Base2)
Code : Tout sélectionner
Procedure.s BaseToBase(n$,base1,base2)
d=0
L=Len(n$)
For i=1 To L
C$=Mid(n$,L-i+1,1)
If Val(C$)=0 And C$<>"0" ; caractère alphabétique
C$=Str(Asc(C$)-55)
EndIf
If Val(C$)>=base1 : MessageRequester("Conversion Base à Base","Problème : un chiffre du nombre à convertir est incorrect", #PB_MessageRequester_Ok ) : End : EndIf
d=d+Val(C$)*Pow(base1,i-1)
Next i
n$=""
Repeat
C$=Str(d%base2)
If Val(C$)>=10 ; caractère alphabétique
C$=Chr(55+Val(C$))
EndIf
n$=C$+n$
d=Int(d/base2)
Until d<base2
If d<>0 : n$=Str(d)+n$ : EndIf
ProcedureReturn n$
EndProcedure
Debug BaseToBase("F0",16,2)