Herculano 0 Denunciar post Postado Março 26, 2009 Olá galera eu mais uma vez agora o problema é o seguinte preciso transformar um inteiro em um vetor de interos exemplo. A entrada seria essa 59321. E o vetor formado esse. Conjunto [5][9][3][2][1] tamanho= 5 Como me recomendaram no post passado tentei fazer essa transformação usando string. ://forum.imasters.com.br/index.php?showtopic=337250 O problema é q eu não consigo transformar um elemento do vetor por vez. Tentei fazer uma variavel auxiliar para receber o elemento do vetor e dps converter para int mais naum funcionou.Quem puder me dar uma ajuda eu agradeço muito. TConj Num2Conj(int num) { TConj N2C; char buf[30],aux1[1]; int aux=0; int tam = sprintf(buf, "%d", num); Inicializa(&N2C); cout << "tam" << tam <<endl; for (int i=0; i<tam; i++) { aux1[1]=buf[i]; aux=atoi(aux1); InserirElemento(&N2C,aux); aux=0; } return N2C; } Compartilhar este post Link para o post Compartilhar em outros sites
Herculano 0 Denunciar post Postado Março 26, 2009 Consigui fazer funcionar +/- num sei se esse é melhor jeito para se fazer, mas ao menos está funcionando. Vlw galera TConj Num2Conj(int num) { TConj N2C; char buf[32]; int tam = sprintf(buf, "%d", num); Inicializa(&N2C); for (int i=0; i<tam; i++) { InserirElemento(&N2C,(buf[i]-48)); } return N2C; } Compartilhar este post Link para o post Compartilhar em outros sites
VictorCacciari 42 Denunciar post Postado Março 26, 2009 Posso apenas sugerir uma dica?? De char pra int, a melhor forma é a tabela ascii mesmo! =D Por acaso o sprintf retorna o tamanho da string??? tipo strlen?? Aprendi mais uma! :P Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Março 26, 2009 é qnd vi o sprintf ai tbm naum entendi muito bem.. soh compilando para eu ver c é vdd ;D Compartilhar este post Link para o post Compartilhar em outros sites