While learning any programming language like C#, Java, C or C++, one of the most common exercise to learn about loops in any of these programming languages is to create star pattern program. So, in this article, I have provided various star and pyramig pattern program in C#.

### 1. Create simple pyramid star pattern using C#

In this example, we will be creating simple pyramid equilateral triangle pattern using stars ( * ) in C#.

``````using System;

public class TriangleProgram
{
public static void Main()
{
Console.WriteLine("Program for displaying pattern of *.");
Console.Write("Enter the maximum number of * line:");

//for loop to work until i = n
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= (n - i); j++)
{
Console.Write(" ");
}
//for loop to print *, for each line
//k < i *2
//so for example, if i =1, it will print star for 1 times, as loop will work  until k < 2, that is 1 time
// when i = 2, condition will be k < 4, means it will print star for 3 times
// and so on.
for (int k = 1; k < i * 2; k++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
}``````

Output:

``````Program for displaying pattern of *.
Enter the maximum number of * line:5
*
***
*****
*******
*********``````

https://dotnetfiddle.net/8m1ASS

In the above code, we are using 3 for loops, one is main loop, which will loop until value of i is not equal to n

Second loop is used to include spaces before printing  star, "*".

Third loop is explained in comments of code, it is used to print "*" and create the desired pattern.

### 2. Printing right angle triangle pattern using * in C#

``````using System;

public class RightAngleTrianglePatternProgram
{
public static void Main()
{
for (int i = 1; i <= 6; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("*");
}

Console.WriteLine();
}

}
}``````

Output:

``````*
**
***
****
*****
******``````

https://dotnetfiddle.net/NrOInw

This example is more simple to understand, in the above code, we are using two for loops.

Loop 1 runs until the value of i is less than or equal to 6, means we will be creating 6 rows to print star.

Loop 2 prints star's, whenever this loop is executed, it will print 1 column for 1st row, as value of i =1, and j =1, when value of i=2, it will print 2 times, as loop can run twice and so on.

### 3. Inverted right angled triangle

In this example, we will create inverted right angle triangle.

``````using System;

public class InvertedRightAngleTriangleProgram
{
public static void Main()
{
//loop to start with 8, this time as we will print inverted triangle
//loop to print number of rows, here 8
for (int row = 8; row >= 1; row--)
{
//loop to print columns
for (int col = 1; col <= row; col++)
{
Console.Write("*");
}
// to place cursor to next line
Console.WriteLine();
}
}
}``````

Output:

``````********
*******
******
*****
****
***
**
*``````

https://dotnetfiddle.net/2LL3fC

I have tried to explain loops and details of this code using comments in the program.

### 4.  Diamond pattern using star in C#

In this program, we will divide our code in 2 parts, first part will print equilateral triangle and then second part will print invereted equilateral triangle

``````using System;

public class DiamondTriangleProgram
{
public static void Main()
{
Console.WriteLine("Program for displaying pattern of *.");
Console.Write("Enter the maximum number of *: (Top to Middle line)");

//loop to print first half or equilateral triangle
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= (n - i); j++)
{
Console.Write(" ");
}
//for loop to print *, for each line
//k < i *2
//so for example, if i =1, it will print star for 1 times, as loop will work  until k < 2, that is 1 time
// when i = 2, condition will be k < 4, means it will print star for 3 times
// and so on.
for (int k = 1; k < i * 2; k++)
{
Console.Write("*");
}
Console.WriteLine();
}

//loop to print inverted equilateral triangle
for (int i = n - 1; i >= 1; i--)
{
for (int j = 1; j <= (n - i); j++)
{
Console.Write(" ");
}
//for loop to print *, for each line
//k < i *2
//so for example, if i =1, it will print star for 1 times, as loop will work  until k < 2, that is 1 time
// when i = 2, condition will be k < 4, means it will print star for 3 times
// and so on.
for (int k = 1; k < i * 2; k++)
{
Console.Write("*");
}
Console.WriteLine();
}

Console.WriteLine();
}
}``````

Output:

``````Program for displaying pattern of *.
Enter the maximum number of *: (Top to Middle line)6
*
***
*****
*******
*********
***********
*********
*******
*****
***
*``````

https://dotnetfiddle.net/7zqKr3

As mentioned above, we have divided code into two parts and doing same thing as mentioned in 1st pattern.

You may also like to read:

Best C# programming course available online (Free OR paid)

How to read and write in Console app using C#?

How to get month name from month number in C#?