jueves, 24 de abril de 2014

Calculadora binaria

Calculadora Binaria que suma, resta, multiplica y divide números en binario



import java.util.Scanner;

public class binaryToDec {
public int binToDec(int numero){
{
      
        int base = 0;
        int cifraDecimal = 0;
      
        while (numero>=1)
        {
            cifraDecimal +=  (numero%10 * Math.pow(2, base));
            base++;
            numero/=10;    
        }
        return cifraDecimal;
        //System.out.println(cifraDecimal);
}
}
}

public class decToBin {
public int decToBin(int decimal){
String binario = "";
int resto;
while ( decimal > 0 ) {
binario = decimal % 2 + binario;
decimal /= 2;
}

return Integer.parseInt(binario);
}
}


public class main {

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int bin1, bin2, resultado;
boolean exit = false;
binaryToDec btd = new binaryToDec();
decToBin dtb = new decToBin();

while(exit == false){
System.out.println("Calculadora binaria");
System.out.println("1. Suma");
System.out.println("2. Resta");
System.out.println("3. Multiplicar");
System.out.println("4. Dividir");
System.out.println("0. Salir");
System.out.println("Ingrese su opción");
int numero = scan.nextInt();
switch(numero){
case 1:
System.out.println("Ingrese su primer numero binario");
bin1 = scan.nextInt();
System.out.println("Ingrese su segundo numero binario");
bin2 = scan.nextInt();
resultado = (btd.binToDec(bin1) + btd.binToDec(bin2));
System.out.println("El resultado es = "+ dtb.decToBin(resultado));
break;
case 2:
System.out.println("Ingrese su primer numero binario");
bin1 = scan.nextInt();
System.out.println("Ingrese su segundo numero binario");
bin2 = scan.nextInt();
resultado = (btd.binToDec(bin1) - btd.binToDec(bin2));
System.out.println("El resultado es = "+ dtb.decToBin(resultado));
break;
case 3:
System.out.println("Ingrese su primer numero binario");
bin1 = scan.nextInt();
System.out.println("Ingrese su segundo numero binario");
bin2 = scan.nextInt();
resultado = (btd.binToDec(bin1) * btd.binToDec(bin2));
System.out.println("El resultado es = "+ dtb.decToBin(resultado));
break;
case 4:
System.out.println("Ingrese su primer numero binario");
bin1 = scan.nextInt();
System.out.println("Ingrese su segundo numero binario");
bin2 = scan.nextInt();
resultado = (btd.binToDec(bin1) / btd.binToDec(bin2));
System.out.println("El resultado es = "+ dtb.decToBin(resultado));
break;
case 0:
exit = true;
break;
}
}
}

}

No hay comentarios:

Publicar un comentario