Programa para imprimir el patrón ‘D’

En este artículo, aprenderemos cómo imprimir el patrón D usando estrellas y espacios en blanco. Dado un número n, escribiremos un programa para imprimir el patrón D sobre n líneas o filas.
Ejemplos: 
 

Input : n = 9
Output : 
 ******  
 *     * 
 *     * 
 *     * 
 *     * 
 *     * 
 *     * 
 *     * 
 ******  

Input : n = 12
Output :
 *********  
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *        * 
 *********  

Si tratamos de analizar esta imagen con una array (fila, columna) y los círculos verdes representan la posición de las estrellas en el patrón D, aprenderemos los pasos. Aquí estamos realizando las operaciones por columnas. Entonces, para la primera línea de estrellas, establecemos la primera condición if, donde la posición de la columna con 1 obtiene las estrellas. Luego, todas las columnas mayores que 1 y menores que (n-2) y la posición de la fila igual a 1 y n-1 obtienen las estrellas. Finalmente, todas las columnas con valor n-2 y fila no igual a 0 o 6 obtienen las estrellas, formando así el patrón “D”. Los otros pasos se explican por sí mismos y se pueden entender a partir de la posición de las filas y columnas en el diagrama.
Nota: elija un valor mínimo de 4 para «n» para obtener una demostración visible del patrón «D». 
 

C++

// C++ program to print the pattern "D"
#include <bits/stdc++.h>
using namespace std;
 
// Function to generate the pattern D
void D_Pattern(int n){
     
    // loop for rows
    for (int i = 0; i < n; i++){
         
        // loop for columns
        for (int j = 0; j <= n; j++){
             
            // Logic to generate stars for *
            if (j == 1 || ((i == 0 || i == n-1) &&
               (j > 1 && j < n-2)) || (j == n-2 &&
                i != 0 && i != n-1))
                cout<< "*";
                 
            // For the spaces
            else
                cout<< " ";
        }
         
    // For changing line
    cout<< endl;
    }
}
 
// Driver Code
int main()
{
  int n = 9;
   
  // Function calling
  D_Pattern(n);
  return 0;
}
 
// This article is contributed by mits

Java

// Java program to print the pattern "D"
import java.util.*;
 
class GFG {
 
    // Function to generate the pattern D
    static void D_Pattern(int n){
         
        // loop for rows
        for (int i = 0; i < n; i++){
             
            // loop for columns
            for (int j = 0; j <= n; j++){
                 
                // Logic to generate stars
                // for *
                if (j == 1 || ((i == 0 ||
                             i == n-1) &&
                   (j > 1 && j < n-2)) ||
                   (j == n-2 && i != 0 &&
                               i != n-1))
                    System.out.print("*");
                     
                // For the spaces
                else
                    System.out.print(" ");
            }
             
        // For changing line
        System.out.println();
        }
    }
     
    // Driver Code
    public static void main(String[] args)
    {
        int n = 9;
 
        // Function calling
        D_Pattern(n);
    }
}
 
// This code is contributed by ChitraNayal.

Python3

# Python program to print the pattern "D"
# Function to generate the pattern D
def D_Pattern(string, n):
     
    # loop for rows
    for i in range(0, n):   
         
        # loop for columns
        for j in range(0, n):
             
            # Logic to generate stars for *
            if (j == 1 or ((i == 0 or i == n-1) and
               (j > 1 and j < n-2)) or (j == n-2 and
                i != 0 and i != n-1)): 
                string = string + "*"   
             
            # For the spaces
            else:     
                string = string + " "
                 
        # For changing line
        string = string + "\n"   
    return(string);
 
# Driver Code
string = "";
n = 9
print(D_Pattern(string, n));

C#

// C# program to print
// the pattern "D"
using System;
 
class GFG
{
    // Function to generate
    // the pattern D
    static void D_Pattern(int n)
    {
         
        // loop for rows
        for (int i = 0; i < n; i++)
        {
             
            // loop for columns
            for (int j = 0; j <= n; j++)
            {
                 
                // Logic to generate
                // stars for *
                if (j == 1 || ((i == 0 ||
                           i == n - 1) &&
                 (j > 1 && j < n - 2)) ||
                 (j == n - 2 && i != 0 &&
                          i != n - 1))
                    Console.Write("*");
                     
                // For the spaces
                else
                    Console.Write(" ");
            }
             
        // For changing line
        Console.WriteLine();
        }
    }
     
    // Driver Code
    static public void Main ()
    {
        int n = 9;
         
        // Function calling
        D_Pattern(n);
    }
}
 
// This code is contributed by ajit

PHP

<?php
 
// PHP program to print the pattern "D"
// Function to generate the pattern D
function D_Pattern($n){
     
    # loop for rows
    for ($i = 0; $i < $n; $i++){
         
        # loop for columns
        for ($j = 0; $j <= $n; $j++){
             
            # Logic to generate stars for *
            if ($j == 1 or (($i == 0 or $i == $n-1) and
               ($j > 1 and $j < $n-2)) or ($j == $n-2 and
                $i != 0 and $i != $n-1))
                echo "*";
                 
            # For the spaces
            else 
                echo " ";    
        }
         
    # For changing line
    echo "\n";
    }
}
 
// Driver Code
$n = 9;
D_Pattern($n)
?>

Javascript

<script>
 
// JavaScript program to print the pattern "D"
 
      // Function to generate the pattern D
      function D_Pattern(n) {
       
        // loop for rows
        for (var i = 0; i < n; i++) {
         
          // loop for columns
          for (var j = 0; j <= n; j++) {
           
            // Logic to generate stars for *
            if (
              j == 1 ||
              ((i == 0 || i == n - 1) && j > 1 && j < n - 2) ||
              (j == n - 2 && i != 0 && i != n - 1)
            )
              document.write("*");
            // For the spaces
            else document.write("  ");
          }
 
          // For changing line
          document.write("<br>");
        }
      }
 
      // Driver Code
 
      var n = 9;
 
      // Function calling
      D_Pattern(n);
       
</script>

Producción : 

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

Complejidad de tiempo: O(n 2 ), donde n representa la entrada dada.
Espacio auxiliar: O(1), no se requiere espacio adicional, por lo que es una constante.

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka 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 *