Java Program to Print Square with Spiral Number Pattern

Print Square with Spiral Number Pattern

In the previous article, we have discussed Java Program to Print Square with Repeated Number Decreasing Order Pattern

In this program we are going to see how to print the square with repeated number decreasing number pattern.

Example-1

When size value=5

3 3 3 3 3
3 2 2 2 3
3 2 1 2 3
3 2 2 2 3
3 3 3 3 3
Example-2:

When size value=3

2 2 2
2 1 2
2 2 2

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

Are you wondering how to seek help from subject matter experts and learn the Java language? Go with these Basic Java Programming Examples and try to code all of them on your own then check with the exact code provided by expert programmers.

Approach:

  • Enter total size and store it in an integer variable size.
  • Take two outer for loops to iterate the rows.
  • Take two inner for loops inside each outer for loop to iterate the columns.
  • After each iteration print a new line.

Java Code to Print Square with Spiral Number Pattern

import java.util.Scanner;
class Main
{
public static void main(String[] args)
{
     // Create a new Scanner object
    Scanner scan = new Scanner(System.in);

    //Taking size as input from user
    System.out.print("Size of square(prefer odd number) : ");
    int size = scan.nextInt();
    size = size/2+1;

    //Row and column iterators
    int numberOfRows, numberOfColumns;

    //Outer loop to iterate the rows
    for (numberOfRows = size; numberOfRows > 1; numberOfRows--)
    {
        //Inner loops to iterate the columns
        for (numberOfColumns = size; numberOfColumns >=1; numberOfColumns--)
        {
            if(numberOfRows>numberOfColumns)
                System.out.print(numberOfRows+" ");
            else 
                System.out.print(numberOfColumns+" ");
        }

        for(numberOfColumns=2;numberOfColumns<=size;numberOfColumns++)
        {
            if(numberOfColumns>numberOfRows) 
                System.out.print(numberOfColumns+" ");
            else
                System.out.print(numberOfRows+" ");
        }
        //Prints a newline
        System.out.println();
    }

    //Outer loop to iterate the rows
    for (numberOfRows = 1; numberOfRows <= size; numberOfRows++)
    {
        //Inner loop to iterate the columns
        for (numberOfColumns = size; numberOfColumns >=1; numberOfColumns--)
        {
            if(numberOfRows>numberOfColumns)
                System.out.print(numberOfRows+" ");
            else 
                System.out.print(numberOfColumns+" ");
        }

        for(numberOfColumns=2;numberOfColumns<=size;numberOfColumns++)
        {
            if(numberOfColumns>numberOfRows) 
                System.out.print(numberOfColumns+" ");
            else
                System.out.print(numberOfRows+" ");
        }
        //Prints a newline
        System.out.println();
    }
}
}

Output:

Size of square(prefer odd number) : 5

3 3 3 3 3
3 2 2 2 3
3 2 1 2 3
3 2 2 2 3
3 3 3 3 3

C Code to Print Square with Spiral Number Pattern

#include <stdio.h>

int main()
{
    //Taking size as input from user
    printf("Size of square(enter odd number) : ");
    int size;
    scanf("%d", &size);
    size = size / 2 + 1;

    //Row and column iterators
    int numberOfRows, numberOfColumns;

    //Outer loop to iterate the rows
    for (numberOfRows = size; numberOfRows > 1; numberOfRows--)
    {
        //Inner loop to iterate the columns
        for (numberOfColumns = size; numberOfColumns >= 1; numberOfColumns--)
        {
            if (numberOfRows > numberOfColumns)
                printf("%d ", numberOfRows);
            else
                printf("%d ", numberOfColumns);
        }

        for (numberOfColumns = 2; numberOfColumns <= size; numberOfColumns++)
        {
            if (numberOfColumns > numberOfRows)
                printf("%d ", numberOfColumns);
            else
                printf("%d ", numberOfRows);
        }
        //Prints a newline
        printf("\n");
    }

    //Outer loop to iterate the rows
    for (numberOfRows = 1; numberOfRows <= size; numberOfRows++)
    {
        //Inner loop to iterate the columns
        for (numberOfColumns = size; numberOfColumns >= 1; numberOfColumns--)
        {
            if (numberOfRows > numberOfColumns)
                printf("%d ", numberOfRows);
            else
                printf("%d ", numberOfColumns);
        }

        for (numberOfColumns = 2; numberOfColumns <= size; numberOfColumns++)
        {
            if (numberOfColumns > numberOfRows)
                printf("%d ", numberOfColumns);
            else
                printf("%d ", numberOfRows);
        }
        //Prints a newline
        printf("\n");
    }
    return 0;
}

Output:

Size of square(enter odd number) : 5

3 3 3 3 3
3 2 2 2 3
3 2 1 2 3
3 2 2 2 3
3 3 3 3 3

C++ Code to Print Square with Spiral Number Pattern

#include <iostream>
using namespace std;
int main(int argc, char const *argv[])
{
    //Taking size as input from user
    printf("Size of square(enter odd number) : ");
    int size;
    cin >> size;
    size = size / 2 + 1;

    //Row and column iterators
    int numberOfRows, numberOfColumns;

    //Outer loop to iterate the rows
    for (numberOfRows = size; numberOfRows > 1; numberOfRows--)
    {
        //Inner loop to iterate the columns
        for (numberOfColumns = size; numberOfColumns >= 1; numberOfColumns--)
        {
            if (numberOfRows > numberOfColumns)
                cout << numberOfRows << " ";
            else
                cout << numberOfColumns << " ";
        }

        for (numberOfColumns = 2; numberOfColumns <= size; numberOfColumns++)
        {
            if (numberOfColumns > numberOfRows)
                cout << numberOfColumns << " ";
            else
                cout << numberOfRows << " ";
        }
        //Prints a newline
        cout << endl;
    }

    //Outer loop to iterate the rows
    for (numberOfRows = 1; numberOfRows <= size; numberOfRows++)
    { //Inner loop to iterate the columns
        for (numberOfColumns = size; numberOfColumns >= 1; numberOfColumns--)
        {
            if (numberOfRows > numberOfColumns)
                cout << numberOfRows << " ";
            else
                cout << numberOfColumns << " ";
        }

        for (numberOfColumns = 2; numberOfColumns <= size; numberOfColumns++)
        {
            if (numberOfColumns > numberOfRows)
                cout << numberOfColumns << " ";
            else
                cout << numberOfRows << " ";
        }
        //Prints a newline
        cout << endl;
    }
    return 0;
}
Output:

Size of square(enter odd number) : 5

3 3 3 3 3
3 2 2 2 3
3 2 1 2 3
3 2 2 2 3
3 3 3 3 3

Are you seeking professional help for coding in the Java programming language? The tutorial of Java Programming Examples for beginners and experts will strongly improve your coding skills then you can program for any logic in Java.

Related Java Number Pattern Programs: