Conversão de numerais, vale a pena VER!

2 respostas
U

Comentem:

Ex: binário p/ decimal, decimal p/ binário.

// @author Raphael S.Carvalho

public class Binario_Decimal{

	private static String binario_reverso = ""; // valor em binário.
	private static int a, decimal=0; // valor em decimal

	public static String getBinario(){
		return binario_reverso;
	}

	public static void converter (int valor_a) { // método converte decimal em binário
		a = valor_a;
		int calculo_converter;	
		String binario = "";

		for (int b = a; b >= 0; b/=2){ // divide o valor divisivel por 2.

			calculo_converter = b%2; // calcula o resto e gera os números binários.
			binario += Integer.toString(calculo_converter); // converte o calculo p/ string.

			if (b == 0){
				break;
			}
		} // fim do for.	

		for (int x = binario.length()-1; x >=0; x--){ // inverter o binário
			binario_reverso += binario.charAt(x);			
		} 		
	}	

	public static void reverter (String binario){ // método converte binário em decimal
		String c = binario;
		int e = c.length(); // ultima matriz.	
		int reverter, calculo_reverter=0;
		
		for (int d = 0; d <= c.length()-1; d++){	
			e--; // redução de matriz

			reverter = Integer.parseInt(Character.toString(c.charAt(d))); // pegar o primeiro binário (converte char p/ string, string p/int)

			calculo_reverter = reverter*2; // calcula binario*2
			decimal += (int)(Math.pow(calculo_reverter,e));	// potencializa calculo*matriz convertendo para decimal.						
		} 
	}		

	public static String Mensagem_Binario(){ // mensagem conversão decimal p/ binario
		return "O valor em decimal: ("+a+") foi convertido para o binário: ("+binario_reverso+").";
	}

	public static String Mensagem_Decimal(){ // mensagem conversão binário p/ decimal
		return "O valor em binário: ("+binario_reverso+") foi convertido para o decimal: ("+decimal+").";
	}
}
// @author Raphael S.Carvalho

public class Raphael {	

	public static void main (String[] args){

		int a = 13; // valor em decimal.

		Binario_Decimal.converter(a); 
		System.out.println(Binario_Decimal.Mensagem_Binario());

		Binario_Decimal.reverter(Binario_Decimal.getBinario());
		System.out.println(Binario_Decimal.Mensagem_Decimal());
	} 
}

2 Respostas

cardosao

Excelente post parabens. Sempre que tiver novidade traga para nós.

Abraços

Cardosão

g4j

legal a forma que você resolveu.

só algumas sugestões:

Dê uma olhada nas convenções para codificação de código java.
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

Nas concatenações de String, prefira por StringBuffer ou StringBuilder

Criado 12 de março de 2011
Ultima resposta 12 de mar. de 2011
Respostas 2
Participantes 3