Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Sistemas Digitais - Manipulação de Bits |
Como retornar a quantidade de bits necessários para representar um número decimal inteiro positivo - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 519 vezes |
|
Pergunta/Tarefa: Quando estamos trabalhando com Sistemas Digitais ou manipulação de bits, é comum querermos saber quantos bits serão necessários para representar um determinado número decimal. A posse desse conhecimento permite o desenvolvimento de algoritmos muito interessantes. Escreva um programa Java que pede para o usuário informar um número inteiro positivo e retorne a quantidade de bits necessária para representá-lo. Você pode usar qualquer técnica que desejar. Na resolução eu usei as funções Math.floor() e Math.log() do Java. Sua saída deve ser parecida com: Informe um número inteiro positivo: 128 O número informado foi: 128 São necessários 8 bits. Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir um número inteiro positivo
System.out.print("Informe um número inteiro positivo: ");
int numero = Integer.parseInt(entrada.nextLine());
System.out.println("O número informado foi: " + numero);
// agora vamos obter a quantidade de bits necessária para
// representar o número informado
int bits_necessarios = ((int)(Math.floor(Math.log(numero)
/ Math.log(2)))) + 1;
// e mostramos o resultado
System.out.println("São necessários " + bits_necessarios +
" bits.");
}
}
|
|
|
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 |
|
JavaScript - Como remover todos os espaços de uma string em JavaScript usando uma função personalizada remover_espacos() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





