Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Usando laços for aninhados para desenhar uma pirâmide de números em Java (com o usuário informando a quantidade de linhas) - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 8791 vezes |
Pergunta/Tarefa: Escreva um programa Java que solicita ao usuário um número inteiro. Este número inteiro deverá estar entre 1 e 12 e será usado como a quantidade de linhas em uma pirâmide de números. Você deverá usar laços for aninhados para controlar as linhas e montar a estrutura desejada. Sua saída deverá ser parecida com: Informe a quantidade de linhas: 5 1 2 1 2 3 2 1 2 3 4 3 2 1 2 3 4 5 4 3 2 1 2 3 4 5 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos solicitar a quantidade de linhas System.out.print("Informe a quantidade de linhas: "); int numLinhas = Integer.parseInt(entrada.nextLine()); // não queremos aceitar quantidades de linhas menores que 1 // ou maiores que 12 if((numLinhas < 1) || (numLinhas > 12)){ System.out.println("O número de linhas deve estar entre 1 e 12"); System.exit(0); } // este laço externo controla as linhas System.out.println(); for(int linha = 1; linha <= numLinhas; linha++){ // este laço gera os espaços antes de cada número nas // linhas da pirâmide for (int coluna = 1; coluna <= (numLinhas - linha); coluna++){ System.out.print(" "); // três espaços aqui } // aqui nós exibimos os números de cada linha do lado // esquerdo da pirâmide, até o centro for(int i = linha; i >= 1; i--){ // o número da linha é maior ou igual a 10? se for // colocamos um espaço antes do número if(i >= 10){ System.out.print(" " + i); } else{ // o número da linha é menor que 10? vamos //colocar dois espaços antes do número System.out.print(" " + i); } } // e finalmente exibimos os números de cada linha no // lado direito da pirâmide for (int i = 2; i <= linha; i++){ // o número da linha é maior ou igual a 10? se for // colocamos um espaço antes do número if(i >= 10){ System.out.print(" " + i); } else{ // o número da linha é menor que 10? vamos // colocar dois espaços antes do número System.out.print(" " + i); } } // gera uma nova linha System.out.println(); } System.out.println(); } } |
![]() |
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 |