Está en la página 1de 3

#include <stdio.h> #include <conio.h> #include <stdlib.

h> char menu() { char c; printf("1 printf("2 printf("3 printf("4 printf("5 printf("6 printf("7 printf("8 printf("9 printf("A printf("B printf("C printf("S Decimal -> Binario\n"); Decimal -> Octal\n"); Decimal -> Hexadecimal\n"); Binario -> Decimal\n"); Binario -> Octal\n"); Binario -> Hexadecimal\n"); Octal -> Decimal\n"); Octal -> Binario\n"); Octal -> Hexadecimal\n"); Hexadecimal -> Decimal\n"); Hexadecimal -> Binario\n"); Hexadecimal -> Octal\n"); Salir\n");

printf("\nSeleccione opcion: "); c = getche(); return c; } unsigned long conversor(unsigned long n1,int base1,int base2) { unsigned long alg,mult=1,n2=0; while (n1 > 0) { alg = n1 % base1; n1 = n1/base1; n2 = n2+(alg*mult); mult = mult*base2; } return n2; } void main() { unsigned long n; char op; for(;;) { clrscr(); op = menu(); clrscr(); switch(op) { case '1': printf("Conversor Decimal -> Binario\n"); printf("Introduza un numero Decimal: "); scanf("%lu",&n); printf("Numero Binario correspondente: ");

printf("%lu",conversor(n,2,10)); break; case '2': printf("Conversor Decimal -> Octal\n"); printf("Introduza um numero Decimal: "); scanf("%lu",&n); printf("Numero Octal correspondente: "); printf("%lo",n); break; case '3': printf("Conversor Decimal -> Hexadecimal\n"); printf("Introduza um numero Decimal: "); scanf("%lu",&n); printf("Numero Hexadecimal correspondente: "); printf("%lx",n); break; case '4': printf("Conversor Binario -> Decimal\n"); printf("Introduza un numero Binario: "); scanf("%lu",&n); printf("Numero Decimal correspondente: "); printf("%lu",conversor(n,10,2)); break; case '5': printf("Conversor Binario -> Octal\n"); printf("Introduza un numero Binario: "); scanf("%lu",&n); printf("Numero Octal correspondente: "); printf("%lo",conversor(n,10,2)); break; case '6': printf("Conversor Binario -> Hexadecimal\n"); printf("Introduza un numero Binario: "); scanf("%ld",&n); printf("Numero Hexadecimal correspondente: "); printf("%lx",conversor(n,10,2)); break; case '7': printf("Conversor Octal -> Decimal\n"); printf("Introduza un numero Octal: "); scanf("%lo",&n); printf("Numero Decimal correspondente: "); printf("%lu",n); break; case '8': printf("Conversor Octal -> Binario\n"); printf("Introduza un numero Octal: "); scanf("%lo",&n); printf("Numero Binario correspondente: "); printf("%lu",conversor(n,2,10)); break; case '9':

printf("Conversor Octal -> Hexadecimal\n"); printf("Introduza un numero Octal: "); scanf("%lo",&n); printf("Numero Hexadecimal correspondente: "); printf("%lx",n); break; case 'A': case 'a': printf("Conversor Hexadecimal -> Decimal\n"); printf("Introduza un numero Hexadecimal: "); scanf("%lx",&n); printf("Numero Decimal correspondente: "); printf("%lu",n); break; case 'B': case 'b': printf("Conversor Hexadecimal -> Binario\n"); printf("Introduza un numero Hexadecimal: "); scanf("%lx",&n); printf("Numero Binario correspondente: "); printf("%lu",conversor(n,2,10)); break; case 'C': case 'c': printf("Conversor Hexadecimal -> Octal\n"); printf("Introduza un numero Hexadecimal: "); scanf("%lx",&n); printf("Numero Octal correspondente: "); printf("%lo",n); break; case 'S': case 's': exit(0); break; default: printf("Opcion invalida!"); } getch(); } }

También podría gustarte