Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

First, launch NetBeans and close any previous projects that may be open (at the

ID: 3604503 • Letter: F

Question

First, launch NetBeans and close any previous projects that may be open (at the top menu go to File ==> Close All Projects).

Then create a new Java application called "RecursiveTriangle" (without the quotation marks)according to the following guidelines.

Modify the example in Horstmann Section 5.9, pp. 228-230 so that the triangle displays “in reverse order” as in the example below, which allows the user to set the number of lines to print and the String used for printing the triangle.

Use a method to prompt the user for the number of lines (between 1 and 10) to print. This method should take no parameters and return an int value.

Use a method to prompt the user for the string to be used when printing the pattern. This method should take no parameters and return a String value.

Use a method called printTriangle that takes an int and a String as parameters (i.e., the return values from the two methods mentioned above) and has no return value. That method should use recursion to print the “reversed triangle” as in the following example.

EXAMPLE: The call to printTriangle(numLines, pattern) should print the following, assuming numLines has the value 4 and pattern has the value “[]”.

Thoughts

You could write and test each method as you go. Alternatively, you could write the whole program with “everything in main” and then decompose it into methods.

***NOTE: include commenting in your code***

Explanation / Answer

Implemeted the code as per the requirement. Please comment if any modification required.

Code:

========

import java.util.Scanner;

public class RecursiveTriangle { //Driver class

public static Scanner sc; //Scanner to read inputs

public static void main(String[] args) {

int numLines = readLines(); //Calling method to read number of lines

String pattern = readPattern(); //Calling method to read pattern

printTriangle(numLines, pattern); //Calling method to print the triangle

}

//Method to read number of lines and return integer

public static int readLines() {

int num=0;

sc = new Scanner(System.in); //Scanner instance

while(!(num>=1 && num<=10)) { //Loop runs until user enters the value between 1-10

System.out.print("Enter number of lines to be printed(1-10): ");

num = sc.nextInt(); // Reading integer

}

return num; //Returning the input

}

//Method to read pattern

public static String readPattern() {  

String pat;

sc = new Scanner(System.in);

System.out.print("Enter a pattern to print triangle with: ");

pat = sc.nextLine(); //Reading string pattern

return pat; //Returning string pattern

}

//Printing triangle

public static void printTriangle(int numLines, String pattern) {

for(int i=numLines; i>0; i--) { //Loop to line by line

for(int j=i; j>0; j--) { //Loop to print the pattern

System.out.print(pattern+" ");

}

System.out.println();

}

}

}