AGRADECIMENTO...

Pessoal, Gostaria de pedir desculpas aqueles que deixam perguntas/comentários/elogios/críticas e ainda não foram respondidos.

Aproveito a oportunidade para informar a todos que devido a correria do dia a dia não conclui o curso de BSI, por isso meus conhecimentos são limitados rsrsrs...

Ainda não retirei o blog do ar porque tem ajudado a diversos estudantes, principalmente os iniciantes.

As vezes, quando o trabalho me permite, ainda arrisco tentar resolver algumas questões rs... mas para não deixar esse blog parar no tempo, o ESTUDANTE que quiser enviar a resolução de alguma questão (código próprio) para o meu e-mail, terei o prazer de posta-la neste blog e será mantido a autoria.

Desde já agradeço a todos pelas visitas e desejo bons estudos.

Thiago Campos
(srthiago@hotmail.com)

quinta-feira, 31 de maio de 2012

Converter Decimal em Binário - JOptionPane, String e Vetores

Faça um programa que converta número decimal em numero binário, usando Strings e Vetores.

Código Java

//Autor: Thiago Campos
//Data: 31.05.2012
//Programa que converte um numero decimal para binário

import javax.swing.JOptionPane; //Importando a biblioteca
/**
 *
 * @author Thiago
 */
public class DecimalBinario { //inicio da Class
    public static void main(String[] args) { //inicio do método main
        //declaração de variaveis
        float numero; //var do tipo real
        int resto; //var do tipo inteira
        String sequencia = "", seqBinaria = ""; //Strings inicializadas
        int q[] = new int[100]; //vetor quociente
       
        //Entrada de dados - var recebento a String convertida em Float
        numero = Float.parseFloat(JOptionPane.showInputDialog("Informe o numero decimal:"));
       
        //processamento: convertendo decimal
        while (numero > 0) {  //faça enquanto o numero for maior que zero
            int i = 0;  //inicializando a var local
            resto = (int) numero % 2;  //var assumindo o resto da divisão
            q[i] = (int) (numero / 2);  //O vetor recebe a parte inteira da divisão
            numero = q[i];  //a var assumindo novo numero = quociente da divisão
            sequencia += resto;  //var sequencia concatenando o resto das divisões
            i++;  //incrementando a var local
        }
        //Loop para inverter os caracteres da String sequencia
        for (int j = sequencia.length() - 1; j >= 0; j--) {
            seqBinaria = seqBinaria + sequencia.charAt(j);   //var que concatena o resultado
        }  // fim do FOR
        //janela que mostra a sequencia binaria correspondente
        JOptionPane.showMessageDialog(null,"O correspondente binário é "+seqBinaria);
      
        //Esses 2 comandos abaixos vão zerar as variaveis e deixa-los prontos para novo uso
        seqBinaria = "";
        sequencia = "";

    } //fim da Main
}  //Fim da Class

Um comentário:

  1. Ocorreu um erro na execução desse código, ele nem chega a fazer a conversão!

    ResponderExcluir