Question

In: Computer Science

PLESE CODE IN C# not java RECURSION Objectives • Learn the basics of recursion – Part...

PLESE CODE IN C# not java

RECURSION

Objectives

• Learn the basics of recursion – Part II (last week was Part I) Submission Guidelines:

You will turn in 2 program files (one for each lab problem)

Tasks

This lab has two parts:

Write a driver program that calls this method from the Main program.

• •

Write a driver program that calls this method from the Main program.

Note: Your program name should match the name of your java / C# class exactly. e.g Lab10a.java / Lab10a.cs

Sample Output: LAB 1:

//A call to recursive function repeatNTimes(“hello”, 5) hellohellohellohellohello

// A call to recursive function repeatNTimes(“Good morning!”, 3) Good morning!Good morning!Good morning!

LAB 2:

1. Write a recursive method

repeatNTimes(String s, int n) that accepts a String and an

integer as two parameters and returns a string that is concatenated together n times. (For

example, repeatNTimes ("hello", 3) returns "hellohellohello")

2. Write a recursive method called isReverse(String s1, String s2) that accepts two

strings as parameters and returns true if the two strings contain the same sequence of characters as

each other but in the opposite order and false otherwise.

The recursive function should ignore capitalization. (For example, the call of

isReverse("hello", "eLLoH") would return true.)

The empty string, as well as any one letter string, should be its own reverse.

  

Page 1 of 2

//Call to recursive function isReverse ("Computer","retupmCo") false

//Call to recursive function isReverse ("Hello","olleh") true

Solutions

Expert Solution

Here is the completed code for this problem. Comments are included, go through it, learn how things work and let me know if you have any doubts or if you need anything to change. If you are satisfied with the solution, please rate the answer. If not, PLEASE let me know before you rate, I’ll help you fix whatever issues. Thanks

/*Program 1*/

//Lab10a.cs

using System;

class Lab10a{
        //method to return a string containing s repeated n times
        public static String repeatNTimes(String s, int n){
                //if n is 0 or below, returning empty string
                if(n<=0){
                        return "";
                }else{
                        //else returning s concatenated with the value returned from 
                        //recursive call passing n-1 as new n
                        return s+repeatNTimes(s,n-1);
                }
        }
        //Main method for testing
        public static void Main(String[] args){
                Console.WriteLine(repeatNTimes("hello", 5));
                Console.WriteLine(repeatNTimes("Good morning!", 3));
                
                //wait for a key press to quit. remove if not needed.
                Console.ReadKey();
        }
}

/*OUTPUT */

hellohellohellohellohello
Good morning!Good morning!Good morning!

/*Program 2*/

//Lab10b.cs

using System;

class Lab10a{
        //method to check if s1 is same as s2, but in reverse
        public static bool isReverse(String s1, String s2){
                //if lengths of s1 an s2 mismatch, returning false
                if(s1.Length!=s2.Length){
                        return false;
                }
                //if strings are empty, returning true
                else if(s1.Length==0){
                        return true;
                }
                //comparing first char of s1 with last char of s2, after converting them to 
                //lower case
                if(Char.ToLower(s1[0])!=Char.ToLower(s2[s2.Length-1])){
                        //mismatch s1 is not reverse of s2
                        return false;
                }
                //otherwise removing first char from s1, last char from s2, calling method 
                //recursively passing new strings
                //note: s1.Substring(1) will return a s1 without first character
                // s2.Substring(0,s2.Length-1) will return s2 without last character
                return isReverse(s1.Substring(1),s2.Substring(0,s2.Length-1));
        }
        
        //Main method for testing
        public static void Main(String[] args){
                Console.WriteLine(isReverse ("Computer","retupmCo"));
                Console.WriteLine( isReverse ("Hello","olleh") );
                
                //wait for a key press to quit. remove if not needed.
                Console.ReadKey();
        }
}

/*OUTPUT*/

False
True

Related Solutions

IN C# WITH SCREENSHOTS OF THE CODE RECURSION Objectives • Learn the basics of recursion. Background...
IN C# WITH SCREENSHOTS OF THE CODE RECURSION Objectives • Learn the basics of recursion. Background There are many problems that loops simplify, such as displaying every pixel to a screen or receiving repetitive input. However, some situations that can be simplified with looping are not easily solvable using loops. This includes problems that require back tracking and being able to use information from previous iterations, which would normally be lost when using an iterative loop. In those cases, it...
JAVA CODE Learning objectives; File I/O practice, exceptions, binary search, recursion. Design and implement a recursive...
JAVA CODE Learning objectives; File I/O practice, exceptions, binary search, recursion. Design and implement a recursive version of a binary search.  Instead of using a loop to repeatedly check for the target value, use calls to a recursive method to check one value at a time.  If the value is not the target, refine the search space and call the method again.  The name to search for is entered by the user, as is the indexes that define the range of viable candidates...
I need this code translated from C++ to Java. Im personally still trying to learn Java,...
I need this code translated from C++ to Java. Im personally still trying to learn Java, so if you can include screenshots of your IDE/output that would be helpful. Much appreciated! #include <iostream> #include <string> using namespace std; class pizza { public:    string ingrediants, address;    pizza *next;    pizza(string ingrediants, string address)    {        this->address = address;        this->ingrediants = ingrediants;        next = NULL;    } }; void enqueue(pizza **head, pizza **tail, pizza...
Lab #3 – Recursion on Strings Lab Objectives • Be able to write a recursive Java...
Lab #3 – Recursion on Strings Lab Objectives • Be able to write a recursive Java method for Java strings • Be able to make use of exploit natural conversion between strings and integers • Be able to write a driver to call the methods developed for testing Deliverables Submit the report in Word or PDF format with the results of every task listed below. They should show screen capture of your results. The problem String as a sequence of...
Objectives: • Learn to write test cases with Junit • Learn to debug code Problem: Sorting...
Objectives: • Learn to write test cases with Junit • Learn to debug code Problem: Sorting Book Objects Download the provided zipped folder from Canvas. The source java files and test cases are in the provided folder. The Book class models a book. A Book has a unique id, title, and author. The BookStore class stores book objects in a List, internally stored as an ArrayList. Also, the following methods are implemented for the BookStore class. • addBook(Book b): sto...
write code in java and comment. thanks. the program is about interface . Implement the basics...
write code in java and comment. thanks. the program is about interface . Implement the basics of Fitness and types of Fitness: Aerobic. Implement specific Fitness types such as Swimming, Cycling, Fitness Task: public interface Fitness (10pts) This will be used as a starting point for deriving any specific Fitness type. Every fitness exercise type has one or more muscle group it affects. Therefor a Fitness has the following abstarct method (Note that all methods in an interface are abstract...
Objectives To learn to code, compile, and run a program using file input and an output...
Objectives To learn to code, compile, and run a program using file input and an output file. Assignment Plan and code a program utilizing one file for input and one file for output to solve the following problem: Write a program to determine the highest number, the lowest number, their total, and the average of each line of numbers in a file. A file contains 7 numbers per line. How many lines a file contains is unknown. Note Label all...
In this programming assignment, you will write C code that performs recursion. For the purpose of...
In this programming assignment, you will write C code that performs recursion. For the purpose of this assignment, you will keep all functions in a single source file main.c. Your main job is to write a recursive function that generates and prints all possible password combinations using characters in an array. In your main() function you will first parse the command line arguments. You can assume that the arguments will always be provided in the correct format. Remember that the...
In this programming assignment, you will write C code that performs recursion. For the purpose of...
In this programming assignment, you will write C code that performs recursion. For the purpose of this assignment, you will keep all functions in a single source file main.c. Your main job is to write a recursive function that generates and prints all possible password combinations using characters in an array. In your main() function you will first parse the command line arguments. You can assume that the arguments will always be provided in the correct format. Remember that the...
Code using JAVA: must include a "Main Method" to run on "intelliJ". Hint: Use recursion "...
Code using JAVA: must include a "Main Method" to run on "intelliJ". Hint: Use recursion " /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val = val; * this.left = left; * this.right = right; * } * } */ class Solution { public boolean isSymmetric(TreeNode...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT