There are n people in a room, where n is an integer greater than or equal to 2. Each person shakes hands once with every other person. What is the total number of handshakes in the room? Write a recursive method to solve this problem with the following header:
public static int handshake(int n)
where handshake(n) returns the total number of handshakes for n people in the room. To get you started, if there are only one or two people in the room, then:
handshake (l) = 0
handshake (2) = 1
Want to see the full answer?
Check out a sample textbook solutionChapter 11 Solutions
Java Format: Unbound (saleable)
Additional Engineering Textbook Solutions
Starting Out With Visual Basic (7th Edition)
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
Absolute Java (6th Edition)
Starting Out with C++ from Control Structures to Objects (8th Edition)
C Programming Language
Database Concepts (8th Edition)
- The nth harmonic number is defined non-recursively as H(n) = 1+1/2+1/3+1/4+⋯+1/n Come up with a recursive definition and use it to guide you to write a method definition for a double-valued method named “harmonic” that accepts an int parameter n and recursively calculates and returns the nth harmonic number. Write a test program that displays the harmonic numbers, H(n), for n = 1,2,3,⋯,10.arrow_forwardHere is a recursive method: public static int mystery(int n, int i) { if(n == 1) return i; else if(n % 2 == 0) return mystery(n/2, i+1); else return mystery(3*n + 1, i+1); } What is the return value of the following call? mystery(3,0);arrow_forwardThe nth harmonic number is defined non-recursively as: H(n)=1+1/2+1/3+1/4+...+1/n Come up with a recursive definition and use it to guide you to write a method definition for a double-valued method named “harmonic” that accepts an int parameter n and recursively calculates and returns the nth harmonic number. Write a test program that displays the harmonic numbers, H(n)=1,2,3,4...10arrow_forward
- • Write a recursive method to complete the class BaseRaiseToN. • The method: public static int raiseBToN(int base, int exp) computes and returns the value of Bn using recursion.• What value/values of n will stop the recursion (base case)?• A precondition of this method is that B be a positive number greater than zero Sample Output Enter the base4Enter the exponent 3 4 to 3 is 64arrow_forwardYou have a card on which the letter J is written on one side and K on the other. You want to seeall of the possible ways the card will land if you drop it n times. Write a recursive method thatprints each session of dropping the cards with J's and K's. For example if you drop it 4 times in agiven session, all possible ways to drop it are as follows (in exactly the specified order): (java code)arrow_forwardWrite a recursive method called drawTriangle() that outputs lines of '*' to form an upside down isosceles triangle. Method drawTriangle() has one parameter, an integer representing the base length of the triangle. Assume the base length is always odd and less than 20. Output 9 spaces before the first '*' on the last line for correct formatting. Hint: The number of '*' decreases by 2 for every line drawn. Ex: If the input of the program is: 3 the method drawTriangle() outputs: *** * Ex: If the input of the program is: 19 the method drawTriangle() outputs: ******************* ***************** *************** ************* *********** ********* ******* ***** *** * Note: No space is output before the first '*' on the first line when the base length is 19.arrow_forward
- Given the following recursive method:public static int think(int x) {if(x<10)if(x%2!=0)return x;elsereturn 0;elseif(x%2!=0)return x%10 + think(x/10);elsereturn think(x/10);}Trace (in details) the calling of the above method with any input from your choice such that thereturned value will be 19arrow_forwardWrite a recursive method called doubleDigits that accepts an integer n as a parameter and returns the integer obtained by replacing every digit of n with two of that digit. For example, doubleDigits(348) should return 334488. The call doubleDigits(0) should return 0. Calling doubleDigits on a negative number should return the negation of calling doubleDigits on the corresponding positive number; for example, doubleDigits(–789) should return –778899.arrow_forwardWhat is the “stopping” case for each (what causes the methods to “end”)? How do you guarantee that the methods will “stop” (infinite loop, infinite recursion)? Which method one is “better”? Why? public static int factorialValue(int n) {int ans = 1;for (int i=1; i <=n;i++) {ans = ans *i;}return ans;} public static int recursiveValue(int n) {if (n == 0) {return 1;}else {return n*factorialValue(n-1);}}arrow_forward
- Please Give answer in C# Write a recursive method which sums all the even numbers up to a given number. For example if you call it with 10, it would return 30 because 10+8+6+4+2=30 Write a RECURSIVE method called sumEven It must take in an int (the max you wish to sum to) It must return an int (the sum) If it's passed in an even number it should sum the number passed in with all the even numbers before it. For example if passed 8, it would sum 8+6+4+2=20 If it's passed an odd number it should still sum only the EVEN numbers. What we mean is that sumEven(9) should return 8+6+4+2=20. Not 9+7+5+3+1. Hint: You'll have an if statement with the base condition, an else if for even and an else if for odd. In the case of odd, just call yourself with the next lowest even number. In your main method, open a file called "Carlton.txt" for writing. Use a loop to call the method above multiple times and print a line to the file for each iteration of the loop: The sum of even numbers up to 0 is 0 The…arrow_forwardI have to write a recursion method that finds the square root of a number by creating more accurate guesses each time. For some reason, my code is not returning any value and is not terminating at my base case. Can you help me see the issue I am having? import java.util.Scanner; /** * Greek's method to approximate the square root of a given number. */ public class SquareRootComputer { publicstaticvoidmain(String[] args) { // this is your tester // read a value from the user and print the results // along with expected value Scannerin=newScanner(System.in); System.out.println("Please input a value whose square root you would like determined: "); doublex=in.nextDouble(); //makes user input the value for x to determine it's square root. USE 91. System.out.println("The square root of "+x+"is: "+squareRoot(x)); System.out.println("Expected square root value of 91 is: 9.539392014."); in.close(); //closes the scanner to prevent any unintended errors. }…arrow_forwardWrite a recursive method to print all the permutations of astring. For example, for the string abc, the permutation isabcacbbacbcacabcba public static void displayPermutation(String s)public static void displayPermutation(String s1, String s2)The first method simply invokes displayPermutation(" ", s). The secondmethod uses a loop to move a character from s2 to s1 and recursively invokesit with new s1 and s2. The base case is that s2 is empty and prints s1 to theconsole.Write a test program that prompts the user to enter a string and displays all itspermutations.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education