Alinear pirámide de asteriscos Javascript

publicado por: Anonymous

Buenas noches y como siempre, gracias de antemano. Hice un ejercicio para escribir con asteriscos en forma piramidal (lo explico mejor en este fragmento de código )

_x000D_

_x000D_

function pyramid(numPisos) {_x000D_
  for (let i = 0; i < numPisos; i++) {_x000D_
    let piso = '';_x000D_
    for (let j = 0; j < i + 1; j++) {_x000D_
      piso = piso + '*';_x000D_
    }_x000D_
    console.log(piso)_x000D_
  }_x000D_
}_x000D_
_x000D_
pyramid(5);

_x000D_

_x000D_

_x000D_

y lo siguiente que quiero hacer es que esta misma pirámide se alinee a la derecha, en vez de a la izquierda como está ahora. Sé que necesito otro bucle for* entre los dos existentes, pero tras probar más de 100 formas lo único que consigo es que la pirámide tenga en cada línea 5 espacios antes de escribir el asterisco.Es decir, solo consigo desplazarla hacia la derecha pero no cambio su alineación.
Por si doy lugar a muchas dudas, mi objetivo sería dejarla así:

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

Muchas gracias.

solución

Siguiendo tu ejemplo, puedes realizarlo como mencionas, agregando otro for.

El código quedaría de la siguiente manera:

_x000D_

_x000D_

    function pyramid(numPisos) {_x000D_
      for (let i = 0; i < numPisos; i++) {_x000D_
        let piso = '';_x000D_
        for (let j = 1; j < numPisos - i; j++) {_x000D_
          piso = piso + ' ';_x000D_
        }_x000D_
    _x000D_
        for (let j = 0; j < i + 1; j++) {_x000D_
          piso = piso + '*';_x000D_
        }_x000D_
        console.log(piso);_x000D_
      }_x000D_
    }_x000D_
    _x000D_
    pyramid(5);

_x000D_

_x000D_

_x000D_

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *