Edit on previous question asked: ok I need help with this code http://www.pcs.cn
ID: 653528 • Letter: E
Question
Edit on previous question asked:
ok I need help with this code http://www.pcs.cnu.edu/cs150lab/lab10.pdf I did most of it... but when I submit it I only get a 34 percent. Can some one please help. Here is the code so far below. it must be tested through the car tester class. I put the the cartester class and the person class. after the code below.
here is the car class
public class Car
{
private int capacity;
private Person driver;
private Person passengers[];
private int occupancy;
private int seat;
public Car(){
capacity = 4;
passengers = new Person [capacity];
occupancy = 0;
}
public Car(int aCapacity){
if (aCapacity <= 4){
capacity = 4;
}
else if (aCapacity >= 8){
capacity = 8;
}
else{
capacity =aCapacity;
}
passengers = new Person[capacity];
occupancy = 0;
}
public int getCapacity(){
return capacity;
}
public int getOccupancy(){
occupancy = 0;
for (int counter = 0; counter < passengers.length;counter++){
if (passengers [counter] != null){
occupancy++;
}
}
return occupancy;
}
public boolean hasRoom()
{
boolean results;
if (getCapacity() > getOccupancy())
{
results = true;
}
else
{
results = false;
}
return results;
}
public Person getDriver()
{
return driver;
}
public boolean setDriver (Person person){
boolean result;
if (canDrive(person) == true && hasPassenger(person) ==true &&
hasRoom()== true)
{
driver = person;
result = true;
}
else{
driver = null;
result = false;
}
return result;
}
public Person [] getPassengers()
{
Person[] passengersList = new Person[getCapacity()];
for (int counter = 0; counter < passengers.length;counter++)
{
if (passengers[counter] != null)
{
passengersList[counter] = passengers[counter];
}
}
return passengersList;
}
public boolean hasPassenger (Person person)
{
boolean results = false;
if (person!=null)
{
for (int counter = 0; counter < passengers.length; counter++)
{
if(passengers[counter] == person)
{
results = true;
seat = counter;
}
}
}
return results;
}
public boolean addPassenger(Person person)
{
boolean results = false;
if(person!= null && hasPassenger(person)==false &&
hasRoom()==true)
{
int counter = 0;
for (counter = 0;passengers[counter]!=null;counter++)
{
passengers[counter]=person;
results = true;
}
}
return results;
}
public boolean removePassenger(Person person)
{
boolean results;
if(hasPassenger(person) ==true)
{
passengers[seat]=null;
if(person ==driver)
{
driver = null;
}
results = true;
}
else
{
results = false;
}
return results;
}
public boolean canDrive(Person person)
{
boolean results;
if(person!=null)
{
results = person.canDrive();
}
else
{
results = false;
}
return results;
}
}
here is the person class
public class Person {
private String PersonName;
private int age;
public Person(){
PersonName ="no name";
age = 0;
}
public Person(String aName, int anAge){
PersonName = aName;
age = anAge;
}
public String getName(){
return PersonName;
}
public void setName (String aName){
PersonName = aName;
}
public int getAge(){
return age;
}
public void setAge(int anAge){
age = anAge;
if (anAge<0){
age=0;
}
}
public boolean canDrive(){
if (age>= 16){
return true;
}
return false;
}
public static boolean canDrive(int age){
if (age>= 16){
return true;
}
return false;
}
}
and here is the link to the tester class
http://www.pcs.cnu.edu/cs150lab/CarTest.java
Explanation / Answer
public class Car
{
private int capacity;
private Person driver;
private Person passengers[];
private int occupancy;
private int seat;
public Car(){
capacity = 4;
passengers = new Person [capacity];
occupancy = 0;
}
public Car(int aCapacity){
if (aCapacity <= 4){
capacity = 4;
}
else if (aCapacity >= 8){
capacity = 8;
}
else{
capacity =aCapacity;
}
passengers = new Person[capacity];
occupancy = 0;
}
public int getCapacity(){
return capacity;
}
public int getOccupancy(){
occupancy = 0;
for (int counter = 0; counter < passengers.length;counter++){
if (passengers [counter] != null){
occupancy++;
}
}
return occupancy;
}
public boolean hasRoom()
{
boolean results;
if (getCapacity() > getOccupancy())
{
results = true;
}
else
{
results = false;
}
return results;
}
public Person getDriver()
{
return driver;
}
public boolean setDriver (Person person){
boolean result;
if (canDrive(person) == true && hasPassenger(person) ==true &&
hasRoom()== true)
{
driver = person;
result = true;
}
else{
driver = null;
result = false;
}
return result;
}
public Person [] getPassengers()
{
Person[] passengersList = new Person[getCapacity()];
for (int counter = 0; counter < passengers.length;counter++)
{
if (passengers[counter] != null)
{
passengersList[counter] = passengers[counter];
}
}
return passengersList;
}
public boolean hasPassenger (Person person)
{
boolean results = false;
if (person!=null)
{
for (int counter = 0; counter < passengers.length; counter++)
{
if(passengers[counter] == person)
{
results = true;
seat = counter;
}
}
}
return results;
}
public boolean addPassenger(Person person) {
boolean results = false;
if (person != null && hasPassenger(person) == false
&& hasRoom() == true) {
int counter = 0;
for (counter = 0;counter < passengers.length; counter++) {
if (passengers[counter] == null) {
passengers[counter] = person;
results = true;
return results;
}
}
}
return results;
}
public boolean removePassenger(Person person)
{
boolean results;
if(hasPassenger(person) ==true)
{
passengers[seat]=null;
if(person ==driver)
{
driver = null;
}
results = true;
}
else
{
results = false;
}
return results;
}
public boolean canDrive(Person person)
{
boolean results;
if(person!=null)
{
results = person.canDrive();
}
else
{
results = false;
}
return results;
}
}
//Note : 93%
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.