double get_decimal(char u[]) { double decimal=0; int i,tamanho = strtam(u); for(i=0;i<tamanho && u[i]!='.';i++); // posiciona o indice i encima do ponto decimal=convertI(u+i+1);///(pot10(tamanho-i-1)); decimal=(double)convertI(u+i+1)/(double)(pot10(tamanho-i-1)); return decimal; }
int convertI(char u[]) { if(strtam(u) == 0) return 0; return (u[0]-48)*pot10(strtam(u)-1) + convertI(u+1); }
int pot10(int n) { if(n == 0) return 1; return 10 * pot10(n-1); }