Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Como converter de binário para octal em Java - Exercícios Resolvidos de JavaQuantidade de visualizações: 934 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar um número binário e exibe o número octal correspondente. Seu código deve usar apenas os operadores matemáticos disponíveis na linguagem Java, ou seja, não é permitido usar métodos e funções já prontas. Sua saída deverá ser parecida com: Informe um número binário: 1001101 O número octal é: 115 Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos{
public static void main(String[] args){
// primeiro criamos um vetor de dígitos correspondentes
int digitosCorrespondentes[] = {0, 1, 10, 11, 100, 101, 110, 111};
int multiplo = 1; // define o múltiplo inicial como 1
long numeroOctal = 0;
// para efetuar a leitura do usuário
Scanner entrada = new Scanner(System.in);
System.out.print("Informe um número binário: ");
long numeroBinario = Long.parseLong(entrada.nextLine());
// enquanto o número binário for diferente de zero
while(numeroBinario != 0) {
// obtém três dígitos do número binário
int tresDigitos = (int)(numeroBinario % 1000);
for(int cont = 0; cont < 8; cont++) {
if(digitosCorrespondentes[cont] == tresDigitos) {
numeroOctal = (cont * multiplo) + numeroOctal;
break;
}
}
// remove os três últimos dígitos
numeroBinario = numeroBinario / 1000;
multiplo = multiplo * 10; // aumenta o múltiplo em 10
}
// mostra o resultado
System.out.println("O número octal é: " + numeroOctal);
}
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





