EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
8th Edition
ISBN: 9781305480537
Author: FARRELL
Publisher: CENGAGE LEARNING - CONSIGNMENT
bartleby

Videos

Expert Solution & Answer
Book Icon
Chapter 9, Problem 5PE

Explanation of Solution

Program:

File name: “SalespersonDatabase.java

//Import necessary header files

import java.util.*;

//Define a class named SalespersonDatabase

public class SalespersonDatabase

{

    //Define main method

    public static void main(String[] args)

    {

        //Create an array of objects

        SalesPerson[] salespeople = new SalesPerson[20];

        //Declare variables

        int x;

        int id;

        int count = 0;

        double sales;

        final int QUIT = 999;

        char option;

        String message = "";

        //Create an object for Scanner class

        Scanner keyboard = new Scanner(System.in);

        //Prompt the user to enter an option

        System.out.print("Do you want to (A)dd, (D)elete, or  (C)hange a record or (Q)uit >> ");

        option = keyboard.nextLine().charAt(0);

//While condition exists if option entered by the user is not equal to Quit

        while(option != 'Q')

        {

            //If option is to Add a record

            if(option == 'A')

                count = addOption(salespeople, count);

            //If option is to Delete a record

            else

            if(option == 'D')

                count = deleteOption(salespeople, count);

            //If option is to Change a record

            else

            if(option == 'C')

                changeOption(salespeople, count);

            //Invalid

            else

                //Print the result

                System.out.println("Invalid entry");

            //Prompt the user to enter an option

            System.out.print("Do you want to (A)dd, (D)elete, or (C)hange a record or (Q)uit >> ");

            option = keyboard.nextLine().charAt(0);

        }

    }

    //Define a method for add option

    public static int addOption(SalesPerson[] array, int count)

    {

        //Create an object for Scanner class

        Scanner keyboard = new Scanner(System.in);

        //Declare variables

        int id;

        double sales;

        boolean alreadyEntered;

        //Check if database is full

        if(count == array.length)

            //Print the result

    System.out.println("Sorry - array is full -- cannot add a record");

        //if database is not full

        else

        {

            //Prompt the user to enter the ID of the salesperson

            System.out.print("Enter salesperson ID >> ");

            id = keyboard.nextInt();

            alreadyEntered = false;

            for(int x = 0; x < count; ++x)

            //Check if ID number already exists

            if(array[x].getId() == id)

            {

                //Print the result

System.out.println("Sorry -- ID number already exists");

                alreadyEntered = true;

            }

            //Check if ID number does not exists

            if(!alreadyEntered)

            {

                //Prompt the user to enter the sales

                System.out.print("Enter sales >> ");

                sales = keyboard.nextDouble();

                array[count] = new SalesPerson(id, sales);

                //Increment the count

                ++count;

            }

        }

        //Display the database values

        display(array, count);

        keyboard.nextLine();

        //Return the value

        return count;

    }

    //Define a method for delete option

public static int deleteOption(SalesPerson[] array, int count)

    {

        //Create an object for Scanner class

        Scanner keyboard = new Scanner(System.in);

        //Declare variables

        int id;

        int position = 0;

        //Check if database is empty

        if(count == 0)

            //Print the result

System.out.println("Cannot delete - no records in database");

        //if database is not empty

        else

        {

            //Prompt the user to enter the ID of the salesperson

            System.out.print("Enter ID to delete >> ");

            id = keyboard.nextInt();

            boolean exists = false;

            for(int x = 0; x < count; ++x)

            //Check if ID number already exists

            if(array[x].getId() == id)

            {

                exists = true;

                position = x;

            }

            //if ID number does not exists

            if(!exists)

                //Print the result

System...

Blurred answer
Students have asked these similar questions
Lab 07: Java Graphics (Bonus lab) In this lab, we'll be practicing what we learned about GUIs, and Mouse events. You will need to implement the following: ➤ A GUI with a drawing panel. We can click in this panel, and you will capture those clicks as a Point (see java.awt.Point) in a PointCollection class (you need to build this). о The points need to be represented by circles. Below the drawing panel, you will need 5 buttons: о An input button to register your mouse to the drawing panel. ○ о о A show button to paint the points in your collection on the drawing panel. A button to shift all the points to the left by 50 pixels. The x position of the points is not allowed to go below zero. Another button to shift all the points to the right 50 pixels. The x position of the points cannot go further than the You can implement this GUI in any way you choose. I suggest using the BorderLayout for a panel containing the buttons, and a GridLayout to hold the drawing panel and button panels.…
If a UDP datagram is sent from host A, port P to host B, port Q, but at host B there is no process listening to port Q, then B is to send back an ICMP Port Unreachable message to A. Like all ICMP messages, this is addressed to A as a whole, not to port P on A. (a)  Give an example of when an application might want to receive such ICMP messages. (b)  Find out what an application has to do, on the operating system of your choice, to receive such messages. (c)  Why might it not be a good idea to send such messages directly back to the originating port P on A?
Discuss how business intelligence and data visualization work together to help decision-makers and data users. Provide 2 specific use cases.
Knowledge Booster
Background pattern image
Computer Science
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
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:9781337102124
Author:Diane Zak
Publisher:Cengage Learning
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
CMPTR
Computer Science
ISBN:9781337681872
Author:PINARD
Publisher:Cengage
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
C - File I/O; Author: Tutorials Point (India) Ltd.;https://www.youtube.com/watch?v=cEfuwpbGi1k;License: Standard YouTube License, CC-BY
file handling functions in c | fprintf, fscanf, fread, fwrite |; Author: Education 4u;https://www.youtube.com/watch?v=aqeXS1bJihA;License: Standard Youtube License