Aquí construiremos un programa C++ para imprimir una pirámide invertida usando 3 enfoques diferentes:
- Medio invertido usando «*»
- Medio invertido usando números
- Pirámide invertida completa usando ” * “
1. Programa para imprimir medio triángulo invertido usando ” * “
Aporte:
n=4
Producción:
* * * * * * * * * *
Como podemos observar en el ejemplo dado, el número de filas impresas es igual a la entrada dada n y el número de columnas impresas disminuye de n a 1. Por lo tanto, ejecutamos el bucle for externo de n a 1 y el bucle for interno de 1 al número de fila
Ejemplo:
C++
// C++ program to demonstrate // inverted half triangle using * using namespace std; #include <bits/stdc++.h> #include <iostream> int main() { int n = 4; for (int i = n; i >= 1; --i) { for (int j = 1; j <= i; ++j) { cout << "* "; } cout << endl; } return 0; }
* * * * * * * * * *
2. Programa para imprimir una media pirámide invertida usando números
Aporte
n=4
Producción:
1 2 3 4 1 2 3 1 2 1
Al observar el ejemplo dado, podemos intentar ejecutar el bucle for externo de n a 1 y para cada recorrido de fila, debemos imprimir los elementos desde 1 hasta el número de fila. Esto significa que en lugar de imprimir * necesitamos imprimir ese número de columna específico.
Ejemplo:
C++
// C++ program to demonstrate // inverted half triangle using Digits using namespace std; #include <bits/stdc++.h> #include <iostream> int main() { int n=4; // took a default value for (int i = n; i >= 1; --i) { // loop for iterating for (int j = 1; j <= i; ++j) { // loop for printing cout << j << " "; } cout << endl; } return 0; }
1 2 3 4 1 2 3 1 2 1
3. Programa para imprimir pirámide completa invertida usando ” * “
Aporte:
n = 4
Producción:
* * * * * * * * * * * * * * * * * * * * * * * * *
Ejemplo:
C++
// C++ program to demonstrate // inverted pyramid using * using namespace std; #include <bits/stdc++.h> #include <iostream> int main() { int n=5; for (int i = n; i >= 1; --i) { for (int k = 0; k < n - i; ++k) { cout << " "; } for (int j = i; j <= 2 * i - 1; ++j) { cout << "* "; } for (int j = 0; j < i - 1; ++j) { cout << "* "; } cout << endl; } return 0; }
* * * * * * * * * * * * * * * * * * * * * * * * *
Publicación traducida automáticamente
Artículo escrito por bskapardi2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA