hola amigos tngo un problema con este ejercicio bueno 1º los hice por separado y todo bn pero ahora al tratar de unirlos en un menu al momneto de ejecutarlo se cae al apretar una opcion y no se q pasa xa si pueden ayudarme
#include<stdio.h>
#include<conio.h>
void binario(int num)
{
int a[100],i,dividendo,cociente,resto,n=0;
clrscr();
for(dividendo = num; dividendo > 0;n++)
{
cociente=dividendo/2;
resto=dividendo%2;
a[n]=resto;
dividendo=cociente;
}
printf("El numero decimal %d equivale en Binario a: ", num);
for( i=n-1; i>=0; i--)
{
printf("%d",a);
}
getch();
}
void octal(int num)
{
int a[100],i,dividendo,cociente,resto,n=0;
clrscr();
for(dividendo = num; dividendo > 0;n++)
{
cociente=dividendo/8;
resto=dividendo%8;
a[n]=resto;
dividendo=cociente;
}
printf("El numero decimal %d equivale en Octal a: ", num);
for( i=n-1; i>=0; i--)
{
printf("%d",a);
}
getch();
}
void hexadecimal(int num)
{
int a[100],i,dividendo,cociente,resto,n=0;
clrscr();
for(dividendo = num; dividendo > 0;n++)
{
cociente=dividendo/16;
resto=dividendo%16;
a[n]=resto;
dividendo=cociente;
}
printf("El numero decimal %d equivale en Hexadecimal a: ", num);
for( i=n-1; i>=0; i--)
{
printf("%d",a);
}
getch();
}
int main()
{
int a[100],n1,num,n=0;
int op;
printf("Ingrese numero: ");
scanf("%d",& n1);
clrscr();
printf(" ***CONVERSION DE NUMEROS A OTRA BASE***\n\n");
printf(" 1.- Decimal a Binario.\n");
printf(" 2.- Decimal a Octal.\n");
printf(" 3.- Decimal a Hexadecimal.\n");
printf(" 4.- Salir.\n");
printf(" \n\nEscoje tu opcion: ");
scanf("%d",&op);
op=getche();
if(op==1|| op==2|| op==3)
num=n1;
if(op==1)
binario(num);
else if(op==2)
octal(num);
else if(op==3)
hexadecimal(num);
else if(op==4)
getch();
else
{
printf("\nOpcion invalida");
getch();
}
return 0;
}
existe algo que le pusieron al foro llamado GESHI
Lo mio es C++ pero estas seguro que esto esta bien?
scanf("%d",&op);
op=getche();
Verifica, porque creo que debes quitar la segunda linea... De esa sección...
Saludos...
Fijate en el siguiente tema, en el ultimo post te podes dar una idea de un menu :P
http://foro.elhacker.net/programacion_cc/burbujainsercion_y_seleccion-t294683.0.html
Otra cosa, no es recomendable usar la libreria conio.h ya que no es estandar. Mas bien usa para limpiar pantalla
#include <stdlib.h>
...
system( "cls" ); // Windows
system( "clear" ); // Linux
y cambia getch() por getchar() de la libreria stdio.h
Salu10.