Hola, estoy intentando hacer este ejercicio y se me ha ocurrido hacerlo de esta forma, que creo en teoria creo deberia funcionar.
Un bucle que cuente el numero de cifras que va a contener el numero en la base que queramos y otro que halle los restos y los coloque en su posicion multiplicando por 10,100,1000... segun corresponda
¿Alguien ve algun error? (aparte del int y no sirve para numeros grandes)
EDITO ABAJO CREO QUE YA ESTA NO NECESITABA DOS BUCLES!!
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main(){
int num,num1,n,resto,resul,cont,cont1,suma;
printf("Introduce numero y base a la que se quieres convertir"); num1=num;
cont=0;
cont1=0;
suma=0;
do{
while(num>=n && cont1==0){//primer bucle
cont++;
resul=num/n;
num=resul;}//fin primer bucle
cont1++;//para que no entre de nuevo en el primer bucle
printf("cont = %d\n",cont
);//no sirve (ver cont al salir del bucle) resul=num1/n;
resto=num1%n;
suma
=(suma
+(resto
*(pow(10,cont
))));
num1=resul;
cont--;
}while(num1>=n);
Que follon habia hecho, creo que ya esta
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main(){
int num,n,cont,resto,resul,suma;
cont=0;
suma=0;
printf("Introduce numero y base a la que se quieres convertir"); do{
resul=num/n;
resto=num%n;
suma
=(suma
+(resto
*(pow(10,cont
))));cont++;
num=resul;
}while(num>=n);
suma
=(suma
+(resul
*(pow(10,cont
))));}