Given an integer N, print N rows of right half pyramid pattern. In right half pattern of N rows, the first row has 1 star, second row has 2 stars and so on till the Nth row which has N stars. All the stars are left aligned.
Examples:
Input: 3
Output:
*
**
***Input: 5
Output:
*
**
***
****
*****
Approach:
The problem can be solved using two nested loops. The outer loop will run for the rows and the inner loop will print the stars.
Step-by-step approach:
-
Run an outer loop from i = 1 to the number of rows.
-
Run an inner loop from j = 1 to i.
- Print an asterisk in each iteration of the inner loop.
- Print a newline character (“\n”) to move to the next row.
-
Run an inner loop from j = 1 to i.
- After N iterations, we will have the right half pyramid pattern.
Below is the implementation of the above approach:
#include <iostream> using namespace std;
int main()
{ // Number of rows
int N = 5;
// Outer loop runs N times, once for each row
for ( int i = 1; i <= N; i++) {
// Inner loop prints 'i' stars
for ( int j = 1; j <= i; j++) {
cout << "*" ;
}
// Move to the next line
cout << "\n" ;
}
return 0;
} |
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
// Number of rows
int N = 5 ;
// Outer loop runs N times, once for each row
for ( int i = 1 ; i <= N; i++) {
// Inner loop prints 'i' stars
for ( int j = 1 ; j <= i; j++) {
System.out.print( "*" );
}
// Move to the next line
System.out.println();
}
}
} |
# Number of rows N = 5
# Outer loop runs N times, once for each row for i in range ( 1 , N + 1 ):
# Inner loop prints 'i' stars
for j in range ( 1 , i + 1 ):
print ( "*" , end = "")
# Move to the next line
print ()
|
using System;
class Program
{ static void Main()
{
// Number of rows
int N = 5;
// Outer loop runs N times, once for each row
for ( int i = 1; i <= N; i++)
{
// Inner loop prints 'i' stars
for ( int j = 1; j <= i; j++)
{
Console.Write( "*" );
}
// Move to the next line
Console.WriteLine();
}
}
} |
// Number of rows let N = 5; // Outer loop runs N times, once for each row for (let i = 1; i <= N; i++) {
// Inner loop prints 'i' stars
for (let j = 1; j <= i; j++) {
process.stdout.write( "*" );
}
// Move to the next line
console.log();
} |
* ** *** **** *****
Time Complexity: O(N2), where N is the number of rows in the pattern.
Auxiliary Space: O(1)