//este es un programa para convertir diferentes valores numericos a diferentes base como por ejemplo el 1ero de base2 a base 3
package Logica;
public class CalculadoraAvansada extends CalculadoraBase{
public String Base2ToBase3(String Numero) {
String Binario2 = Numero;
int Decimal10;
String Ternario3;
Decimal10 = Base2ToBase10(Binario2);
Ternario3 = Base10ToBase3(Decimal10);
return Ternario3;
}
public String Base2ToBase5(String Numero) {
String Binario2 = Numero;
int Decimal10;
String Quinario5;
Decimal10 = Base2ToBase10(Binario2);
Quinario5 = Base10ToBase5(Decimal10);
return Quinario5;
}
public String Base2ToBase8(String Numero) {
String Binario2 = Numero;
int Decimal10;
String Octal8;
Decimal10 = Base2ToBase10(Binario2);
Octal8 = Base10ToBase8(Decimal10);
return Octal8;
}
public int Base2ToBase10(String Numero) {
int Decimal = 0;
String Binario = Numero;
for (int i = (Binario.length() - 1); i >= 0; i--) {
IngresarNumero1(2);
IngresarNumero2((Binario.length() - 1) - i);
Decimal = Decimal + (Integer.parseInt(Binario.substring(i, i + 1)) * Potenciar());
}
return Decimal;
}
public String Base2ToBase16(String Numero) {
String Binario2 = Numero;
int Binario10;
String Binario16;
Binario10 = Base2ToBase10(Binario2);
Binario16 = Base10ToBase16(Binario10);
return Binario16;
}
public String Base3ToBase2(String Numero) {
String Ternario3 = Numero;
int Decimal10;
String Binario2;
Decimal10 = Base3ToBase10(Ternario3);
Binario2 = Base10ToBase2(Decimal10);
return Binario2;
}
public String Base3ToBase5(String Numero) {
String Ternario3 = Numero;
int Decimal10;
String Quinario5;
Decimal10 = Base3ToBase10(Ternario3);
Quinario5 = Base10ToBase5(Decimal10);
return Quinario5;
}
public String Base3ToBase8(String Numero) {
String Ternario3 = Numero;
int Decimal10;
String Octal8;
Decimal10 = Base3ToBase10(Ternario3);
Octal8 = Base10ToBase8(Decimal10);
return Octal8;
}
public int Base3ToBase10(String Numero) {
int Decimal = 0;
String Ternario = Numero;
for (int i = (Ternario.length() - 1); i >= 0; i--) {
IngresarNumero1(3);
IngresarNumero2((Ternario.length() - 1) - i);
Decimal = Decimal + (Integer.parseInt(Ternario.substring(i, i + 1)) * Potenciar());
}
return Decimal;
}
public String Base3ToBase16(String Numero) {
String Ternario3 = Numero;
int Binario10;
String Hexadecimal16;
Binario10 = Base3ToBase10(Ternario3);
Hexadecimal16 = Base10ToBase16(Binario10);
return Hexadecimal16;
}
public String Base5ToBase2(String Numero) {
String Quinario5 = Numero;
int Decimal10;
String Binario2;
Decimal10 = Base5ToBase10(Quinario5);
Binario2 = Base10ToBase2(Decimal10);
return Binario2;
}
public String Base5ToBase3(String Numero) {
String Quinario5 = Numero;
int Decimal10;
String Ternario3;
Decimal10 = Base5ToBase10(Quinario5);
Ternario3 = Base10ToBase3(Decimal10);
return Ternario3;
}
public String Base5ToBase8(String Numero) {
String Quinario5 = Numero;
int Decimal10;
String Octal8;
Decimal10 = Base5ToBase10(Quinario5);
Octal8 = Base10ToBase8(Decimal10);
return Octal8;
}
public int Base5ToBase10(String Numero) {
int Decimal = 0;
String Quintario = Numero;
for (int i = (Quintario.length() - 1); i >= 0; i--) {
IngresarNumero1(5);
IngresarNumero2((Quintario.length() - 1) - i);
Decimal = Decimal + (Integer.parseInt(Quintario.substring(i, i + 1)) * Potenciar());
}
return Decimal;
}
public String Base5ToBase16(String Numero) {
String Quinario5 = Numero;
int Binario10;
String Hexadecimal16;
Binario10 = Base5ToBase10(Quinario5);
Hexadecimal16 = Base10ToBase16(Binario10);
return Hexadecimal16;
}
public String Base8ToBase2(String Numero) {
String Octal8 = Numero;
int Decimal10;
String Binario2;
Decimal10 = Base8ToBase10(Octal8);
Binario2 = Base10ToBase2(Decimal10);
return Binario2;
}
public String Base8ToBase3(String Numero) {
String Octal8 = Numero;
int Decimal10;
String Ternario3;
Decimal10 = Base8ToBase10(Octal8);
Ternario3 = Base10ToBase3(Decimal10);
return Ternario3;
}
public String Base8ToBase5(String Numero) {
String Octal8 = Numero;
int Decimal10;
String Quinario5;
Decimal10 = Base8ToBase10(Octal8);
Quinario5 = Base10ToBase5(Decimal10);
return Quinario5;
}
public int Base8ToBase10(String Numero) {
int Decimal =0;
String Octogenal= Numero;
for(int i=(Octogenal.length()-1);i>=0; i--)
{
IngresarNumero1(8);
IngresarNumero2((Octogenal.length()-1)-i);
Decimal=Decimal + (Integer.parseInt(Octogenal.substring(i,i+1))*Potenciar());
}
return Decimal;
}
public String Base8ToBase16(String Numero) {
String Octal8 = Numero;
int Binario10;
String Hexadecimal16;
Binario10 = Base8ToBase10(Octal8);
Hexadecimal16 = Base10ToBase16(Binario10);
return Hexadecimal16;
}
public String Base10ToBase2(int Numero) {
int Decimal = Numero;
String Binario = "";
while (Decimal >= 2) {
Binario = Integer.toString(Decimal % 2) + Binario;
Decimal = Decimal / 2;
}
Binario = Integer.toString(Decimal % 2) + Binario;
return Binario;
}
public String Base10ToBase3(int Numero) {
int Decimal = Numero;
String Terneario = "";
while (Decimal >= 3) {
Terneario = Integer.toString(Decimal % 3) + Terneario;
Decimal = Decimal / 3;
}
Terneario = Integer.toString(Decimal % 3) + Terneario;
return Terneario;
}
public String Base10ToBase5(int Numero) {
int Decimal = Numero;
String Qintario = "";
while (Decimal >= 5) {
Qintario = Integer.toString(Decimal % 5) + Qintario;
Decimal = Decimal / 5;
}
Qintario = Integer.toString(Decimal % 5) + Qintario;
return Qintario;
}
public String Base10ToBase8 (int Numero) {
int Decimal=Numero;
String Octogenal="";
while(Decimal >= 8)
{
Octogenal= Integer.toString(Decimal% 8)+ Octogenal;
Decimal= Decimal/8;
}
Octogenal=Integer.toString(Decimal%8)+Octogenal;
return Octogenal;
}
public String Base10ToBase16(int Numero) {
int Decimal = Numero, Digito;
String Hexadecimal = "", D;
while (Decimal >= 16) {
Digito = (Decimal % 16);
switch (Digito) {
case 10:
D = "A";
break;
case 11:
D = "B";
break;
case 12:
D = "C";
break;
case 13:
D = "D";
break;
case 14:
D = "E";
break;
case 15:
D = "F";
break;
default:
D = Integer.toString(Digito);
}
Hexadecimal = D + Hexadecimal;
Decimal = Decimal / 16;
D = "";
}
Hexadecimal = Integer.toString(Decimal) + Hexadecimal;
return Hexadecimal;
}
public String Base16ToBase2(String Numero) {
String Heaxadecimal16 = Numero;
int Decimal10;
String Binario2;
Decimal10 = Base16ToBase10(Heaxadecimal16);
Binario2 = Base10ToBase2(Decimal10);
return Binario2;
}
public String Base16ToBase3(String Numero) {
String Heaxadecimal16 = Numero;
int Decimal10;
String Ternario3;
Decimal10 = Base16ToBase10(Heaxadecimal16);
Ternario3 = Base10ToBase3(Decimal10);
return Ternario3;
}
public String Base16ToBase5(String Numero) {
String Heaxadecimal16 = Numero;
int Decimal10;
String Quinario5;
Decimal10 = Base16ToBase10(Heaxadecimal16);
Quinario5 = Base10ToBase5(Decimal10);
return Quinario5;
}
public String Base16ToBase8(String Numero) {
String Heaxadecimal16 = Numero;
int Decimal10;
String Octal8;
Decimal10 = Base16ToBase10(Heaxadecimal16);
Octal8 = Base10ToBase8(Decimal10);
return Octal8;
}
public int Base16ToBase10(String Numero) {
int Decimal = 0,Digito;
String Hexadecimal = Numero,Dig;
for (int i = (Hexadecimal.length() - 1); i >= 0; i--) {
IngresarNumero1(16);
IngresarNumero2((Hexadecimal.length() - 1) - i);
Dig=(Hexadecimal.substring(i, i + 1));
if (Dig.equals("A")) {
Digito = 10;
} else {
if (Dig.equals("B")) {
Digito = 11;
} else {
if (Dig.equals("C")) {
Digito = 12;
} else {
if (Dig.equals("D")) {
Digito = 13;
} else {
if (Dig.equals("E")) {
Digito = 14;
} else {
if (Dig.equals("F")) {
Digito = 15;
} else {
Digito = Integer.valueOf(Dig);
}
}
}
}
}
}
Decimal = (Decimal + Digito * Potenciar());
Dig="";
Digito=0;
}
return Decimal;
}
}
// este es el comprobador de los resultados ingresas dicho valor y sale el numero convertido a la base q desees...
package Logica;
public class Tester {
public static void main(String args[]){
CalculadoraAvansada Objto;
Objto=new CalculadoraAvansada();
System.out.println(Objto.Base2ToBase3("61"));
System.out.println(Objto.Base2ToBase5("61"));
System.out.println(Objto.Base2ToBase8("61"));
System.out.println(Objto.Base2ToBase10("61"));
System.out.println(Objto.Base2ToBase16("61"));
System.out.println(Objto.Base3ToBase2("97"));
System.out.println(Objto.Base3ToBase5("97"));
System.out.println(Objto.Base3ToBase8("97"));
System.out.println(Objto.Base3ToBase10("97"));
System.out.println(Objto.Base3ToBase16("97"));
System.out.println(Objto.Base5ToBase2("61"));
System.out.println(Objto.Base5ToBase3("61"));
System.out.println(Objto.Base5ToBase8("61"));
System.out.println(Objto.Base5ToBase10("61"));
System.out.println(Objto.Base5ToBase16("61"));
System.out.println(Objto.Base8ToBase2("61"));
System.out.println(Objto.Base8ToBase3("61"));
System.out.println(Objto.Base8ToBase5("61"));
System.out.println(Objto.Base8ToBase10("61"));
System.out.println(Objto.Base8ToBase16("61"));
System.out.println(Objto.Base10ToBase2(97));
System.out.println(Objto.Base10ToBase3(97));
System.out.println(Objto.Base10ToBase5(97));
System.out.println(Objto.Base10ToBase8(97));
System.out.println(Objto.Base10ToBase16(97));
System.out.println(Objto.Base16ToBase2("61"));
System.out.println(Objto.Base16ToBase3("61"));
System.out.println(Objto.Base16ToBase5("61"));
System.out.println(Objto.Base16ToBase8("61"));
System.out.println(Objto.Base16ToBase10("61"));
}
}