Latest Tutorials| Questions and Answers|Ask Questions?|Site Map




Have Programming Question? Ask it here!
 
 
 


Siu
OOP with Java
3 Answer(s)      4 years and 6 months ago
Posted in : Java Beginners


I had a look at the solution for the answers, in the website already, but my lecturer wants us to do it in another method. Here goes the question.

Write a program to assign passengers seats in an airplane. Assume a small airplane with seat numberings as follows:
1 A B C D
2 A B C D
3 A B C D
4 A B C D
5 A B C D
6 A B C D
7 A B C D

The program should display the seat pattern, with an 'X' marking the seats already assigned. For example, after seats 1A, 2B, and 4C are taken, the display should look like:
1 X B C D
2 A X C D
3 A B C D
4 A B X D
5 A B C D
6 A B C D
7 A B C D

After displaying the seats available, the program prompts for the seat desired, the user types in a seat, and then the display of available seats is updated. This continues until all seats are filled or until the user signals that the program should end. If the user types in a seat that is already assigned, the program should say that that seat is occupied and ask for another choice.

This is part of my answer but I can't complete it any further. Mind if anyone could help out, please?

Here's my solution.

public class Question2 {

public static void main(String[] args) {

final int rows = 7, cols = 4;
char[][] seats = new char[rows][cols];
int i, j;
char seatLetter = 'A';

for (i=0; i <seats.length; i++) {
for(j=0; j < seats[i].length; j++)
seats[i][j] = seatLetter++;
seatLetter = 'A';
}

for (i=0; i < seats.length; i++) {
System.out.print((i+1) + " ");
for (j=0; j < seats[i].length; j++)
System.out.print(seats[i][j] + " ");
System.out.println();
}

for (i=0; i < 7; i++) {
System.out.print("\nEnter your seat: ");

}
}

Advertisement
View Answers

January 26, 2010 at 11:33 PM


Hi Siu,

Below is my code for your requirement.
NOTE: I did not do any validation on inputs given by user.
So, you need to do all the validation part and I've used methods for code reusability. Hope this helps to start your project and if you have any queries you can contact me @ javaquest2010@gmail.com

import java.util.Hashtable;
import java.util.Scanner;

public class Question2 {
final int rows = 7, cols = 4;
char[][] seats = new char[rows][cols];
Hashtable reservedSeats = new Hashtable();

public static void main(String[] args) {
Question2 q = new Question2();
q.buildSeats();
q.printSeats();
System.out.println("Enter Seat numbers:");
Scanner scan = new Scanner(System.in);
while (scan.hasNext()) {
String s = scan.next();
int row = Integer.parseInt(s.toUpperCase().substring(0, 1));
char col = s.toUpperCase().charAt(1);
q.reserveSeat(row, col);
}
}

public void buildSeats() {
char seatLetter = 'A';
for (int i = 0; i < seats.length; i++) {
for (int j = 0; j < seats[i].length; j++)
seats[i][j] = seatLetter++;
seatLetter = 'A';
}
}

public void printSeats() {
System.out.println("Available Seats:");
for (int i = 0; i < seats.length; i++) {
System.out.print((i + 1) + " ");
for (int j = 0; j < seats[i].length; j++)
System.out.print(seats[i][j] + " ");
System.out.println();
}
}

public void reserveSeat(int row, char col) {
if (checkAvailability(row, col)) {
reservedSeats.put(new Integer(row), col);
for (int i = row - 1; i == row - 1; i++) {
for (int j = 0; j < seats[i].length; j++) {
if (seats[i][j] == col) {
seats[i][j] = 'X';
}
}
}
System.out.println(" Seat " + row + col + " is Reserved ");
} else {
System.out.println(" Sorry! The requested seat " + row + col
+ " is NOT Avialble.Please try another seat. ");
}
printSeats();
}

public boolean checkAvailability(int row, char col) {
boolean available = true;
if (reservedSeats.containsKey(new Integer(row))) {
if (reservedSeats.get(row).equals(col)) {
available = false;
}
}
return available;
}
}


January 27, 2010 at 12:10 PM


Hi Friend,

Try the following code:

import java.util.*;

class Passenger{
public int no;
public String seatA;
public String seatB;
public String seatC;
public String seatD;
public Passenger(){}
public Passenger(int no, String seatA,String seatB,String seatC,String seatD) {
this.no = no;
this.seatA = seatA;
this.seatB = seatB;
this.seatC = seatC;
this.seatD = seatD;
}
public int getNo() {
return no;
}
public void setNo(int no){
this.no=no;
}
public String getSeatA() {
return seatA;
}
public void setSeatA(String seatA){
this.seatA=seatA;
}
public String getSeatB() {
return seatB;
}
public void setSeatB(String seatB){
this.seatB=seatB;
}
public String getSeatC() {
return seatC;
}
public void setSeatC(String seatC){
this.seatC=seatC;
}
public String getSeatD() {
return seatD;
}
public void setSeatD(String seatD){
this.seatD=seatD;
}
}
public class AssignPassenger {

public static void main(String[] args) throws Exception {
List<Passenger> list = new ArrayList<Passenger>();
list.add(new Passenger(1, "A","B","C","D"));
list.add(new Passenger(2, "A","B","C","D"));
list.add(new Passenger(3, "A","B","C","D"));
list.add(new Passenger(4, "A","B","C","D"));
list.add(new Passenger(5, "A","B","C","D"));
list.add(new Passenger(6, "A","B","C","D"));
list.add(new Passenger(7, "A","B","C","D"));
for(int i=1;i<=5;i++){
System.out.print("Enter seat no: ");
Scanner input=new Scanner(System.in);
int num = input.nextInt();
String sn=input.next();
for (Passenger s : list){
if(num == s.getNo()){
if(sn.equals(s.getSeatA())){
s.setSeatA("X");
}
else if(sn.equals(s.getSeatB())){
s.setSeatB("X");
}
else if(sn.equals(s.getSeatC())){
s.setSeatC("X");
}
else if(sn.equals(s.getSeatD())){
s.setSeatD("X");
}
else{
System.out.println("Not Available");
}

}


System.out.println(s.getNo()+" "+s.getSeatA()+" "+s.getSeatB()+" "+s.getSeatC()+" "+s.getSeatD());
}
}
}
}

Hope that it will be helpful for you.
Thanks


January 28, 2010 at 10:06 AM


Hey siu,
The previous code that i posted fails in one case.(eg., 1a 1b 1a).
Sorry for that.So, i fixed the code and posting it again. Hope this works in all cases.
Please test all the cases before use.

import java.util.ArrayList;
import java.util.Hashtable;
import java.util.Scanner;

public class Question2 {
final int rows = 7, cols = 4;
char[][] seats = new char[rows][cols];
ArrayList<String> reservedSeats = new ArrayList<String>();

public static void main(String[] args) {
Question2 q = new Question2();
q.buildSeats();
q.printSeats();
System.out.println("Enter Seat numbers:");
Scanner scan = new Scanner(System.in);
while (scan.hasNext()) {
String s = scan.next();
int row = Integer.parseInt(s.toUpperCase().substring(0, 1));
char col = s.toUpperCase().charAt(1);
q.reserveSeat(row, col);
}
}

public void buildSeats() {
char seatLetter = 'A';
for (int i = 0; i < seats.length; i++) {
for (int j = 0; j < seats[i].length; j++)
seats[i][j] = seatLetter++;
seatLetter = 'A';
}
}

public void printSeats() {
System.out.println("Available Seats:");
for (int i = 0; i < seats.length; i++) {
System.out.print((i + 1) + " ");
for (int j = 0; j < seats[i].length; j++)
System.out.print(seats[i][j] + " ");
System.out.println();
}
}

public void reserveSeat(int row, char col) {
String seatNo=String.valueOf(row)+col;
if (checkAvailability(seatNo)) {
reservedSeats.add(seatNo);
for (int i = row - 1; i == row - 1; i++) {
for (int j = 0; j < seats[i].length; j++) {
if (seats[i][j] == col) {
seats[i][j] = 'X';
}
}
}
System.out.println(" Seat " + seatNo + " is Reserved ");
}
else
System.out.println("Sorry! The Seat "+seatNo+" is NOT available.Please look up for another seat.");
printSeats();
}

public boolean checkAvailability(String seatNo) {
boolean available = true;
for(int i=0;i<reservedSeats.size();i++){
if(reservedSeats.get(i).equalsIgnoreCase(seatNo)){
available = false;
}
}
return available;
}
}

Regards,
javaquest2010


Related Tutorials/Questions & Answers:
java oop
java oop  Design and implement a class called DayType that implements the day of the week in a program. The class DayType should store the day, such as Sun for Sunday, Mon for Monday and so on and so forth. The program should
Java with OOP assignment (Eclipse)
Java with OOP assignment (Eclipse)  How do i control the length of characters in an input? E.g.: Enter your name > Hi * Name too short
Advertisements
OOP - Java Beginners
OOP Design Pattern  What is the oops design patterns
OOP JAVa - Java Interview Questions
OOP JAVa  Is java is 100% OOP.?Plz giv full explanation.  hi Sanjay,dis is Srinivas(MCA from Andhra University).....Java is not an 100 % OOPL,because of the availability of Primitive Data Types
oop answers - Java Beginners
oop answers  Consider the following declarations: { private int.... Write a Java statement that prints the values of the instance variables of x. i. Write a Java statement that creates the XClass object t and initializes
OOP questions - Java Beginners
OOP questions  Consider the following declarations: { private... of a and the instance variable w is initialized to the value of b. h. Write a Java statement that prints the values of the instance variables of x. i. Write a Java
OOP - Java Beginners
OOP  i have problem with OOP hope u'll help me write a program that allows the user to enter student' names followed by their test scores and outputs...://www.roseindia.net/java/master-java/java-object-oriented-language.shtml
OOP questions - Java Beginners
OOP questions  Consider the following declarations: { private int u; private double w; public XClass() { } public XClass(int a, double...; } For more information on Java visit to : http://www.roseindia.net/java
OOP with Java - Java Beginners
OOP with Java  I had a look at the solution for the answers, in the website already, but my lecturer wants us to do it in another method. Here goes...) { Question2 q = new Question2(); q.buildSeats(); q.printSeats
java"oop" - Java Beginners
Java OOPs Concept  What is OOPs programming and what it has to do with the Java?  Hi i hope you understand it.//To print the even numbers...){ System.out.println(e); } }}Java program to display all even numbers http
java oop - Java Beginners
java oop  Consider the following declarations: { private int u... variable w is initialized to the value of b. h. Write a Java statement that prints the values of the instance variables of x. i. Write a Java statement
JAVA OOP - Java Beginners
JAVA OOP  Employees in a company are divided into the classes Employee, HourlyPaid, Salescommissioned and Executive for the purpose of calculating their weekly wages or monthly salaries. The data to be maintained for each class
OOP - Java Beginners
OOP  Which one is better to learn object oriented progamming java or c++? thaks, Bet.  Hello, As of my concern both have different scope and use, you can not merge these. As i java person so i will show you java
OOP - Java Beginners
); } For more information on Java visit to : http://www.roseindia.net/java/ http://www.roseindia.net/java/beginners/Construct.shtml Thanks
OOP using Java - Java Beginners
OOP using Java  Can you write a Java statement that creates the object mysteryClock of the Clock type, and initialize the instance variables hr,min...); } } For more information on Java visit to : http://www.roseindia.net/java
OOP with Java 2 - Java Beginners
OOP with Java 2  Define a class called BogEntry that could be used to store an entry for a Web log. The class should have member variables to store the poster's username, text of entry, and the date of the entry using the Date
OOP Using JAVA - Java Beginners
OOP Using JAVA  OBJECT ORIENTED PROGRAMMING USING JAVA (hope guys u will help me please i need your help,thank you so much) Create a Java program...(); oops.OopType(); } } For more information on Java visit to : http
OOP with Java-Array - Java Beginners
OOP with Java-Array  Write a program to assign passengers seats in an airplane. Assume a small airplane with seat numberings as follows: 1 A B C D 2 A B C D 3 A B C D 4 A B C D 5 A B C D 6 A B C D 7
OOP with Java 3 - Java Beginners
OOP with Java 3  Write a Temperature class that has two instances variables: temperature value (a floating-point number) and a character for the scale, wither C for Celsius or F for Fahrenheit. the class should have four
oop
oop  can you tell me about why java is not 100% object oriented language
Java with OOP assignment (Eclipse) - Java Beginners
Java with OOP assignment (Eclipse)  "THREE Ts GAME" *Description* A "tic-tac-toe" game is a two player's board game where the game board..." games using Java. When your game application started, the players will be able
OOP
OOP   OO Analysis & Design Classes represent domain elements. May... classes UML is most common visual modelling technique is-a vs has-a Java... a home to utility functions. Create immutable objects. Java 5 autoboxing
oop concept
oop concept  why Object class is super class for all class? 1.to use the Object class methods in subclass directly or 2.the Object class is usefull at the time of object create of subclass what
OOP
php oop functions
php oop functions  Just a quick question... php oop functions. can i call the main class function from an instantiated object of the child class
PHP OOP Concepts
PHP OOP Concepts Object Oriented Programming  is a paradigm which is nowadays the most popular way to develop any application and most of the modern day language is based on this paradigm. OOP or Object Oriented Programming PHP has
what is the difference between pop and oop
what is the difference between pop and oop  what is the difference between pop and oop
OOP Tutorial [first draft]
Java: OOP Tutorial [first draft] Table of contents Introduction.... These notes are about programming and Java language features necessary for OOP, and do...-Oriented Design (OOD) and Object-Oriented Programming (OOP) An important part
registration form using oop concept
registration form using oop concept  I would like to write a program student registration form at kindergartens and display the information of students that register to the kindergarten. How to make the form and display
OOP
OOP       OOPs stands... the object creation process, programmatically. Read more at : www.roseindia.net/java/beginners/oop-in-java.shtml
PHP OOP Namespace
Namespace in PHP: The term namespace is very much common in OOP based language, basically it is a collection of classes, objects and functions. Namespaces... should always declare on the top of the page. PHP OOP Namespace Example: <
Methods - OOP
Java NotesMethods - OOP Static methods If your method doesn't use an object of the class it is defined in, but does some work only.... A good example of a static methods in Java is the Math or Character
Java programming
Java programming  What is the Role of OOP in java
Java programming
Java programming  What is the Role of OOP in java
java puestion
java puestion  is aggregation is oop principle
Object-Oriented Programming
Java: Object-Oriented Programming Beyond OOP Here's an interesting article about going beyond OOP: The Next Move in Programming: A Conversation with Sun's Victoria Livschitz at java.sun.com/developer/technicalArticles/Interviews
OOPs and Its Concepts in Java
the functionality of OOP in Java, we first need to understand several fundamentals related... OOPs and Its Concepts in Java       Brief Introduction to OOP Object Oriented
Object Oriented Programming in Java
around objects and data. Programming language like Java that follow the OOP... not completely follow OOPS concept while Java does. Java was designed based on C and C... and C++ and also easy to code in. Everything in Java is object or can be made
OOP Summary
Java: OOP Summary Objects All objects are allocated... be either, but Java supports only object references... Generics add compile-time checking and documentation. Java uses type
basic java - Java Beginners
basic java  oops concept in java ?  Hi Friend, Please visit the following links: http://www.roseindia.net/java/beginners/oop-in-java.shtml http://www.roseindia.net/java/learn-java-in-a-day/oops.shtml Thanks
Java - Java Beginners
is a object oriented programming and to understand the functionality of OOP in Java, we...Java  WHAT CATEGORY SHOULD I CHOOSE IF I WANT TO ASK ABOUT OOP(OBJECT ORIENTED PROGRAMMING) USING JAVA...JAVA CODES.WHAT SHOULD I CHOOSE BECAUSE I
oops concepts - Java Interview Questions
. http://www.roseindia.net/java/beginners/oop-in-java.shtml Thanks... programing.....  Hi friend, Object Oriented Programming or OOP..., here in the OOP programming model programs are organized around objects and data
Using Super class Variables With Sub-classed Objects
features of java is that it is follows a OOPs concept, and one of the feature of OOP in java is that, we can assign a subclass object or variable to the variable
java - Java Beginners
java  HOW AND WHERE SHOULD I USE A CONSTRUCTOR IN JAVA PROGRAMMING...://www.roseindia.net/java/beginners/Construct.shtml http://www.roseindia.net/java/java-tips/oop/constructors/constructor.shtml Thanks
Question on java
Question on java  why java is not purely oop?   java is not purely OOP because 1.) Multiple Inheritance is not supported. 2.) It uses primitive data type. 3.) static method can be called without creating instances
java
: http://www.roseindia.net/java/beginners/Construct.shtml http://www.roseindia.net/java/java-tips/oop/constructors/constructor.shtml...java  what is meant by constructor?   A java constructor
java - Java Beginners
feature in OOP?s Strategy. It is a term that describes a situation where one name may refer to different methods. In java,there are two type of polymorphism... the following links: http://www.roseindia.net/help/java/p/polymorphism.shtml
java pointers - Java Beginners
the rule of OOP. so java does not support pointer.so that direct access to any...java pointers  "There is no need to store the address of the another variable in java So that pointers are not used in java."how it is different
Advertisements
 

 

 

DMCA.com