Skip to main content

Pattern 4 | Java | MyCodingNetwork | Alok Tripathi (Code 6)


Problem Statement:

Write a program to draw the following pattern where number of rows are decided by the user and given to the program as input:

        *

      * *

    * * *

  * * * *

* * * * *

* * * * * *

(Take a variable n which takes the number of rows as input from the user, For above example, n=6)



OUTPUT:


The above program is the extension of the previous program (Pattern #3). This program asks the user to input the number of rows that it wants in the program. For accepting the input, the program has Scanner class which has been extracted from the package java.util. In this program, we will learn how to receive data from the user.

If you remember in three previous patterns, the program itself had the input of number of rows where n=8, but now the user will tell the program how many rows are to be added.

 

Simplification

1.    In Line 1, the java.util package has been imported, to use the Scanner class.

import java.util.Scanner;

2.    Further, in line 4 an object sc of Scanner class has been created using the following Syntax:

Scanner sc=new Scanner(System.in);

 

3.    Line 5 has a print statement, asking the user to input the number of rows:

System.out.println("Enter No. of Rows");

 after that on Line 6 there is an int variable n to accept an integer value (you can compare this to the previous pattern code where 8 was already assigned)

int n=sc.nextInt();

 

5. The first for loop is used to define the rows. 

It is having a counter variable i with an initial value of 0 followed by a conditional statement, i less than n. It is having an updation statement i++. Inside the loop's body we further have two for loops and a print statement System.out.println( ) for jumping on to the next line( to change the row) after each column in the particular row has been printed.

6. The second for loop is used to print white space. 

It is having a counter variable j with an initial value of 0 followed by a conditional statement, j less than n-1-i. It is having an updating statement j++. Inside the loop's body a print statement System.out.print("  ") for printing white space characters column-wise, i.e., columns where *(star) is not required.

 

7. The third for loop is used to print stars(*). 

This loop will start after the second for loop terminates. It is having a counter variable k with an initial value of 0 followed by a conditional statement, k less than or equal to i. It is having an updating statement k++. Inside the loop's a print statement System.out.print("* ") for printing *(star) column-wise. 

 

When the third loop terminates the execution will jump on the print statement of the first for loop, that is, System.out.println( ) which changes the row in the output. After this, execution will check the conditional statement in the first for loop, if the condition is true the process will continue and if the condition is false the entire loop terminates.

 

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

 


Popular posts from this blog

Pattern 6 | Java | MyCodingNetwork | Alok Tripathi (Code 8)

Problem Statement: Write a program to make a square and mark out its diagonals. Accept the length as input from the user 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 Output: In the above program, two int variables r to accept the length of square as input. On line 7, following statement is used to accept the input from the user: int r = 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 ini...

Kadane's Algorithm | The-Algorithm-Drive | MyCodingNetwork

Kadane's Algorithm Kadane’s algorithm is used to find largest contagious subarray sum for a given array. It is one of the most common types of algorithms used to find the subarray with largest sum. The time complexity of this algorithm is O(N) .     Output :            Code Explanation: On line 4, there’s an  int  array variable a[ ], which is the array on which we have to perform our task. We have stored the value of the array, in variable l. cur_max,  is a temporary variable for traversing the array and storing positive sum occurring and update it after each iteration.  global_max , is a variable for storing the highest sum of subarray. ‘ start ’ variable stores the starting index of the desired subarray and ‘ end ’ variable stores the last index of that subarray, that is, contagious subarray with the highest sum. Working: Talking about the working of this algorithm, it uses one for loop and the entire operation can be perfo...