jueves, 9 de julio de 2026

Crear pirámide de asteriscos en Java

Ejemplo: si ingresamos el número 5, nos dibujara una pirámide de asteriscos de 5 filas.

Código del ejercicio:

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        int num, lineaActual, espacio, asterisco;
        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese un número: ");
        num = sc.nextInt();
        for(lineaActual = 1; lineaActual <= num; lineaActual++){
            for(espacio = 0; espacio < num - lineaActual; espacio++){
                System.out.print(" ");
            }
            for(asterisco = 0; asterisco < (lineaActual * 2) - 1; asterisco++){
                System.out.print("*");
            }
            System.out.println("");
        }
    }

}

Definición de los códigos del ejercicio:

import java.util.Scanner; --> Importación explícita de Scanner.
Scanner sc = new Scanner(System.in); --> objeto de Scanner con nombre sc.
Scanner --> clase Scanner nos permite ingresar datos por teclado.
new --> palabra reservada que instancia un objeto de la clase Scanner.
System.in --> parámetro que indica de donde proceden los datos, en este caso del teclado.
System.out.print() --> imprime el texto en la consola y el cursor permanece al final del texto en la consola.
System.out.println() --> imprime el texto en la consola y el cursor permanece al comienzo de la siguiente línea en la consola.
int --> dato entero de 32 bits.
nextInt() --> lee un número entero desde consola (teclado).
for --> el ciclo for recorre un bloque de código varias veces.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.

Explicación del Código:

Este programa solicita un número al usuario y dibuja una pirámide de asteriscos (*) con la altura indicada. Para lograrlo utiliza tres ciclos for: uno para recorrer las filas, otro para imprimir los espacios y otro para imprimir los asteriscos.

1. Declaración de variables

int num, lineaActual, espacio, asterisco;  

¿Qué hace?

  • num: guarda la altura de la pirámide.
  • lineaActual: indica la fila que se está dibujando.
  • espacio: controla la cantidad de espacios antes de los asteriscos.
  • asterisco: controla cuántos asteriscos se imprimen en cada fila.

2. Leer el número

Scanner sc = new Scanner(System.in);

System.out.print("Ingrese un número: ");  

num = sc.nextInt();

¿Qué hace?

Pide al usuario un número que representa la altura de la pirámide.

Por ejemplo:

Ingrese un número: 5

3. Recorrer cada fila

for(lineaActual = 1; lineaActual <= num; lineaActual++)  

¿Qué hace?

Este ciclo recorre todas las filas de la pirámide, desde la primera hasta la última.

4. Imprimir los espacios

for(espacio = 0; espacio < num - lineaActual; espacio++){  
    System.out.print(" ");
}

¿Qué hace?

Antes de imprimir los asteriscos agrega espacios para que la pirámide quede centrada.

Mientras más arriba esté la fila, más espacios tendrá.

5. Imprimir los asteriscos

for(asterisco = 0; asterisco < (lineaActual * 2) - 1; asterisco++){  
    System.out.print("*");
}

¿Qué hace?

Imprime la cantidad de asteriscos correspondiente a cada fila.

La fórmula utilizada es:

(lineaActual * 2) - 1

Esto genera siempre un número impar de asteriscos.

Fila Cálculo Asteriscos
1 (1 × 2) - 1 1
2 (2 × 2) - 1 3
3 (3 × 2) - 1 5
4 (4 × 2) - 1 7
5 (5 × 2) - 1 9

6. Pasar a la siguiente línea

System.out.println("");

¿Qué hace?

Después de imprimir todos los asteriscos de una fila, realiza un salto de línea para comenzar la siguiente.

Resultado del programa

Si el usuario ingresa el número 5, la salida será:

    *
   ***
  *****
 *******
*********

Resumen

Este programa utiliza ciclos for para construir una pirámide de asteriscos. El primer ciclo controla las filas, el segundo imprime los espacios necesarios para centrar la figura y el tercero imprime los asteriscos utilizando la fórmula (fila × 2) − 1, logrando que cada fila tenga dos asteriscos más que la anterior y formando una pirámide simétrica.

No hay comentarios.:

Publicar un comentario

Mostrar los números pares y los números divisibles entre 3 del 1 hasta n número en Java

Código del ejercicio: package ejercicio; import java.util.Scanner; public class Ejercicio {     public static void main...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️