To print a square pattern for given integer, the Java code is as follows −
Example
import java.util.*;
import java.lang.*;
public class Demo{
public static void main(String[] args){
Scanner my_scan = new Scanner(System.in);
System.out.println("Enter a range");
int my_num = my_scan.nextInt();
int my_arr[][] = print_pattern(my_num);
int eq_val = 0, sub_val = my_num - 1, n = my_num;
int l = 0;
if (my_num % 2 == 0)
sub_val = my_num - 1;
else
sub_val = my_num;
for (int i = 0; i < n / 2; i++){
for (int j = 0; j < n; j++){
System.out.format("%3d", my_arr[eq_val][j]);
}
System.out.println("");
l = l + 2;
eq_val = l;
}
eq_val = my_num - 1;
for (int i = n / 2; i < n; i++){
for (int j = 0; j < n; j++){
System.out.format("%3d", my_arr[eq_val][j]);
}
sub_val = sub_val - 2;
eq_val = sub_val;
System.out.println("");
}
}
public static int[][] print_pattern(int n){
int my_arr[][] = new int[n][n];
int eq_val = 1;
for (int i = 0; i < n; i++){
for (int j = 0; j < n; j++){
my_arr[i][j] = eq_val;
eq_val++;
}
}
return my_arr;
}
}Output
Enter a range 1 2 3 4 5 11 12 13 14 15 21 22 23 24 25 16 17 18 19 20 6 7 8 9 10
A class named Demo contains the main function. A Scanner instance is created to take the upper limit range. Every integer upto that range is iterated and pattern is printed by calling the ‘print_pattern’ function.
The ‘print_pattern´ function is defined after the main function. It takes the upper range as parameter, and creates a two dimensional array and iterates through it, and defines a value as 1 beforehand, which is incremented after every iteration of the array. The array is returned as output from the function.