Program Stack Palindrom
Nama : Hellawati Ayu Rizmadita
NPM : 22082010208
Paralel : II-E
SOURCE CODE
cNode
package appStackPalindrom;
class cNode {
private String nama;
cNode next,prev;
cNode(String n){
nama=n;
System.out.println("Object "+n+" created...");
}
public String getNama(){
return nama;
}
}
cStack
package appStackPalindrom;
class cStack {
cNode top,bottom;
int jumlah;
cStack(){
top=bottom=null;
jumlah=0;
System.out.println("Object Stack created...");
}
public void push(cNode baru){
if(top==null){
top=bottom=baru;
}
else{
top.prev=baru;
baru.next=top;
top=baru;
}
System.out.println("Push "+baru.getNama()+" Success");
}
public String Pop(){
if(top==null){
System.out.println("Stack Kosong...");
return null;
}
else if(top.next==null){
cNode t=top;
top=bottom=null;
System.out.println("");
System.out.println("Pop "+t.getNama()+" Success");
return t.getNama();
}
else{
cNode t=top;
top=top.next;
top.prev=null;
t.next=null;
System.out.println("");
System.out.println("Pop "+t.getNama()+" Success");
return t.getNama();
}
}
}
Class appStack
package appStackPalindrom;
import java.util.Scanner;
public class appStack {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
cStack Stack=new cStack();
int pilih=0;
System.out.println("-----------------------------------");
System.out.println("Nama : Hellawati Ayu Rizmadita");
System.out.println("NPM : 22082010208");
System.out.println("-----------------------------------");
do{
System.out.println("\n===================================");
System.out.println(" MENU STACK");
System.out.println("===================================");
System.out.println("1. Cek Palindrom");
System.out.println("2. Exit");
System.out.print("Pilih : ");
pilih=s.nextInt();
switch(pilih){
case 1:
System.out.println("-----------------------------------");
System.out.println(" CEK PALINDROM");
System.out.println("-----------------------------------");
System.out.print("Input Kata : ");
String kata=s.next();
for(int i=0;i<kata.length();i++){
char k=kata.charAt(i);
cNode huruf=new cNode(Character.toString(k));
Stack.push(huruf);
}
System.out.print("");
String output="";
for(int i=0;i<kata.length();i++){
String hasil=Stack.Pop();
output=output+hasil;
}
System.out.print("");
if(output.matches(kata)){
System.out.println("\nOutput = PALINDROM");
}
else{
System.out.println("\nOutput = BUKAN PALINDROM");
}
break;
case 2:
System.out.println("===================================");
System.out.println(" TERIMA KASIH!");
System.out.println("===================================");
break;
}
}while(pilih!=2);
}
}
RUN :
Komentar
Posting Komentar