Programa para imprimir patrones de rombos sólidos y huecos

Para cualquier número dado n, imprima Cuadrados huecos y sólidos y Rombos hechos con estrellas (*). 
Ejemplos: 
 

Input : n = 4
Output : 
Solid Rhombus:
   ****
  ****
 ****
****

Hollow Rhombus:
   ****
  *  *
 *  *
****

1. Rombo sólido: hacer un rombo sólido es un poco similar a hacer un cuadrado sólido en lugar del concepto de que para cada i-ésima fila tenemos ni espacios en blanco antes de las estrellas como: 
– – – **** 
– – **** 
– ** ** 
**** 
2. Rombo Hueco: Formación de Rombo Hueco utiliza la idea detrás de la formación de un cuadrado hueco y un rombo sólido. Un cuadrado hueco con ni espacios en blanco antes de las estrellas en cada i-ésima fila da como resultado la formación de un rombo hueco. 
 

C/C++

 

C++

// C++ program to print
// hollow and solid rhombus patterns
 
#include <bits/stdc++.h>
using namespace std;
 
 
// Function for Solid Rhombus
void solidRhombus(int rows)
{
    int i, j;
    for (i=1; i<=rows; i++)
    {
        // Print trailing spaces
        for (j=1; j<=rows - i; j++)
            cout << " ";
             
        // Print stars after spaces
        for (j=1; j<=rows; j++)
            cout << "*";
             
        // Move to the next line/row
        cout << "\n";
    }
}
 
// Function for Rhombus
void hollowRhombus(int rows)
{
    int i, j;
    for (i=1; i<=rows; i++)
    {
        // Print trailing spaces
        for (j=1; j<=rows - i; j++)
            cout << " ";
             
        // Print stars after spaces
        // Print stars for each solid rows
        if (i==1 || i==rows)
            for (j=1; j<=rows; j++)
                cout << "*";
                 
        // stars for hollow rows
        else
            for (j=1; j<=rows; j++)
                if (j==1 || j==rows)
                    cout << "*";
                else
                    cout << " ";
        // Move to the next line/row
        cout << "\n";
    }
}
 
// utility program to print all patterns
void printPattern(int rows)
{
    cout << "\nSolid Rhombus:\n";
    solidRhombus(rows);
     
    cout << "\nHollow Rhombus:\n";
    hollowRhombus(rows);
}
 
// driver program
int main()
{
    int rows = 5;
    printPattern (rows);
    return 0;
}

Java

// Java program to print
// hollow and solid rhombus patterns
import java.io.*;
 
class GFG
{
    // Function for Solid Rhombus
    static void solidRhombus(int rows)
    {
        int i, j;
        for (i=1; i<=rows; i++)
        {
            // Print trailing spaces
            for (j=1; j<=rows - i; j++)
                System.out.print(" ");
              
            // Print stars after spaces
            for (j=1; j<=rows; j++)
                System.out.print("*");
              
            // Move to the next line/row
            System.out.println();
        }
    }
  
    // Function for Hollow Rhombus
    static void hollowRhombus(int rows)
    {
        int i, j;
        for (i=1; i<=rows; i++)
        {
            // Print trailing spaces
            for (j=1; j<=rows - i; j++)
                System.out.print(" ");
              
            // Print stars after spaces
            // Print stars for each solid rows
            if (i==1 || i==rows)
                for (j=1; j<=rows; j++)
                    System.out.print("*");
                  
            // stars for hollow rows
            else
                for (j=1; j<=rows; j++)
                    if (j==1 || j==rows)
                        System.out.print("*");
                    else
                        System.out.print(" ");
            // Move to the next line/row
            System.out.println();
        }
    }
  
    // utility program to print all patterns
    static void printPattern(int rows)
    {
        System.out.println("Solid Rhombus:");
        solidRhombus(rows);
      
        System.out.println("Hollow Rhombus:");
        hollowRhombus(rows);
    }
     
    // driver program
    public static void main (String[] args)
    {
        int rows = 5;
        printPattern (rows);
    }
}
 
// Contributed by Pramod Kumar

Python 3

# Python 3 program to print
# hollow and solid rhombus patterns
 
# Function for Solid Rhombus
 
def solidRhombus(rows):
     
    for i in range (1,rows + 1):
         
        # Print trailing spaces
         
        for j in range (1,rows - i + 1):
            print (end=" ")
             
        # Print stars after spaces
         
        for j in range (1,rows + 1):
            print ("*",end="")
             
        # Move to the next line/row
        print()
 
# Function for Hollow Rhombus
 
def hollowRhombus(rows):
     
    for i in range (1, rows + 1):
        # Print trailing spaces
         
        for j in range (1, rows - i + 1):
            print (end=" ")
             
        # Print stars after spaces
        # Print stars for each solid rows
         
        if i == 1 or i == rows:
            for j in range (1, rows + 1):
                print ("*",end="")
                 
        # stars for hollow rows
        else:
            for j in range (1,rows+1):
                if (j == 1 or j == rows):
                    print ("*",end="")
                else:
                    print (end=" ")
        # Move to the next line/row
        print()
 
# utility program to print all patterns
def printPattern(rows):
     
    print ("Solid Rhombus:")
    solidRhombus(rows)
     
    print("\nHollow Rhombus:")
    hollowRhombus(rows)
 
