Programa C para imprimir patrón de diamante

Aquí, veremos cómo imprimir una pirámide en forma de diamante completo usando el programa C. A continuación se muestran los ejemplos:

Entrada: 6
Salida:

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

Entrada: 8
Salida:

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

Acercarse:

1. El primer paso es imprimir la parte superior del diamante utilizando tres bucles anidados. 

  1. El primer ciclo maneja el número de filas.
  2. El segundo bucle es para el espacio inicial antes de las estrellas.
  3. El tercer bucle imprime las estrellas. 

2. Ahora repite de nuevo los pasos 1, 2 y 3 en orden inverso para imprimir la parte inferior del diamante.

A continuación se muestra el programa C para imprimir la pirámide en forma de diamante completo:

C

// C program to print full
// diamond shape pyramid
#include <stdio.h>
  
// Prints diamond pattern
void printDiamond(int n)
{
    int space = n - 1;
  
    // Run loop till the number 
    // of rows
    for (int i = 0; i < n; i++)
    {
        // Loop for the initially space 
        // before the star printing
        for (int j = 0; j < space; j++)
            printf(" ");
  
        // Print the i+1 stars
        for (int j = 0; j <= i; j++)
            printf("* ");
  
        printf("\n");
        space--;
    }
  
    // Repeat again in the reverse order
    space = 0;
  
    // run a loop till number of rows
    for (int i = n; i > 0; i--) 
    {
        // Loop for the initially space 
        // before the star printing
        for (int j = 0; j < space; j++)
            printf(" ");
  
        // Print the i stars
        for (int j = 0; j < i; j++)
            printf("* ");
  
        printf("\n");
        space++;
    }
}
  
// Driver code
int main()
{
    printDiamond(8);
    return 0;
}
Producción

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

Complejidad de tiempo: O(n*n) ya que aquí estamos recorriendo las filas y columnas de una cuadrícula para imprimir espacios ‘ ‘ y estrellas ‘*’.

Espacio Auxiliar: O(1), No se usa Espacio extra.

Publicación traducida automáticamente

Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *