Java Program to Print Half Diamond Star Pattern

Write a Java Program to print half diamond star pattern or the right-side half diamond star pattern using for loop. This example prints the right and inverted right triangles because the combination of both gives the right-side half of the diamond.

package ShapePrograms;

import java.util.Scanner;

public class HalfDiamondPattern1 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		sc = new Scanner(System.in);
		
		int i, j;
		
		System.out.print("Enter Half Diamond Pattern Rows = ");
		int rows = sc.nextInt();
		
		System.out.println("Printing Half Diamond Star Pattern");
		
		for (i = 1 ; i <= rows; i++ ) 
		{
			for (j = 1 ; j <= i; j++ ) 
			{
				System.out.print("*");	
			}
			System.out.println();
		}
		
		for (i = rows - 1 ; i > 0; i-- ) 
		{
			for (j = 1 ; j <= i; j++ ) 
			{
				System.out.print("*");
			}
			System.out.println();
		}
	}
}
Java Program to Print Half Diamond Star Pattern 1

In this Java Half Diamond star pattern program, we replaced the for loop with a while loop.

package ShapePrograms;

import java.util.Scanner;

public class HalfDiamondPattern2 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		sc = new Scanner(System.in);
		
		int i, j;
		
		System.out.print("Enter Half Diamond Pattern Rows = ");
		int rows = sc.nextInt();
		
		i = 1 ;
		while ( i <= rows ) 
		{
			j = 1 ;
			while (j <= i ) 
			{
				System.out.print("*");
				j++;
			}
			System.out.println();
			i++;
		}
		i = rows - 1;
		while ( i > 0) 
		{
			j = 1 ;
			while ( j <= i ) 
			{
				System.out.print("*");
				j++;
			}
			System.out.println();
			i-- ;
		}
	}
}
Enter Half Diamond Pattern Rows = 7

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

Java Program to Print Half Diamond Star Pattern using do while loop

package ShapePrograms;

import java.util.Scanner;

public class HalfDiamondPattern3 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		sc = new Scanner(System.in);
		
		int i, j;
		
		System.out.print("Enter Half Diamond Pattern Rows = ");
		int rows = sc.nextInt();
		
		i = 1 ;
		do
		{
			j = 1 ;
			do
			{
				System.out.print("*");
			} while (++j <= i ) ;
			System.out.println();
		} while ( ++i <= rows ) ;
		i = rows - 1;
		do
		{
			j = 1 ;
			do
			{
				System.out.print("*");
			} while ( ++j <= i ) ;
			System.out.println();
		} while ( --i > 0) ;
	}
}
Enter Half Diamond Pattern Rows = 9

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

In this example, the HalfDiamondPattern function prints the half diamond pattern of a given symbol.

package ShapePrograms;

import java.util.Scanner;

public class HalfDiamondPattern4 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		sc = new Scanner(System.in);
		
		System.out.print("Enter Half Diamond Pattern Rows = ");
		int rows = sc.nextInt();
		
		System.out.print("Enter Character for Hollow Diamond Pattern = ");
		char ch = sc.next().charAt(0);
		
		HalfDiamondPattern(rows, ch);
	}
	
	public static void HalfDiamondPattern(int rows, char ch) {
		int i, j;
		
		for (i = 1 ; i <= rows; i++ ) 
		{
			for (j = 1 ; j <= i; j++ ) 
			{
				System.out.print(ch);	
			}
			System.out.println();
		}
		
		for (i = rows - 1 ; i > 0; i-- ) 
		{
			for (j = 1 ; j <= i; j++ ) 
			{
				System.out.print(ch);
			}
			System.out.println();
		}
	}
}
Enter Half Diamond Pattern Rows = 12
Enter Character for Hollow Diamond Pattern = #

#
##
###
####
#####
######
#######
########
#########
##########
###########
############
###########
##########
#########
########
#######
######
#####
####
###
##
#

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.