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: 9142 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: ----------------------------------------------------------------------
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) {
// 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 |




