**Please respond only if you can answer the whole question** ~~~~~~~~~~~~~~~~~~~
ID: 3933866 • Letter: #
Question
**Please respond only if you can answer the whole question**
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Java Programming: Ch 6 Case Problem 1
Carly’s Catering provides meals for parties and special events. In previous chapters, you developed a class that holds catering event information and an application that tests the methods using four objects of the class. Now modify the EventDemo class to do the following:
Continuously prompt for the number of guests for each Event until the value falls between 5 and 100 inclusive.
For one of the Event objects, create a loop that displays “Please come to my event!” as many times as there are guests for the Event.
Save the modified file as EventDemo.java.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Please use code to answer question:
import java.util.Scanner;
public class Event {
public final static double LOWER_PRICE_PER_GUEST = 32.00;
public final static double HIGHER_PRICE_PER_GUEST = 35.00;
public final static int CUTOFF_VALUE = 50;
public boolean largeEvent;
private String eventNum;
private int numOfGuests;
private double price;
private double pricePerGuest;
public Event(String event, int guests) {
eventNum = event;
numOfGuests = guests;
}
public Event() {
this("A000", 0);
}
private Scanner input = new Scanner(System.in);
public void setEventNumber() {
System.out.print("What is the event number? ");
eventNum = input.nextLine();
}
public void setNumOfGuests() {
System.out.print("How many guests are attending the event? ");
numOfGuests = input.nextInt();
if (isLargeEvent())
pricePerGuest = LOWER_PRICE_PER_GUEST;
else
pricePerGuest = HIGHER_PRICE_PER_GUEST;
largeEvent = (numOfGuests >= CUTOFF_VALUE);
price = numOfGuests * pricePerGuest;
System.out.println("");
}
public boolean isLargeEvent(){
if(this.getNumOfGuests() >= 50)
return true;
else
return false;
}
public String getEventNumber() {
return eventNum;
}
public int getNumOfGuests() {
return numOfGuests;
}
public double getPrice() {
return price;
}
public double getPricePerGuest(){
return pricePerGuest;
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
public class EventDemo {
public static void main(String[] args) {
Event event1 = new Event();
System.out.println("Event #1: ");
event1.setEventNumber();
event1.setNumOfGuests();
Event event2 = new Event();
System.out.println("Event #2: ");
event2.setEventNumber();
event2.setNumOfGuests();
Event event3 = new Event();
System.out.println("Event #3: ");
event3.setEventNumber();
event3.setNumOfGuests();
display(event1);
display(event2);
display(event3);
System.out.println("Display larger event comparing Event #1 and Event #2: ");
display(largerEvent(event1, event2));
System.out.println("Display larger event comparing Event #2 and Event #3: ");
display(largerEvent(event2, event3));
System.out.println("Display larger event comparing Event #1 and Event #3: ");
display(largerEvent(event1, event3));
}
public static void display(Event e) {
System.out.println("Event number: " + e.getEventNumber());
System.out.println("Total guests: " + e.getNumOfGuests());
System.out.println("Total price per guest: $" + String.format("%.2f", e.getPricePerGuest()));
System.out.println("Total price: $" + String.format("%.2f", e.getPrice()));
System.out.println("Large event: " + e.isLargeEvent());
System.out.println("");
}
public static Event largerEvent (Event e1, Event e2){
if (e1.getNumOfGuests() >= e2.getNumOfGuests())
return e1;
else
return e2;
}
}
Explanation / Answer
import java.util.Scanner;
public class Event {
public final static double LOWER_PER_GUEST = 32.00;
public final static double HIGHER_PER_GUEST = 35.00;
public final static int CUTOFF_VALUE = 50;
public boolean largeEvent;
private String eventNum;
private int numOfGuests;
private double price;
private double pricePerGuest;
public Event(String event, int guests) {
eventNum = event;
numOfGuests = guests;
}
public Event() {
this("A000", 0);
}
private Scanner input = new Scanner(System.in);
public void setEventNumber() {
System.out.print("What is the event number? ");
eventNum = input.nextLine();
}
public void setNumOfGuests() {
do {
System.out.print("How many guests are attending the event? ");
int guests = input.nextInt();
if (guests >= 5 && guests <= 100) {
numOfGuests = guests;
if (isLargeEvent())
pricePerGuest = LOWER_PER_GUEST;
else
pricePerGuest = HIGHER_PER_GUEST;
price = numOfGuests * pricePerGuest;
largeEvent = (numOfGuests >= CUTOFF_VALUE);
} else {
break;
}
} while (true);
// System.out.println("");
}
public boolean isLargeEvent() {
if (this.getNumOfGuests() > 50)
return true;
else
return false;
}
public String getEventNumber() {
return eventNum;
}
public int getNumOfGuests() {
return numOfGuests;
}
public double getPrice() {
return price;
}
}
public class EventDemo {
public static void main(String[] args) {
Event event1 = new Event();
Event event2 = new Event();
Event event3 = new Event();
System.out.println("Enter Details of event1:");
event1.setEventNumber();
event1.setNumOfGuests();
display(event1);
for (int i = 0; i < event1.getNumOfGuests(); i++) {
System.out.println("Please come to my event!");
}
}
public static void display(Event e) {
System.out.println("Event number: " + e.getEventNumber());
System.out.println("Total guests: " + e.getNumOfGuests());
System.out.println("Total price: $"
+ String.format("%.2f", e.getPrice()));
System.out.println("Is Large event: " + e.isLargeEvent());
System.out.println("");
}
public static Event getLargestEvent(Event e1, Event e2) {
if (e1.getNumOfGuests() > e2.getNumOfGuests())
return e1;
else
return e2;
}
}
OUTPUT:
Enter Details of event1:
What is the event number? 58
How many guests are attending the event? 5
How many guests are attending the event? 4
Event number: 58
Total guests: 5
Total price: $175.00
Is Large event: false
Please come to my event!
Please come to my event!
Please come to my event!
Please come to my event!
Please come to my event!
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.