Data Structures and Algorithms in Java
6th Edition
ISBN: 9781118771334
Author: Michael T. Goodrich
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Textbook Question
Chapter 2, Problem 28C
Write a set of Java classes that can simulate an Internet application in which one party, Alice, is periodically creating a set of packets that she wants to send to Bob. An Internet process is continually checking if Alice has any packets to send, and if so, it delivers them to Bob’s computer; Bob is periodically checking if his computer has a packet from Alice, and if so, he reads and deletes it.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
JAVA Programming:
After Elon Musk decided to make a new business idea. He found a social network called
"Friends.com". It has currently N registered users. Likewise in any social network many users
can be friends. Elon Musk wants the world to be as super connected as possible, so he has
this new way to suggest friendship to some pairs of users. He suggests user u to have a
friendship with user v if they are not friends yet and there is a user w who is friends of both
of them. Note that u, v and w are different users. Elon Musk is too busy with SpaceX these
days, so he hired you to develop a JAVA program to count out how many friendship
suggestions he has to send over his social network "Friends.com".
Sample Input:
3
0111
1000
1000
Sample Output:
2
Write a java program that simulates a vending machine. Products can be purchased by inserting coins with a value at least equal to the cost of the product. A user select a product from a list of available products, add coins, and either gets the products or gets the coins returned. The coins are returned if insufficient money was supplied or if the product it's sold out. The machine does not give change if too much money was added. Products can be restocked and money remove by an operator. Your solution should include a class VendingMachine that is not coupled with the Scanner or PrintStream classes.
PS: For the VendingMachine.java, using public ArrayList<Product> getProductList(){ ArrayList<Product> list = new ArrayList<>();}
instead of public ArrayList<String> getProductList(){ ArrayList<String> list = new ArrayList<String>();}
Runtime output
S)how products I)nsert coin B)uy A)dd product R)emove coins Q)uitaDescription:CookiePrice:1.50Quantity:3…
Write a java program that simulates a vending machine. Products can be purchased by inserting coins with a value at least equal to the cost of the product. A user select a product from a list of available products, add coins, and either gets the products or gets the coins returned. The coins are returned if insufficient money was supplied or if the product it's sold out. The machine does not give change if too much money was added. Products can be restocked and money remove by an operator. Your solution should include a class VendingMachine that is not coupled with the Scanner or PrintStream classes.
Runtime output
S)how products I)nsert coin B)uy A)dd product R)emove coins Q)uitaDescription:CookiePrice:1.50Quantity:3
S)how products I)nsert coin B)uy A)dd product R)emove coins Q)uitADescription:CandyPrice:1.25Quantity:2
S)how products I)nsert coin B)uy A)dd product R)emove coins Q)uitSCookie @ $1.50Candy @ $1.25
S)how products I)nsert coin B)uy A)dd product R)emove coins Q)uitbA)…
Chapter 2 Solutions
Data Structures and Algorithms in Java
Ch. 2 - Give three examples of life-critical software...Ch. 2 - Give an example of a software application in which...Ch. 2 - Prob. 3RCh. 2 - Prob. 4RCh. 2 - Prob. 5RCh. 2 - Give a short fragment of Java code that uses the...Ch. 2 - Prob. 7RCh. 2 - Prob. 8RCh. 2 - Prob. 9RCh. 2 - Prob. 10R
Ch. 2 - Prob. 11RCh. 2 - Draw a class inheritance diagram for the following...Ch. 2 - Prob. 13RCh. 2 - Prob. 14RCh. 2 - If the parameter to the makePayment method of the...Ch. 2 - Prob. 16CCh. 2 - Most modern Java compilers have optimizers that...Ch. 2 - The PredatoryCreditCard class provides a...Ch. 2 - Modify the PredatoryCreditCard class so that a...Ch. 2 - Prob. 20CCh. 2 - Write a program that consists of three classes, A,...Ch. 2 - Prob. 22CCh. 2 - Prob. 23CCh. 2 - Write a Java class that extends the Progression...Ch. 2 - Redesign the Progression class to be abstract and...Ch. 2 - Use a solution to Exercise C-2.25 to create a new...Ch. 2 - Use a solution to Exercise C-2.25 to reimplement...Ch. 2 - Write a set of Java classes that can simulate an...Ch. 2 - Write a Java program that inputs a polynomial in...Ch. 2 - Write a Java program that inputs a document and...Ch. 2 - Prob. 31PCh. 2 - Write a Java program that simulates a system that...Ch. 2 - Define a Polygon interface that has methods area()...Ch. 2 - Prob. 35PCh. 2 - Write a Java program that can make change. Your...
Additional Engineering Textbook Solutions
Find more solutions based on key concepts
Suppose each photo in Self Check 23 had a price tag. Give an algorithm for finding the most expensive photo.
Big Java Late Objects
Describe four uses of a primary key.
Database Concepts (7th Edition)
Lottery Winners Modification Modify the program you wrote for Programming Challenge 2 (Lottery Winners) so it p...
Starting Out with C++: Early Objects
Write an SQL statement to display the last name, first name, and email of any owners of cats. Use a subquery.
Database Concepts (8th Edition)
A dataset has 1000 records and 50 variables with 5% of the values missing, spread randomly throughout the recor...
Data Mining for Business Analytics: Concepts, Techniques, and Applications with XLMiner
Use the alternatives forms x(t)=N(x0H)+H(Nx0)ek(NH)t(x0H)+(Nx0)ek(NH)t=H(Nx0)ek(NH)tN(Hx0)(Nx0)ek(NH)tN(Hx0) of...
Differential Equations: Computing and Modeling (5th Edition), Edwards, Penney & Calvis
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- Write a program in the Java language requires the management of university students, where student data (name, student number, and specialization) are saved, and then he can add and delete study materials for the current semester, and you can also add the grade for each subject (with the addition of the final code for the degree automatically).Note: The class principle is used to solve this assignment.arrow_forwardUsing OOP java /*** The VideoTapeclass holds information about a single television programme recorded ona video tape and it is used in a video shop system. It holds the video tape details.*/Class VideoTape{ String title; // the title of the programmeString classification; // classification of the programme (comedy, drama, action, orromance)int time; // the running time of the programme in minutes}Please write methods to// Return the title of this video tape.………….// Return the classification of this video tape.………….// Set a new classification for this video tape.…………./* Print the details of the video tape to the output terminal…………../* Set the access modifiers in above program and for the methods that you definearrow_forwardWrite a client program for a MyTime class in Java which loops around getting strings from the user representing times and responding with a greeting such as “good morning” as appropriate. The user should enter the string “quit” to exit the program. EXAMPLE run of client: USER: 2:07 pm PROGRAM: good afternoon USER: 10:71 am PROGRAM: that’s not a valid time, please re-enter USER: 14:30am PROGRAM: that’s not a valid time, please re-enter USER: 10:21am PROGRAM: good morning USER: 7:00 pm PROGRAM: good eveningarrow_forward
- Write a java programImagine a publishing company that markets both book and audiocassette versions of its work. Create a class publication that stores the title (a string) and price(type float) of a publication. From this class derive 2 classes: book, which adds a page count (type int); and tape, which adds a playing time in minutes (type float). Each of theses 3 classes should have a getdata() method to get its data from the user at the keyboard, and a putdata() function to display its data. Suppose you want to add the date of publication for both books and tapes. From the publication class, derive a new class called publication2 that includes this data member. Then change book and tape so ther are derived from publication2 instead of publication. Make all the necessary changes in member functions so the user can input and output dates along with the other data. For the dates, you can use the bulit-in date function which stores a date as 3 ints, for months, day and year. Write a…arrow_forwardWrite a Java program (Hangman.java) to play the classic word game Hangman. In the game, a word is randomly selected from an array of possible words. Then, the user is prompted to guess letters in the word one at a time. When the user makes a correct guess, all instances of that letter in the word are shown. When all letters in the word have been guessed, the game ends and the score (number of missed guesses) is displayed. A user can play the game multiple times if they choose. Here is a sample run of a correct program (user input indicated by orange text):Enter a letter in word ******** > cEnter a letter in word c******* > rEnter a letter in word c******r > s s is not in the wordEnter a letter in word c******r > tEnter a letter in word c****t*r > mEnter a letter in word c*m**t*r > t t is already in the wordEnter a letter in word c*m**t*r > pEnter a letter in word c*mp*t*r > oEnter a letter in word comp*t*r > eEnter a letter in word comp*ter >…arrow_forwardWrite a Java procedural program that helps organise travellers with a specific travel company arriving at an airport, telling them which queue to join based on their hotel. The program asks each traveller what their hotel is (the choices are the Seaview for which they need to join Queue 1, the Majestic for which they need to join Queue 4 and the Grand for which they need to join Queue 7) and tells them the right queue. There are 1330 travellers with the tour company and each will use the program as they arrive. After all have indicated their hotel, the program then prints the percentage in each hotel. * See image for an example run of the program. Percentages should be printed truncated to two decimal places. Do this using a method you write yourself that multiplies by 100, converts to an integer then divides by 100. * must make use of a counter-controlled for loop, be in procedural programming style (not OOP)arrow_forward
- In java, implement a simple email messaging system. a message has a recipient, a sender, and a message text. a mailbox can store messages. supply a number of mailboxes for different users and a user interface for the user to login, send messages to other users, read their own messages, and log out. Given the code I have so far, what needs to be added? class Message { private String sender; private String recipient; private String messageText; public Message(String sender, String recipient) { this.sender = sender; this.recipient = recipient; this.messageText = " "; } public void append(String text) { this.messageText += text; } public String toString() { return "From: " + sender + " To: " + recipient + "\n" + this.messageText; } } class Mailbox { private ArrayList<Message> email; public Mailbox() { this.email = new ArrayList<Message>(); } public Message…arrow_forwardWrite a FULL Java procedural program for one human player to play a “Higher or Lower” card game. In this game, each card has a value from 1..10 inclusive. There are 4 of each value in the deck, i.e., 40 cards in total. Cards are not replaced in the deck once drawn, i.e., no more than 4 of each value will be drawn. The program starts by asking the player for a target score. The game proceeds in a series of rounds with the program repeatedly drawing and showing a card from the deck to the player one at a time. Each time, it asks the player to enter "h" (higher) or "l" (lower) to guess whether the next card drawn will be higher or lower in value. The player gains a point if they guess correctly. The game continues until the player guesses incorrectly or the target score is reached. When the game ends, it prints either a "You win!" or a "Nice try, you scored …” message as illustrated below. The image provided shows two examples of the required program behaviour: (bold is keyboard input…arrow_forwardUSING JAVA: Implement a simple e-mail messaging system. A message has a recipient, a sender, and a message text. A mailbox can store messages. Supply a number of mailboxes for different users and a user interface for the user to login, send messages to other users, read their own messages, and log out.arrow_forward
- UOWD Library is asking you to write a Java program that manages all the items in the Library. The library has books, journals, and media (DVD for example). All items have a name, author(s), and year of publication. A journal also has a volume number, while a media has a type (audio/video/interactive). The user of your program should be able to add an item, delete an item, change information of an item, list all items in a specific category (book, journal, or media), and print all items (from all categories). A menu asks the user which operation s/he wants to perform. Important: make use of collections, inheritance, interfaces, and exception handling wherever appropriate.arrow_forwardJava Programming (no copy-pastes, please) In Java, write two applications, a client and a server that communicate with each other according to the protocol: The connection is only maintained (authenticated) if the first thing the client sends is the message “OOP”; After the first authentication, the server will receive messages typed in by the client until he sends an “End” message; the server will just write the received messages on the screen; When the server receives the “End” message, it will start sending typed messages to the client, who will receive them and write them to the screen until an “End” message is sent to the client.arrow_forwardWrite a program in java Design a class that holds the following personal data: name, address, age, and phone number.Write appropriate accessor and mutator methods. Demonstrate the class by writing aprogram that creates three instances of it. One instance should hold your information, andthe other two should hold your friends’ or family members’ information.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
6 Stages of UI Design; Author: DesignerUp;https://www.youtube.com/watch?v=_6Tl2_eM0DE;License: Standard Youtube License