Skip to main content

Pattern 5 | Java | MyCodingNetwork | Alok Tripathi (Code 7)

 


Problem Statement:

Write a program to a make rectangle by taking the length and breadth as inputs (in the form of rows and columns) and give output in the following manner:


and


(In simple words, we have printed stars (*) on the boundary positions of the matrix and on the centre positions of the matrix we have printed blank space( ) )

THE CODE:


Sample Outputs:

 

and 


In the above program, two int variables r and c to define the number of rows and columns respectively.

On line 7 and line 9, following two statements are used to accept the input from the user:

int r=sc.nextInt();

int c=sc.nextInt();

 

For taking the input Scanner class has been used, more about Scanner class

Algorithm:

Two for loops are defined:

·        First for loop with counter variable i has initial value 1, conditional statement i less than or equal to r and an updating statement i++.

·        Inside the first loop there is a second for loop, with counter variable j has initial value 1, conditional statement j less than or equal to c and an updating statement j++.

Inside the body of this for statement there is an if-else condition, whose basic aim is to print star (*) on the boundary positions and print a blank space on the non-boundary positions of the matrix.

You can see on the line 15 of the program, the if statement has four conditions (i.e., i==1 || j==1 || i==r || j==c) with logical or operators which means only one condition is sufficient to execute the body of the if statement. Inside its body there is a star (*) print statement. On careful observation, one can easily see that the if statement is true only if the value of i and j points at a boundary position of the matrix.

If none of the four conditions of the if statement is satisfied, then else's body will execute a print statement to print blank space.

·        After the second loop terminates there is a print statement who's only work is to change the row in the output after the second for loop terminates.

·        Again, the first for loop’s condition is checked and if it is true then the algorithm continues.

©2022 Alok Tripathi. All Rights Reserved

 

Hope you liked this explanation, for any doubt or feedback you can comment down in the comment section.