online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Scanner; public class Main { static Scanner input = new Scanner(System.in); static String enter; static Train Train = new Train(); static List Trains = Train.getTrains(); static Customers Customers = new Customers(); public static void main(String[] args) { List Train1Stations = Arrays.asList("1.Tiruppur","2.Erode","3.Salem","4.Jolarpettai","5.Katpadi","6.Arakkonam","7.Avadi","8.Chennai CTL"); List Train2Stations = Arrays.asList("1.Tiruppur","2.Erode","3.Karur","4.Dindigul","5.Madurai"); Train.setTrains("Chennai Exp","Tiruppur to Chennai", 8, Train1Stations ); Train.setTrains("Madurai Exp","Tiruppur to Madurai", 10, Train2Stations ); Customers.setUser("Keshav", 1234); boolean Mainloop = true; while(Mainloop){ clrscr(); System.out.println(); System.out.println("Welcome To Railway Ticket Booking App ===\n-----------------------\n1.Admin\n2.Customer\n3.Exit\n-----------------------"); int MainInput = input.nextInt(); switch(MainInput){ case 1: clrscr(); System.out.print("Enter UserName : ");String AdminUserName = input.next(); System.out.print("Enter Pin : ");int AdminPin = input.nextInt(); if(AdminUserName.equals("Keshav") && AdminPin==1234){ boolean Adminloop = true; while(Adminloop){ clrscr(); System.out.println("Welcome Admin :)\n\nChoose any options\n----------------\n1.View Trains\n2.Add Trains\n3.Logout\n----------------\n"); int AdminInput = input.nextInt(); switch(AdminInput){ case 1: clrscr(); ViewTrains(); break; case 2: AddTrains(); break; case 3: clrscr(); System.out.println("------Logout------\n\nEnter 1 to Confirm\n"); enter = input.next(); Adminloop=false; break; default: clrscr(); System.out.println("Invalid Input\n\nTry Again \n\nEnter 1 to Continue\n"); enter = input.next(); break; } } }else{ System.out.println("Invalid User Name or Pin"); System.out.println("Logout\n\nEnter 1 to Continue"); enter = input.next(); } break; case 2: clrscr(); boolean Authloop = true; while(Authloop){ clrscr(); System.out.println("Choose any options\n----------------\n1.Already Have An Account\n2.Create An Account\n3.Back\n----------------\n"); int AuthInput = input.nextInt(); switch(AuthInput){ case 1: clrscr(); System.out.print("Enter User Name : ");String UserName = input.next(); System.out.print("Enter Pin : ");int Pin = input.nextInt(); if(Customers.AuthUser(UserName, Pin)){ clrscr(); boolean Customerloop = true; while(Customerloop){ clrscr(); System.out.println("Welcome "+UserName+" :)\n\nChoose any options\n----------------\n1.Book Tickets\n2.View Tickets\n3.Logout\n----------------\n"); int CustomerInput = input.nextInt(); switch(CustomerInput){ case 1: clrscr(); BookTickets(UserName); break; case 2: clrscr(); TicketHistory(UserName); break; case 3: Customerloop = false; Authloop =false; break; } } }else{ System.out.println("\nInvalid User Name or Pin"); System.out.println("\n\nEnter 1 to Continue\n"); enter = input.next(); } break; case 2: clrscr(); System.out.print("Enter New User Name : ");String NewUserName = input.next(); System.out.print("Enter New Pin : ");int NewPin = input.nextInt(); Customers.setUser(NewUserName, NewPin); System.out.println("Account Created Succesfully."); System.out.println("\n\nEnter 1 to Continue\n"); enter = input.next(); break; case 3: Authloop = false; break; } } break; case 3: clrscr(); System.out.println("Logout\n\nEnter 1 to Exit"); enter = input.next(); Mainloop = false; break; default: clrscr(); System.out.println("Invalid Input Try Again\n\nEnter 1 to exit"); enter = input.next(); break; } } } public static void ViewTrains(){ clrscr(); for(int i=0 ; i<Trains.size() ; i++){ List Train = (List)Trains.get(i); List TrainDetails = (List)Train.get(0); List BookedSeats = (List)Train.get(1); for(int j=0 ; j<TrainDetails.size();j++){ if(j==3){ List Stations = (List)TrainDetails.get(3); System.out.println("Stations :"); for(int k=0 ; k<Stations.size();k++){ System.out.println(Stations.get(k)); } }else if(j==2){ System.out.println("NoOfSeats : "+TrainDetails.get(2)); }else if(j==1){ System.out.println("Route : "+TrainDetails.get(1)); }else if(j==0){ System.out.println("Name : "+TrainDetails.get(0)); } } System.out.println("\nSeats Booked :\n"); for(int j =0;j<BookedSeats.size();j++){ System.out.println(BookedSeats.get(j)+"\n"); } System.out.println("----------------"); } System.out.println("\n\nEnter 1 to exit"); enter = input.next(); } public static void AddTrains(){ clrscr(); System.out.print("Enter Train Name : ");String TrainName = input.next(); clrscr(); System.out.println("Enter Train Route\n"); System.out.print("Start : ");String Start = input.next(); System.out.print("End : ");String End = input.next(); clrscr(); System.out.print("Enter No Of Seats : ");int NoOfSeats = input.nextInt(); clrscr(); System.out.print("Enter No of Stations :");int NoOfStations = input.nextInt(); List<String> Stations = new ArrayList<>(); for(int i =0;i<NoOfStations;i++){ System.out.print((i+1)+".");String Station = input.next(); Stations.add(i, (i+1)+"."+Station); } Train.setTrains(TrainName,Start+" to "+End,NoOfSeats, Stations ); System.out.println("Train Added Sucessfully \n\nEnter 1 to exit"); enter = input.next(); } public static void BookTickets(String UserName){ clrscr(); System.out.println("Choose the Train : \n----------------"); for(int i=0 ; i<Trains.size() ; i++){ List TrainTemp = (List)Trains.get(i); List TrainDetails = (List)TrainTemp.get(0); System.out.println(i+1+"."+TrainDetails.get(0)); } System.out.println("\n----------------"); int TrainNo = input.nextInt()-1; clrscr(); List TrainTemp = (List)Trains.get(TrainNo); List TrainDetails = (List)TrainTemp.get(0); List Stations = (List)TrainDetails.get(3); System.out.println("Choose Start & End Stations :"); for(int k=0 ; k<Stations.size();k++){ System.out.println(Stations.get(k)); } System.out.print("Start Station No : ");int Start = input.nextInt()-1; System.out.print("End Station No : ");int End = input.nextInt(); clrscr(); System.out.print("\nEnter No Of Ticket : ");int NoOfTicket = input.nextInt(); int[] SeatNo = new int[NoOfTicket]; for(int k=0;k<NoOfTicket;k++){ List Seats = (List)TrainTemp.get(1); for(int i = 0 ;i<(Integer)TrainDetails.get(2);i++){ int TicketConfirm =0; for(int j=Start;j<End;j++){ List S = (List)Seats.get(j); if((Integer)S.get(i)==0){ TicketConfirm+=1; } } if(Start==0){ if(TicketConfirm==Start+End){ SeatNo[k] = i+1; for(int j=Start;j<End;j++){ List S = (List)Seats.get(j); S.set(i, 1); Seats.set(i, S); } i = (Integer)TrainDetails.get(2); } }else{ if(TicketConfirm==End-Start){ SeatNo[k] = i+1; for(int j=Start;j<End;j++){ List S = (List)Seats.get(j); S.set(i, 1); Seats.set(i, S); } i = (Integer)TrainDetails.get(2); } } } } int Tickets = 0; for(int k=0 ;k<NoOfTicket;k++){ if(SeatNo[k]!=0){ Tickets+=1; } } if(Tickets==NoOfTicket){ for(int k=0 ;k<NoOfTicket;k++){ Train.setBookedSeats(TrainNo,Start,End,SeatNo[k]); Customers.setTicketHistory(UserName, (String)TrainDetails.get(0), Stations.get(Start)+" to "+Stations.get(End-1),SeatNo[k]); } System.out.println("\nTicket booked :)\n"); System.out.print("seat No : "); for(int i=0; i<SeatNo.length;i++){ System.out.print(" "+SeatNo[i]); } System.out.println("\n\nEnter 1 to Continue\n"); enter = input.next(); }else{ System.out.println("Tickets Not Avilable ):"); System.out.println("\n\nEnter 1 to Continue\n"); enter = input.next(); } } public static void TicketHistory(String UserName){ List TicketHistory = Customers.getTicketHistory(UserName); System.out.println("Booked Tickets"); for(int i =0 ; i<TicketHistory.size();i++){ List Ticket = (List)TicketHistory.get(i); System.out.println("----------------\n"); for(int j=0;j<Ticket.size();j++){ if(j==0){ System.out.println("Train Name : " +Ticket.get(0)); }else if(j==1){ System.out.println("Start & End : " +Ticket.get(1)); }else if(j==2){ System.out.println("Seat No : " +Ticket.get(2)); } } } System.out.println("\n\nEnter 1 to Continue\n"); enter = input.next(); } public static void clrscr(){ System.out.print("\033[H\033[2J"); System.out.flush(); } } class Train{ private static List<List> Trains = new ArrayList<List>(); public void setTrains(String TrainName ,String Route, int NoOfSeats , List Stations ){ List TrainDetails = Arrays.asList(TrainName,Route,NoOfSeats,Stations); List<List<Integer>> Seats = new ArrayList<>(); for(int i=0; i<Stations.size();i++){ List<Integer> seat = new ArrayList<>(); for(int j = 0; j<NoOfSeats;j++){ seat.add(0); } Seats.add(seat); } List<List> Train = Arrays.asList(TrainDetails,Seats); Trains.add(Train); } public List getTrains(){ return Trains; } public void setBookedSeats(int TrainNo ,int StartStation, int EndStation,int SeatNo){ List Train = (List)Trains.get(TrainNo); List Seats = (List)Train.get(1); for(int j=StartStation;j<EndStation;j++){ List S = (List)Seats.get(j); S.set(SeatNo-1, 1 ); Seats.set(j, S); } Train.set(1, Seats); Trains.set(TrainNo, Train); } } class Customers{ private static List<List> Users = new ArrayList<List>(); public void setUser(String UserName , int Pin){ List TicketHistory =new ArrayList<>(); List User = Arrays.asList(UserName,Pin , TicketHistory); Users.add(User); } public void setTicketHistory(String UserName,String TrainName ,String StartEnd,int SeatNo){ List Ticket = Arrays.asList(TrainName,StartEnd,SeatNo); for(int i=0;i<Users.size();i++){ List User = Users.get(i); if(UserName.equals((String)User.get(0))){ List TicketHistory = (List)User.get(2); TicketHistory.add(Ticket); User.set(2, TicketHistory); Users.set(i, User); } } } public List getTicketHistory(String UserName){ List Ticket = Arrays.asList(0,0,0); for(int i=0;i<Users.size();i++){ List User = Users.get(i); if(UserName.equals((String)User.get(0))){ List TicketHistory = (List)User.get(2); return TicketHistory; } } return Ticket; } public boolean AuthUser(String UserName , int Pin){ boolean Auth = false; for(int i=0;i<Users.size();i++){ List User = Users.get(i); if(UserName.equals((String)User.get(0)) && Pin==(Integer)User.get(1)){ Auth = true; } } return Auth; } }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue