Dado un número entero N , la tarea es imprimir un patrón de media estrella de diamante.
*
**
***
****
*****
******
*****
****
***
**
*
Ejemplos:
Input: N = 3 Output: * ** *** ** * Input: N = 6 Output: * ** *** **** ***** ****** ***** **** *** ** *
Enfoque: La idea es dividir el patrón en dos mitades, la mitad superior y la mitad inferior. Luego imprima luego por separado con la ayuda de los bucles . La observación clave para imprimir la mitad superior y la mitad inferior se describe a continuación:
- Mitad superior: La mitad superior del patrón contiene la estrella ‘*’ en orden creciente donde la i -ésima línea contiene el siguiente número de estrellas:
Number of '*' in ith line =
- Mitad inferior: La mitad inferior del patrón contiene la estrella ‘*’ en orden decreciente donde la i -ésima línea contiene el siguiente número de estrellas:
Number of '*' in ith line =
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation to print the // half diamond star pattern #include <iostream> using namespace std; // Function to print the // half diamond star pattern void halfDiamondStar( int N) { int i, j; // Loop to print the upper half // diamond pattern for (i = 0; i < N; i++) { for (j = 0; j < i + 1; j++) cout << "*" ; cout << "\n" ; } // Loop to print the lower half // diamond pattern for (i = 1; i < N; i++) { for (j = i; j < N; j++) cout << "*" ; cout << "\n" ; } } // Driver Code int main() { int N = 5; // Function Call halfDiamondStar(N); } |
Java
// Java implementation to print the // half diamond star pattern import java.util.*; class GFG{ // Function to print the // half diamond star pattern static void halfDiamondStar( int N) { int i, j; // Loop to print the upper half // diamond pattern for (i = 0 ; i < N; i++) { for (j = 0 ; j < i + 1 ; j++) System.out.print( "*" ); System.out.print( "\n" ); } // Loop to print the lower half // diamond pattern for (i = 1 ; i < N; i++) { for (j = i; j < N; j++) System.out.print( "*" ); System.out.print( "\n" ); } } // Driver Code public static void main(String[] args) { int N = 5 ; // Function Call halfDiamondStar(N); } } // This code is contributed by Rohit_ranjan |
Python3
# Python3 implementation to print the # half diamond star pattern # Function to print the # half diamond star pattern def halfDiamondStar(N): # Loop to print the upper half # diamond pattern for i in range (N): for j in range ( 0 , i + 1 ): print ( "*" , end = "") print () # Loop to print the lower half # diamond pattern for i in range ( 1 , N): for j in range (i, N): print ( "*" , end = "") print () # Driver Code N = 5 ; # Function Call halfDiamondStar(N); # This code is contributed by skylags |
C#
// C# implementation to print the // half diamond star pattern using System; class GFG{ // Function to print the // half diamond star pattern static void halfDiamondStar( int N) { int i, j; // Loop to print the upper half // diamond pattern for (i = 0; i < N; i++) { for (j = 0; j < i + 1; j++) Console.Write( "*" ); Console.Write( "\n" ); } // Loop to print the lower half // diamond pattern for (i = 1; i < N; i++) { for (j = i; j < N; j++) Console.Write( "*" ); Console.Write( "\n" ); } } // Driver Code public static void Main(String[] args) { int N = 5; // Function Call halfDiamondStar(N); } } // This code is contributed by Rohit_ranjan |
Producción:
* ** *** **** ***** **** *** ** *