Open In App

Program to print diamond pattern using numbers and stars

Improve
Improve
Like Article
Like
Save
Share
Report

Program to print the following pattern of a half diamond for N.

Pattern for N = 4

Example:

Input: N = 5
Output: 

1

2*3

4*5*6

7*8*9*10

11*12*13*14*15

11*12*13*14*15

7*8*9*10

4*5*6

2*3

1

This program is divided into four parts.

C++




// C++ program to print the half diamond
// pattern using numbers and stars
 
#include <iostream>
using namespace std;
 
void pattern(int N)
{
    int i, j, count = 1;
 
    // This is upper half of pattern
    for (i = 1; i <= N; i++) {
 
        // for loop to display number
        // upto i
        for (j = 1; j <= i; j++) {
 
            if (j < i)
 
                cout << count++ << "*";
 
            else
 
                cout << count++;
        }
        cout << endl;
    }
    count = count - N;
 
    // This is lower half of pattern
    for (i = N; i >= 1; i--) {
 
        // for loop to display number
        // upto i
        for (j = 1; j <= i; j++) {
 
            if (j < i)
 
                cout << count++ << "*";
 
            else
 
                cout << count++;
        }
        count = (count + 1) - 2 * i;
        cout << endl;
    }
}
 
// Driver code
int main()
{
    int N = 4;
 
    // Function call
    pattern(N);
    return 0;
}


Java




// Java program to print the half diamond
// pattern using numbers and stars
public class GFG
{
   
      // Function to print half diamond
      // pattern using numbers and stars
    public static void pattern(int N) {
        int i, j, count = 1;
 
        // This is upper half of pattern
        for (i = 1; i <= N; i++) {
 
            // for loop to display number
            // upto i
            for (j = 1; j <= i; j++) {
 
                if (j < i)
 
                    System.out.print(count++ + "*");
 
                else
 
                    System.out.print(count++);
            }
            System.out.println();
        }
       
        count = count - N;
 
        // This is lower half of pattern
        for (i = N; i >= 1; i--) {
 
            // for loop to display number
            // upto i
            for (j = 1; j <= i; j++) {
 
                if (j < i)
 
                    System.out.print(count++ + "*");
 
                else
 
                    System.out.print(count++);
            }
           
            count = (count + 1) - 2 * i;
            System.out.println();
        }
    }
 
    // Driver code
    public static void main(String[] args) {
        int N = 4;
 
        // Function call
        pattern(N);
    }
}


Python3




def pattern(N):
    count = 1
     
    # This is upper half of pattern
    for i in range(1, N+1):
        for j in range(1, i+1):
            if j < i:
                print(count, end='*')
            else:
                print(count, end='')
            count += 1
        print()
 
    count = count - N
     
    # This is lower half of pattern
    for i in range(N, 0, -1):
        for j in range(1, i+1):
            if j < i:
                print(count, end='*')
            else:
                print(count, end='')
            count += 1
        count = (count + 1) - 2 * i
        print()
 
# Driver code
if __name__ == '__main__':
    N = 4
 
    # Function call
    pattern(N)


C#




// C# program to print the half diamond
// pattern using numbers and stars
using System;
 
public class Program
{
  static void pattern(int N)
  {
    int i, j, count = 1;
 
    // This is upper half of pattern
    for (i = 1; i <= N; i++)
    {
      // for loop to display number
      // upto i
      for (j = 1; j <= i; j++)
      {
        if (j < i)
          Console.Write(count++ + "*");
        else
          Console.Write(count++);
      }
      Console.WriteLine();
    }
 
    count = count - N;
 
    // This is lower half of pattern
    for (i = N; i >= 1; i--)
    {
      // for loop to display number
      // upto i
      for (j = 1; j <= i; j++)
      {
        if (j < i)
          Console.Write(count++ + "*");
        else
          Console.Write(count++);
      }
 
      count = (count + 1) - 2 * i;
      Console.WriteLine();
    }
  }
 
  public static void Main()
  {
    int N = 4;
 
    // Function call
    pattern(N);
  }
}


Javascript




// JavaScript program to print the half diamond
// pattern using numbers and stars
 
 
// Function to print half diamond
// pattern using numbers and stars
function pattern(N) {
    let i, j, count = 1;
 
    // This is upper half of pattern
    for (i = 1; i <= N; i++) {
        // for loop to display number upto i
        let row = "";
        for (j = 1; j <= i; j++) {
            if (j < i) {
                row += count++ + "*";
            }
            else {
                row += count++;
            }
        }
        console.log(row);
    }
    count = count - N;
 
    // This is lower half of pattern
    for (i = N; i >= 1; i--) {
        // for loop to display number upto i
        let row = "";
        for (j = 1; j <= i; j++) {
            if (j < i) {
                row += count++ + "*";
            }
            else {
                row += count++;
            }
        }
        count = (count + 1) - 2 * i;
        console.log(row);
    }
}
 
// Driver code
let N = 4;
 
// Function call
pattern(N);


Output

1
2*3
4*5*6
7*8*9*10
7*8*9*10
4*5*6
2*3
1

Time Complexity: O(N2
Auxiliary Space:  O(1) since we are not using any extra space



Last Updated : 31 Oct, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads