Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I created a recursive and iterative palindrome program that determines whether the string entered is a palindrome or not. A semi-formal recursive definition of a

I created a recursive and iterative palindrome program that determines whether the string entered is a palindrome or not.

A semi-formal recursive definition of a palindrome

a) what is the recursive step

b) create appropriate comments for both the recursive and iterative programs.

recursive

import java.io.*; public class RecursivePalindrome { static boolean CheckPalindrome(String s, int leftSide, int rightSide) { if (rightSide <= leftSide) return true; else if (s.charAt(leftSide) != s.charAt(rightSide)) return false;

else return CheckPalindrome(s,leftSide+1,rightSide-1);

} public static void main(String[] args) throws IOException {

String str; int n;

InputStreamReader inStream = new InputStreamReader( System.in ); BufferedReader stdin = new BufferedReader( inStream ); System.out.print("Please enter any string: "); str = stdin.readLine();

int lastPosition = str.length()-1;

boolean result = CheckPalindrome(str , 0, lastPosition); if (result)

System.out.println("The string \""+str+"\" is a palindrome ");

else

System.out.println("The string \""+str+"\" is not a palindrome ");

}

}

iterative

import java.util.Scanner; public class Iterative { public static void main(String args[]) {

Scanner reader=new Scanner(System.in); System.out.println("please enter a string"); String input=reader.nextLine();

System.out.printf("Is %s a palindrome? : %b %n", input, isPalindrome(input));

System.out.println("please enter another string"); input=reader.nextLine();

System.out.printf("Is %s a palindrome? : %b %n", input, isPalindrome(input));

reader.close();

} public static boolean isPalindrome(String input) { if(input==null || input.isEmpty()) { return true; }

char[] array=input.toCharArray(); StringBuilder sb=new StringBuilder(input.length()); for(int i=input.length() -1; i>=0; i--) { sb.append(array[i]);

} String reverseOfString=sb.toString(); return input.equals(reverseOfString);

} }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Concepts Of Database Management

Authors: Joy L. Starks, Philip J. Pratt, Mary Z. Last

9th Edition

1337093424, 978-1337093422

More Books

Students also viewed these Databases questions

Question

What are notes to the financial statements?

Answered: 1 week ago

Question

How do Data Types perform data validation?

Answered: 1 week ago

Question

How does Referential Integrity work?

Answered: 1 week ago