EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
9th Edition
ISBN: 9781337671385
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
Write a C program using embedded assembler in which you use your own function to multiply by two without using the product. Tip: Just remember that multiplying by two in binary means shifting the number one place to the left. You can use the sample program from the previous exercise as a basis, which increments a variable. Just replace the INC instruction with SHL.
using r language
r language
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