Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Faça um programa que sorteie um número aleatório entre 0 e 500 e pergunte ao usuário qual é o "número mágico". O programa deverá - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 278 vezes |
Pergunta/Tarefa: Faça um programa que sorteie um número aleatório entre 0 e 500 e pergunte ao usuário qual é o "número mágico". O programa deverá indicar se a tentativa efetuada pelo usuário é maior ou menor que o número mágico e contar o número de tentativas. Quando o usuário conseguir acertar o número o programa deverá classificar o usuário como: De 1 a 3 tentativas: muito sortudo De 4 a 6 tentativas: sortudo De 7 a 10 tentativas: normal > 10 tentativas: tente novamente Sua saída deverá ser parecida com: Adivinhe o número mágico: 100 Tente um número menor. Adivinhe o número mágico: 50 Tente um número maior. Adivinhe o número mágico: 60 Tente um número maior. Adivinhe o número mágico: 80 Tente um número maior. Adivinhe o número mágico: 90 Tente um número maior. Adivinhe o número mágico: 95 Tente um número menor. Adivinhe o número mágico: 94 Tente um número menor. Adivinhe o número mágico: 93 Tente um número menor. Adivinhe o número mágico: 92 Você acertou o número em 9 tentativas. Classificação: Normal Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Random; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema int numero_magico, palpite, tentativas = 0; boolean acertou = false; // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos sortear o número entre 0 e 500 Random rand = new Random(); numero_magico = rand.nextInt(501); // um laço que repete enquanto o usuário não // acertar o número mágico while (!acertou) { System.out.print("Adivinhe o número mágico: "); palpite = Integer.parseInt(entrada.nextLine()); // registra essa tentativa tentativas = tentativas + 1; // o usuário acertou o número mágico? if (palpite == numero_magico) { System.out.println("Você acertou o número em " + tentativas + " tentativas."); // mostra a classificação do usuário if (tentativas <= 3) { System.out.println("Classificação: Muito Sortudo"); } else if ((tentativas >= 4) && (tentativas <= 6)) { System.out.println("Classificação: Sortudo"); } else if ((tentativas >= 7) && (tentativas <= 10)) { System.out.println("Classificação: Normal"); } else { System.out.println("Classificação: Tente Novamente"); } // sai do laço acertou = true; } else { // indica se o palpite é maior ou menor if (palpite < numero_magico) { System.out.println("Tente um número maior.\n"); } else { System.out.println("Tente um número menor.\n"); } } } } } |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Métodos - Exercícios Resolvidos de Java - Ex. 3 - Um método estático que recebe um número inteiro e retorna true se ele for par e false em caso contrárioQuantidade de visualizações: 3230 vezes |
Pergunta/Tarefa: Escreva um método Java que recebe um número inteiro e retorna true se o número for par e false em caso contrário. Este método deverá ter a seguinte assinatura: public static boolean isPar(int n){ // sua implementação aqui } Sua saída deverá ser parecida com: Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); // vamos solicitar que o usuário informe um número inteiro System.out.print("Informe um número inteiro: "); int numero = Integer.parseInt(entrada.nextLine()); // vamos verificar se o número informado e par if(isPar(numero)){ System.out.println("O número informado é par"); } else{ System.out.println("O número informado é ímpar"); } System.out.println("\n"); } // um método estático que recebe um número inteiro e retorna true se ele par // e false em caso contrário public static boolean isPar(int n){ // o número é par? if(n % 2 == 0){ return true; } else{ return false; // é ímpar } } } |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como classificar um array em ordem crescente usando o método sort() da classe Arrays do JavaQuantidade de visualizações: 26722 vezes |
Nesta dica mostrarei como podemos usar o método sort() da classe Arrays da linguagens Java para ordenar um vetor de inteiros em ordem crescente. A assinatura do método sort() que usaremos é aquela que recebe apenas um argumento, ou seja, o array a ser ordenado. Note que a implementação de ordenação usada pelo método sort() é a ordenação quicksort, considerada uma das mais rápidas nos dias atuais. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.*; public class Estudos{ public static void main(String[] args){ // vamos declarar e construir um vetor de 5 inteiros int[] valores = new int[5]; // inicializa os elementos do array valores[0] = 23; valores[1] = 65; valores[2] = 2; valores[3] = 87; valores[4] = 34; // exibe os valores dos elementos do array // usando o laço for melhorado System.out.println("Elementos na ordem original:"); for(int valor : valores){ System.out.print(valor + " "); } // ordena os valores em ordem crescente Arrays.sort(valores); // exibe os valores dos elementos do array // usando o laço for melhorado System.out.println("\n\nElementos classificados em ordem crescente:"); for(int valor : valores){ System.out.print(valor + " "); } System.out.println("\n\n"); System.exit(0); } } Ao executarmos este código Java nós teremos o seguinte resultado: Elementos na ordem original: 23 65 2 87 34 Elementos classificados em ordem crescente: 2 23 34 65 87 |
Java ::: Java Swing - JTable e classes relacionadas ::: JTable |
Como aplicar cores alternadas às linhas de uma JTable do Java SwingQuantidade de visualizações: 98 vezes |
Nesta dica eu mostrarei como aplicar o tão falado "efeito zebrinha" nas linhas de uma tabela JTable do Java Swing. A técnica é muito simples é, uma vez aprendida, possibilita a criação de códigos cada vez mais interessantes. Veja como efetuo uma chamada ao método prepareRenderer() para obter um Component representando a célula que está sendo renderizada. Se o índice da linha da célula for par e não estiver selecionada, nós efetuamos uma chamada à setBackground() da classe Component para definir a sua cor de fundo. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import javax.swing.*; import java.awt.*; import javax.swing.table.*; public class Estudos extends JFrame { public Estudos() { super("Exemplo de uma tabela com efeito zebrinha"); // colunas da tabela String[] colunas = {"Cidade", "Estado", "Habitantes"}; // conteúdo da tabela Object[][] conteudo = { {"Goiânia", "GO", "43.023.432"}, {"São Paulo", "SP", "5.343.234"}, {"Rio de Janeiro", "RJ", "6.434.212"}, {"Jussara", "GO", "87.454"}, {"Barra do Garças", "MT", "64.344"} }; // constrói a tabela final JTable tabela = new JTable(conteudo, colunas) { @Override public Component prepareRenderer(TableCellRenderer renderer, int rowIndex, int vColIndex) { Component c = super.prepareRenderer(renderer, rowIndex, vColIndex); if (rowIndex % 2 == 0 && !isCellSelected(rowIndex, vColIndex)) { c.setBackground(Color.YELLOW); } else { c.setBackground(getBackground()); } return c; } }; tabela.setPreferredScrollableViewportSize(new Dimension(350, 150)); Container c = getContentPane(); c.setLayout(new FlowLayout()); JScrollPane scrollPane = new JScrollPane(tabela); c.add(scrollPane); setSize(400, 300); setVisible(true); } public static void main(String args[]) { Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Ao executar este código Java Swing nós teremos o seguinte resultado: |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |