import java.io.*;
import java.text.*;
public class conversion
{
public static void main(String []inferno)throws IOException
{
int res,num,opc;
String resultado;
BufferedReader in=new BufferedReader (new InputStreamReader(System.in));
System.out.print("\n\t *** CONVERSION DE NUMEROS DECIMALES A BINARIOS ***");
res=1;
while(res==1)
{
System.out.print("\n\t\t\t\t *** MENU ***");
System.out.print("\n\t\t\t 1.- DE BINARIO A DECIMAL");
System.out.print("\n\t\t\t 2.- DE DECIMAL A OCTAL");
System.out.print("\n\t\t\t 3.- DE DECIMAL A HEXADECIMAL");
System.out.print("\n\t\t\t Elige tu opcion:");
opc=Double.valueOf(in.readLine().trim()).intValue();
switch(opc)
{
case 1:
{
StringBuffer stb=new StringBuffer();
System.out.print("\n Ingresa un numero:");
num=Double.valueOf(in.readLine().trim()).intValue();
while (num>0)
{
stb.insert(0,num%2);
num=num/2;
}
resultado=new String(stb);
System.out.print("\n El resultado es :"+resultado);
break;
}
case 2:
{
StringBuffer stb=new StringBuffer();
System.out.print("\n Ingresa un numero:");
num=Double.valueOf(in.readLine().trim()).intValue();
while (num>0)
{
stb.insert(0,num%8);
num=num/8;
}
resultado=new String(stb);
System.out.print("\n El resultado es :"+resultado);
break;
}
case 3:
{
StringBuffer stb=new StringBuffer();
System.out.print("\n Ingresa un numero:");
num=Double.valueOf(in.readLine().trim()).intValue();
int x;
char c='a';
while (num>0)
{
x=num%16;
if(x <>
{
stb.insert(0,x);
}
else
{
switch(x)
{
case 10 :c ='A';break;
case 11 :c ='B';break;
case 12 :c ='C';break;
case 13 :c ='D';break;
case 14 :c ='E';break;
case 15 :c ='F';break;
}//fin del switch
stb.insert(0,c);
}//fin del else
num=num/16;
}// fin del while
resultado=new String(stb);
System.out.print("\n El resultado es :"+resultado);
break;
}
default :
{
System.out.print ("\n ERROR OPCION NO EXISTE");
break;
}
}// fin del switch
System.out.print("\n Desea otra operacion [1.-SI/2.-NO]?");
res=Double.valueOf(in.readLine().trim()).intValue();
}// fin de while
}
}
Post Relacionados:
<Portable Visual Basic v6
21 reglas interesantes de la programacion>
ah, chido es muy útil aunque solo si estas viendo el tema, gracias
ResponderBorrarMuy buen aporte, me estaba quebrando la cabeza por este pedazo de codigo que me hacia falta.
ResponderBorrarSolo queria queria corregir una parte para que jale:
int x;
char c='a';
while (num>0)
{
x=num%16;
if(x < 9)
{
stb.insert(0,x);
}
en el original esta como
...
if(x <>
{
....