This is the question I am stuck on - A personal phone directory contains room for first names and phone numbers for 30 people. Assign names and phone numbers for the first 10 people. Prompt the user for a name, and if the name is found in the list, display the corresponding phone number. If the name is not found in the list, prompt the user for a phone number, and add the new name and phone number to the list. Continue to prompt the user for names until the user enters quit. After the arrays are full (containing 30 names), do not allow the user to add new entries. Use the following names and phone numbers: Name Phone # Gina (847) 341-0912 Marcia (847) 341-2392 Rita (847) 354-0654 Jennifer (414) 234-0912 Fred (414) 435-6567 Neil (608) 123-0904 Judy (608) 435-0434 Arlene (608) 123-0312 LaWanda (920) 787-9813 Deepak (930) 412-0991 This is the code I have - import java.util.*; class PhoneNumbers {     public static void main(String[] args) {         // Write your code here         int room,j=0;       boolean present= false;         String [] names ={"Gina", "Marcia", "Rita", "Jennifer", "Fred", "Neil", "Judy", "Arlene", "LaWanda", "Deepak"};       String [] number= {"(847) 341-0912","(847) 341-2392", "(847) 354-0654","(414) 234-0912", "(414) 435-6567", "(608)  123-0904", "(608) 435-0434", "(608) 123-0312", "(920) 787-9813", "(930) 412-0991" };       String nameEntered;       Scanner input = new Scanner(System.in);            //Continue until user enters quit       while(true)       {         System.out.println("Please enter name: ");           //enter name to be searched          nameEntered = input.nextLine();           //if user enter quit         if(nameEntered.equals("quit"))           //Exit the program           break;         for(room = 0; room < names.length; room++)         //search for the name            {           if(names[room].equals(nameEntered))               {               present =true;     //if found return true               j=room;                  break;           }         }         if(present==true)    //check for true of false         {           System.out.println(names[j] + " corresponding number is " +number[j]);         }         //if name is not found enter new entries         else         {           System.out.println("Name and phone number not found");           System.out.println("Enter new entries from user:");           //array for name and number to be entered by user           String newname[]=new String[20];           String newnumber[]= new String[20];           for(int i=0;i

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter12: Exception Handling
Section: Chapter Questions
Problem 11PE
icon
Related questions
Question

This is the question I am stuck on -

A personal phone directory contains room for first names and phone numbers for 30 people. Assign names and phone numbers for the first 10 people. Prompt the user for a name, and if the name is found in the list, display the corresponding phone number. If the name is not found in the list, prompt the user for a phone number, and add the new name and phone number to the list.

Continue to prompt the user for names until the user enters quit. After the arrays are full (containing 30 names), do not allow the user to add new entries.

Use the following names and phone numbers:

Name Phone #
Gina (847) 341-0912
Marcia (847) 341-2392
Rita (847) 354-0654
Jennifer (414) 234-0912
Fred (414) 435-6567
Neil (608) 123-0904
Judy (608) 435-0434
Arlene (608) 123-0312
LaWanda (920) 787-9813
Deepak

(930) 412-0991

This is the code I have -

import java.util.*;
class PhoneNumbers {
    public static void main(String[] args) {
        // Write your code here
   
    int room,j=0;

      boolean present= false;  

      String [] names ={"Gina", "Marcia", "Rita", "Jennifer", "Fred", "Neil", "Judy", "Arlene", "LaWanda", "Deepak"};

      String [] number= {"(847) 341-0912","(847) 341-2392", "(847) 354-0654","(414) 234-0912", "(414) 435-6567", "(608)  123-0904", "(608) 435-0434", "(608) 123-0312", "(920) 787-9813", "(930) 412-0991" };
      String nameEntered;
      Scanner input = new Scanner(System.in);     
      //Continue until user enters quit
      while(true)
      {
        System.out.println("Please enter name: ");  
        //enter name to be searched 
        nameEntered = input.nextLine();  
        //if user enter quit
        if(nameEntered.equals("quit"))
          //Exit the program
          break;
        for(room = 0; room < names.length; room++)         //search for the name   
        {
          if(names[room].equals(nameEntered))    
          {
              present =true;     //if found return true
              j=room;   
              break;
          }
        }
        if(present==true)    //check for true of false
        {
          System.out.println(names[j] + " corresponding number is " +number[j]);
        }
        //if name is not found enter new entries
        else
        {
          System.out.println("Name and phone number not found");
          System.out.println("Enter new entries from user:");
          //array for name and number to be entered by user
          String newname[]=new String[20];
          String newnumber[]= new String[20];
          for(int i=0;i<newname.length;i++)
          {
              System.out.println();
              System.out.println("Enter quit to stop adding names and numbers otherwise Enter the phone number:");
              String temp=input.nextLine();
              if(!temp.equals("quit"))
              {
                newnumber[i]=temp;
                System.out.println("Enter name to the following phone number:");
                newname[i]=input.nextLine();
               
              }
              else
              {
                  System.out.println("The numbers are " +newnumber[i]); //print line for phone numbers
               
              }
               break;
          }
        }
      }
    }
}
    
I asked my teacher for help and he sent me this but it just confused me more -
When the user types in a name that is not in the phone book, the program should ask for the number and add it to the parallel arrays (space permitting).  It looks like you have a second set of arrays where you add new numbers.  The arrays should be declared size 30 and the first 10 positions filled.  Something like this:
final int MAX_PHONEBOOK_SIZE = 30;
String[] myLittleBlackBookNames = new String[MAX_PHONEBOOK_SIZE];
        String[] myLittleBlackBookNumbers = new String[MAX_PHONEBOOK_SIZE];
        int nextPosition = 10;
        boolean isFound = false;
        
        myLittleBlackBookNames[0] = "Gina";
        myLittleBlackBookNumbers[0] = "(847) 341-0912";
        
        myLittleBlackBookNames[1] = "Marcia";
        myLittleBlackBookNumbers[1] = "(847) 341-2392";
        
        myLittleBlackBookNames[2] = "Rita";
        myLittleBlackBookNumbers[2] = "(847) 354-0654";
        
        myLittleBlackBookNames[3] = "Jennifer";
        myLittleBlackBookNumbers[3] = "(847) 341-0912";
        
        myLittleBlackBookNames[4] = "Fred";
        myLittleBlackBookNumbers[4] = "(847) 341-0912";
        
        myLittleBlackBookNames[5] = "Neil";
        myLittleBlackBookNumbers[5] = "(608) 123-0904";
        
        myLittleBlackBookNames[6] = "Judy";
        myLittleBlackBookNumbers[6] = "(608) 435-0434";
        
        myLittleBlackBookNames[7] = "Arlene";
        myLittleBlackBookNumbers[7] = "(608) 123-0312";
        
        myLittleBlackBookNames[8] = "LaWanda";
        myLittleBlackBookNumbers[8] = "(920) 787-9813";
        
        myLittleBlackBookNames[9] = "Deepak";
        myLittleBlackBookNumbers[9] = "(930) 412-0991";
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Linux
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
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Np Ms Office 365/Excel 2016 I Ntermed
Np Ms Office 365/Excel 2016 I Ntermed
Computer Science
ISBN:
9781337508841
Author:
Carey
Publisher:
Cengage
Oracle 12c: SQL
Oracle 12c: SQL
Computer Science
ISBN:
9781305251038
Author:
Joan Casteel
Publisher:
Cengage Learning
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning