07/06/09 9:59
theprogrammer
No ... mario, ricominciamo ...
Intanto non e' necessario un array di 1000 stringhe (quel V(1000) ...) ma una sola stringa per il risultato ... e ti consiglio di dichiarare tutte le variabili che userai.
Ad esempio, num non e' dichiarata ... fallo ...
Dim Res As String ' per il risultato
Dim Num As Long ' il numero da convertire
Poi, utilizza una variabile per il valore di ogni singola cifra durante la conversione
Dim Digit As Byte ' cifra corrente convertita
Considera che i valori dovranno essere solamente corretti se sono >9 (sfruttando il codice ASCII) e dovranno essere aggiunti alla stringa risultato a sinistra ...
In pratica, il codice diventa ...
Ovviamente, alla fine ho visualizzato il risultato con una Print ... tu potrai fare quello che vuoi con la variabile Res ...
Intanto non e' necessario un array di 1000 stringhe (quel V(1000) ...) ma una sola stringa per il risultato ... e ti consiglio di dichiarare tutte le variabili che userai.
Ad esempio, num non e' dichiarata ... fallo ...
Dim Res As String ' per il risultato
Dim Num As Long ' il numero da convertire
Poi, utilizza una variabile per il valore di ogni singola cifra durante la conversione
Dim Digit As Byte ' cifra corrente convertita
Considera che i valori dovranno essere solamente corretti se sono >9 (sfruttando il codice ASCII) e dovranno essere aggiunti alla stringa risultato a sinistra ...
In pratica, il codice diventa ...
Dim Res As String Dim Num As Long Dim Digit As Byte Num = Val(Text1.Text) Do Digit = Num Mod 16 Num = Num \ 16 If Digit > 9 Then Digit = Digit + 7 Res = Chr(Digit + 48) & Res Loop While Num <> 0 Print Res
Ovviamente, alla fine ho visualizzato il risultato con una Print ... tu potrai fare quello che vuoi con la variabile Res ...
aaa