# Java Program to Diagonal and sides of a Rhombus Star Pattern

## Program to Diagonal and sides of a Rhombus Star Pattern

In this article we are going to see how to print Diagonal and sides of a Rhombus star pattern.

Example-1

For size value =9
*
***
* * *
*   *   *
*********
*   *   *
* * *
***
*
Example-2

For size value = 7
*
***
*  *  *
*******
*  *  *
***
*

Now, let’s see the actual program to print it.

Provided list of Simple Java Programs is specially designed for freshers and beginners to get familiarize with the concepts of Java programming language and become pro in coding.

Approach:

• Enter the size and store it in an integer variable size.
• Take first for loop to print all rows.
• Take second/inner for loop to print column values.
• Use an if-else for the vertical and horizontal lines
• Then go on printing the star symbols according to the iteration and if else condition.

JAVA Code:

### Method-1 : Static Star Character

import java.util.Scanner;
class pattern
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.print("Size : ");
//Taking size as input from user
int r, c, size=scan.nextInt();

int uh = (size - 1) / 2;
//Logical equation to print the upper half
int lh = (size * 3) / 2 - 1;
//Logical equation to print the lower half

for (r = 0; r < size; r++)
{ //Outer Loop
for (c = 0; c < size; c++)
//Inner Loop
{
if (r + c == uh || r - c == uh || c - r == uh || r + c == lh || r == uh || c == uh)
//Condition to print star
System.out.print("*");
else
System.out.print(" ");
}
//Prints a new line
System.out.println();
}
}

Output-

Size : 7
*
***
* * *
*******
* * *
***
*

### Method-2 : User Input Character

import java.util.Scanner;
class Main
{
public static void main(String[] args)
{
int r, c, size;
char sym;
Scanner scan = new Scanner(System.in);

System.out.print("Size : ");
//Taking size as input from user
size=scan.nextInt();

System.out.print("Character : ");
//Taking size as input from user
sym=scan.next().charAt(0);

int uh = (size - 1) / 2;
//Logical equation to print the upper half
int lh = (size * 3) / 2 - 1;
//Logical equation to print the lower half

for (r = 0; r < size; r++)
{ //Outer Loop
for (c = 0; c < size; c++)
//Inner Loop
{
if (r + c == uh || r - c == uh || c - r == uh || r + c == lh || r == uh || c == uh)
//Condition to print star
System.out.print(sym);
else
System.out.print(" ");
}
//Prints a new line
System.out.println();
}
}
}


Output-

Size : 7
Character : *
*
***
* * *
*******
* * *
***
*

C Code:

#include <stdio.h>
int main(int argc, char const *argv[])
{
printf("Size : ");
//Taking size as input from user
int size, r, c;
scanf("%d", &size);

int uh = (size - 1) / 2;
//Logical equation to print the upper half
int lh = (size * 3) / 2 - 1;
//Logical equation to print the lower half

for (r = 0; r < size; r++)
{ //Outer Loop
for (c = 0; c < size; c++)
//Inner Loop
{
if (r + c == uh || r - c == uh || c - r == uh || r + c == lh || r == uh || c == uh)
//Condition to print star//Condition to print star
printf("*");
else
printf(" ");
}
//Prints a new line
printf("\n");
}
return 0;
}

Output-

Size : 7
*
***
* * *
*******
* * *
***
*

C++ Code:

#include <iostream>
using namespace std;
int main(int argc, char const *argv[])
{
cout << "Size : ";
//Taking size as input from user
int size, r, c;
cin >> size;

int uh = (size - 1) / 2;
//Logical equation to print the upper half
int lh = (size * 3) / 2 - 1;
//Logical equation to print the lower half

for (r = 0; r < size; r++)
{ //Outer Loop
for (c = 0; c < size; c++)
//Inner Loop
{
if (r + c == uh || r - c == uh || c - r == uh || r + c == lh || r == uh || c == uh)
//Condition to print star
cout << "*";
else
cout << " ";
} //To print a new line
cout << endl;
}
return 0;
}


Output-

Size : 7
*
***
* * *
*******
* * *
***
*

Related Java Star Pattern Programs: