Berserker46 ha scritto:
La traccia è questa :
Scrivere una function C di conversione di un intero positivo da base 2 a base 10 mediante l'algoritmo delle divisioni successive che generi un array di caratteri contenenti le cifre decimali.
Attenzione: la frase
'algoritmo delle divisioni successive e' sibillina, nel senso che racconta solo meta' della storia
Quindi, partendo dal numero espresso in base 2, ad esempio "1001", si deve arrivare alla sua rappresentazione in base 10, che in questo caso e': "9"
Effettivamente, per capire come fare, uno deve aver capito che cosa e' la "rappresentazione esterna" di un numero e la "rappresentazione interna"
Ora, "la rappresentazione esterna" e' quella che usa l'essere umano, per rappresentare i numeri (10, 16, 8, 2 o qualunque altra base uno si possa inventare).
La "rappresentazione interna" e' quella usata dal computer che, per il momento, non e' di nessun interesse! Potrebbe essere in base 2, ma anche in base 3, o in base 8, o anche in base 127536. NON E' ASSOLUTAMENTE DI NESSUN INTERESSE.
Attenzione che basi diverse dal 2 sono correntemente in uso negli SSD, quindi non sono una cosa strampalata o fantascientifica!
Quello che devi fare e':
"numero in rappresentazione esterna, base 2" -> conversione in "numero in rappresentazione interna" -> conversione in "numero in rappresentazione esterna, base 10"
Ora sta' a te ingegnarti a come farlo