# driver program
 
if __name__ == "__main__":
     
    rows = 5
    printPattern (rows)

C#

// C# program to print
// hollow and solid rhombus patterns
using System;
 
class GFG
{
    // Function for Solid Rhombus
    static void solidRhombus(int rows)
    {
        int i, j;
        for (i=1; i<=rows; i++)
        {
            // Print trailing spaces
            for (j=1; j<=rows - i; j++)
                Console.Write(" ");
             
            // Print stars after spaces
            for (j=1; j<=rows; j++)
                Console.Write("*");
             
            // Move to the next line/row
            Console.WriteLine();
        }
    }
 
    // Function for Hollow Rhombus
    static void hollowRhombus(int rows)
    {
        int i, j;
        for (i=1; i<=rows; i++)
        {
            // Print trailing spaces
            for (j=1; j<=rows - i; j++)
                Console.Write(" ");
             
            // Print stars after spaces
            // Print stars for each solid rows
            if (i==1 || i==rows)
                for (j=1; j<=rows; j++)
                    Console.Write("*");
                 
            // stars for hollow rows
            else
                for (j=1; j<=rows; j++)
                    if (j==1 || j==rows)
                        Console.Write("*");
                    else
                    Console.Write(" ");
            // Move to the next line/row
            Console.WriteLine();
        }
    }
 
    // utility program to print all patterns
    static void printPattern(int rows)
    {
        Console.WriteLine("\nSolid Rhombus:\n");
        solidRhombus(rows);
     
        Console.WriteLine("\nHollow Rhombus:\n");
        hollowRhombus(rows);
    }
     
    // driver program
    public static void Main ()     {
        int rows = 5;
        printPattern (rows);
    }
}
 
// Contributed by vt_m.

PHP

<?php
// php program to print hollow`
// and solid rhombus patterns
 
// Function for Solid Rhombus
function solidRhombus($rows)
{
 
    for ($i = 1; $i <= $rows; $i++)
    {
         
        // Print trailing spaces
        for ($j = 1; $j <= $rows - $i; $j++)
            echo " ";
             
        // Print stars after spaces
        for ($j = 1; $j <= $rows; $j++)
            echo "*";
             
        // Move to the next line/row
        echo "\n";
    }
}
 
// Function for Hollow Rhombus
function hollowRhombus($rows)
{
    for ($i = 1; $i <= $rows; $i++)
    {
         
        // Print trailing spaces
        for ($j = 1; $j <= $rows - $i; $j++)
            echo " ";
             
        // Print stars after spaces
        // Print stars for each solid $rows
        if ($i == 1 || $i == $rows)
            for ($j = 1; $j <= $rows; $j++)
                echo "*";
                 
        // stars for hollow $rows
        else
            for ($j = 1; $j <= $rows; $j++)
                if ($j == 1 || $j == $rows)
                    echo "*";
                else
                    echo " ";
        // Move to the next line/row
        echo "\n";
    }
}
 
// utility program to print
// all patterns
function printPattern($rows)
{
    echo "\nSolid Rhombus:\n";
    solidRhombus($rows);
     
    echo "\nHollow Rhombus:\n";
    hollowRhombus($rows);
}
 
    // Driver Code
    $rows = 5;
    printPattern ($rows);
     
// This code is contributed by mits
?>

Javascript

<script>
      // JavaScript program to print
      // hollow and solid rhombus patterns
 
      // Function for Solid Rhombus
      function solidRhombus(rows)
      {
        var i, j;
        for (i = 1; i <= rows; i++)
        {
         
          // Print trailing spaces
          for (j = 1; j <= rows - i; j++) document.write("  ");
 
          // Print stars after spaces
          for (j = 1; j <= rows; j++) document.write("*");
 
          // Move to the next line/row
          document.write("<br>");
        }
      }
 
      // Function for Rhombus
      function hollowRhombus(rows)
      {
        var i, j;
        for (i = 1; i <= rows; i++)
        {
         
          // Print trailing spaces
          for (j = 1; j <= rows - i; j++) document.write("  ");
 
          // Print stars after spaces
          // Print stars for each solid rows
          if (i == 1 || i == rows)
            for (j = 1; j <= rows; j++) document.write("*");
             
          // stars for hollow rows
          else
            for (j = 1; j <= rows; j++)
              if (j == 1 || j == rows) document.write("*");
              else document.write("  ");
               
          // Move to the next line/row
          document.write("<br>");
        }
      }
 
      // utility program to print all patterns
      function printPattern(rows)
      {
        document.write("Solid Rhombus:<br>");
        solidRhombus(rows);
 
        document.write("Hollow Rhombus:<br>");
        hollowRhombus(rows);
      }
 
      // driver program
      var rows = 5;
      printPattern(rows);
       
      // This code is contributed by rdtank.
    </script>

Producción: 
 

Solid Rhombus:
    *****
   *****
  *****
 *****
*****

Hollow Rhombus:
    *****
   *   *
  *   *
 *   *
*****

Complejidad temporal: O(r 2 ), donde r representa el número dado de filas.
Espacio auxiliar: O(1), no se requiere espacio adicional, por lo que es una constante.

Este artículo es una contribución de Shivam Pradhan (anuj_charm) . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *