Horizontal

sábado, 22 de diciembre de 2012

Cambio de base 10 a otra base n

Diseñar un programa que nos permita cambiar de base , el cambio sera de la base 10 a otra base n, en este caso la base n estará entre 1 y 10, ademas el número a cambiar de base estará entre 1 y 1000.

SOLUCIÓN

Como el cambio se realizará a una base entre 1 y 10, esto nos facilita al momento de imprimir los resultados.
Iniciamos acotando la base al igual que el número ingresado, luego realizaremos el cambio de base mediante divisiones sucesivas con ayuda del bucle while, finalmente imprimimos los resultados mediante el bucle for.

CÓDIGO


  1. #include<stdio.h>
  2. int main()
  3. {
  4.     int m,m2,n,i,j;
  5.     int a[11];
  6.     printf("Base:");
  7.     scanf("%d",&n);
  8.     
  9.     while(n<2 || n>9)
  10.     {
  11.               printf("la base es mayor a 1 y menor a 10\n");
  12.               scanf("%d",&n);
  13.     }
  14.     
  15.     printf("Numero:");
  16.     scanf("%d",&m);
  17.     while(m<1 || m>1000)
  18.     {
  19.               printf("el numero debe estar entre 1 y 1000\n");
  20.               scanf("%d",&m);
  21.     }
  22.     m2=m;
  23.     
  24.     i=0;
  25.     while(m!=0)
  26.     {
  27.                a[i]=m%n;
  28.                i++;
  29.                m=m/n;
  30.     }
  31.     
  32.     printf("\t%d=",m2);
  33.     for(j=i-1;j>=0;j--)
  34.        printf("%d",a[j]);
  35.     printf(" en base %d",n);
  36.     
  37.     return 0;
  38. }
Related Posts Plugin for WordPress, Blogger...