- Go Dog
- Madam, I'm Adam
- Madam, I'm not a palindrome
Here I am creating 3 files 1. StackADT.java 2. JCStack.java 3. Palindrome.java
// 1. StackADT.java
package Stack;
public interface StackADT
{
public int size();
public void push(char element);
public String pop();
}
// 2. 2. JCStack.java
import Stack.*;
import java.io.*;
import java.util.*;
import java.lang.*;
public class JCStack implements StackADT
{
Stack st=new Stack();
int top=-1;
public int size()
{
return st.size();
}
public boolean isEmpty()
{
return st.isEmpty();
}
public void push(char element)
{
Character c=element;
try
{
st.push(new Character(element));
top++;
}
catch (Exception e)
{
}
}
public String pop()
{
String str="";
if(st.size()==0)
{
System.out.println("\nSorry stack is empty");
System.exit(0);
}
else
{
int i=st.size();
for (int j=0;j<i;j++ )
{
Character ob=ob=(Character)st.pop();
str=str+ob.charValue();
}
}
return str;
}
public void exit()
{
System.exit(0);
}
}
3. 3. Palindrome.java
import java.util.Scanner;
import java.lang.Character;
class Palindrome
{
public static void main(String[] args)
{
JCStack ST=new JCStack();
Scanner sc=new Scanner(System.in);
int choice;
String el,el1;
String st="";
System.out.println("Please enter Enter you new string line");
el1=sc.nextLine();
el1=el1.replaceAll(" ", ""); // removning places in string
el1=el1.replaceAll(",","");
el1=el1.replaceAll("'", "");
el=el1.toLowerCase(); // converting all the characters to lower case
while (true)
{
System.out.println("\nPlease enter you choice\n");
System.out.println(" 1 to insert or push \n 2 to check given string is palindrom");
System.out.println(" 3 to exit \n");
choice=sc.nextInt();
switch (choice)
{
case 1:
int k=el.length();
for(int i=0;i<k;i++)
{
char ch=el.charAt(i);
ST.push(ch);
}
break;
case 2:
if(ST.size()!=0)
{
String str=ST.pop();
if(el.equals(str))
{
System.out.println("\nString is palindrom\n");
}
else
{
System.out.println("\nString is not palindrom\n");
}
}
break;
case 3:
ST.exit();
default:
System.out.println("Plese choose correct choice");
}
}
}
}
can u give me this in C or C++??? plz dude if u can den ...plz
ReplyDelete/*
ReplyDelete* C Program to Check String is Palindrome using Stack.
*/
#include
#include
void push(char);
char pop();
char stack[100];
int top = -1;
void main()
{
char str[100];
int i, count = 0, len;
printf("Enter string to check it is palindrome or not : ");
scanf("%s", str);
len = strlen(str);
for (i = 0; i < len; i++)
{
push(str[i]);
}
for (i = 0; i < len; i++)
{
if (str[i] == pop())
count++;
}
if (count == len)
{
printf("%s is a Palindrome string\n", str);
}
else{
printf("%s is not a palindrome string\n", str);}
system("pause");
}
/* Function to push character into stack */
void push(char c)
{
stack[++top] = c;
}
/* Function to pop the top character from stack */
char pop()
{
return(stack[top--]);
}