Java: An Introduction to Problem Solving and Programming (7th Edition)
Java: An Introduction to Problem Solving and Programming (7th Edition)
7th Edition
ISBN: 9780133766264
Author: Walter Savitch
Publisher: PEARSON
bartleby

Concept explainers

bartleby

Videos

Textbook Question
Book Icon
Chapter 12, Problem 1E

Repeat Exercise 2 in Chapter 7, but use an instance of ArrayList instead of an array. Do not read the number of values, but continue to read values until the user enters a negative value.

Expert Solution & Answer
Check Mark

Explanation of Solution

Program Plan:

  • Import required package.
  • Define “CountFamiles”class.
    • Define main function.
      • Create object for scanner class.
      • Create array “incomeArr” by using “ArrayList”.
      • Display the prompt statement.
      • Assign “additionalValues” to “true”.
      • Initializes required variable.
      • Read input of income from user up to the value of “additionalValues” is “false”.
        • Display prompt statement for each family.
        • Read each family income from user and store it to “incomeValues”.
        • If “incomeValues” is less than “0”, then set “additionalValues” to “false”.
        • Otherwise, add the “incomeValues” to array “incomeArr”.
        • Increment the index.
      • Compute maximum income using “for” loop.
        • If “incomeArr.get(i)” is greater than maximum income, then assign maximum income to “incomeArr.get(i)”.
      • Display maximum income.
      • Display “10” percent of maximum income by “0.1 * maximumIncome”.
      • Initializes the count value to “0”.
      • Compute the count of families with incomes less than “10” percentage of maximum income using “for” loop.
        • Check condition. If value of “incomeArr.get(i)” is less than “0.1 * maximumIncome”, then increment count value and display the family income with less than “10” percentage of income by family wise.
      • Finally display the count of families.

Program:

The below java program is used to counts the number of families with less than “10” percent of maximum income using array.

“CountFamiles.java”

//Import required package

import java.util.*;

//Define "CountFamiles" class

public class CountFamiles

{

    //Define main function

    public static void main(String[] args)

    {

        //Create object for scanner class

        Scanner input = new Scanner(System.in);

/* Create array "incomeArr" by using "ArrayList" */

ArrayList<Double> incomeArr = new ArrayList<Double>();

        //Display the prompt statement

System.out.println("Enter the income for each family. Use a negative value to indicate the end ");

        //Assign "additionalValues" to "true"

        boolean additionalValues = true;

        //Initializes required variable

        int i = 0;

/* Read input of income from user upto the value of "additionalValues" is "false" */

        while(additionalValues)

        {

//Display prompt statement for each family

System.out.print("Enter Income for family " + (i +1) + ": ");

/* Read each family income from user and store it to "incomeValues" */

double incomeValues = input.nextDouble();

/* If "incomeValues" is less than "0", then */

            if(incomeValues < 0)

                /* Set "additionalValues" to "false" */

                additionalValues = false;

            /* Otherwise */

            else

/* Add the "incomeValues" to array "incomeArr" */

                incomeArr.add(incomeValues);

            //Increment the index

            i++;

        }

        //Compute maximum income using "for" loop

        double maximumIncome = incomeArr.get(0);

        for(i  = 0; i < incomeArr.size(); i ++)

        {

/* If incomeArr.get[i] is greater than maximum income, then */

            if(incomeArr.get(i) > maximumIncome)

//Assign maximum income to "incomeArr.get(i)"

                maximumIncome = incomeArr.get(i);

        }

        //Display maximum income

System.out.println("The maximum income is: " + maximumIncome);

        //Display 10 percent of maximum income

System.out.println("10% of maximum income is: " + (0.1 * maximumIncome));

        //Display prompt statement

System.out.println("\nDisplaying all families with incomes less than 10% of the maximum income income");

        //Initializes the count value to "0"

        int countValue = 0;

//Compute the count of families with incomes less than 10% of maximum income

        for( i=0; i<incomeArr.size(); i++)

        {

            //Check condition

if(incomeArr.get(i) < (0.1 * maximumIncome))

            {

                //Increment count value

                countValue++;

/* Display the family income with less than 10 percentage of income by family wise */

System.out.println("Family " + (i+1) + " had income " + incomeArr.get(i));

            }

        }

        //Display count of families

System.out.println("Count of families with 10% of maximum income is: " + countValue);

    }

}

Sample Output

Output:

Enter the income for each family. Use a negative value to indicate the end

Enter Income for family 1: 10000

Enter Income for family 2: 48000

Enter Income for family 3: 20000

Enter Income for family 4: 12000

Enter Income for family 5: 300000

Enter Income for family 6: 40000

Enter Income for family 7: -1

The maximum income is: 300000.0

10% of maximum income is: 30000.0

Displaying all families with incomes less than 10% of the maximum income

Family 1 had income 10000.0

Family 3 had income 20000.0

Family 4 had income 12000.0

Count of families with 10% of maximum income is: 3

Want to see more full solutions like this?

Subscribe now to access step-by-step solutions to millions of textbook problems written by subject matter experts!
Students have asked these similar questions
Create 2D array 4 *5. Ask the user to enter the number inside the array. Print the numbers organized by rows. Calculate the average for each row. Print the least average. Finally, create a method that receives a 2D array to print its elements reverse starting from the last element.
This is the process of actually creating the array object and associating it with the array variable. Give a one-word answer.
Try using the ref or out keyword to pass in an array argument and see what happens.

Chapter 12 Solutions

Java: An Introduction to Problem Solving and Programming (7th Edition)

Ch. 12.1 - Prob. 12STQCh. 12.2 - Prob. 13STQCh. 12.2 - Prob. 14STQCh. 12.2 - Prob. 15STQCh. 12.2 - Prob. 16STQCh. 12.3 - Prob. 17STQCh. 12.3 - Prob. 18STQCh. 12.3 - Prob. 19STQCh. 12.3 - Write a definition of a method isEmpty for the...Ch. 12.3 - Prob. 21STQCh. 12.3 - Prob. 22STQCh. 12.3 - Prob. 23STQCh. 12.3 - Prob. 24STQCh. 12.3 - Redefine the method getDataAtCurrent in...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.4 - Revise the definition of the class ListNode in...Ch. 12.4 - Prob. 30STQCh. 12 - Repeat Exercise 2 in Chapter 7, but use an...Ch. 12 - Prob. 2ECh. 12 - Prob. 3ECh. 12 - Repeat Exercises 6 and 7 in Chapter 7, but use an...Ch. 12 - Write a static method removeDuplicates...Ch. 12 - Write a static method...Ch. 12 - Write a program that will read sentences from a...Ch. 12 - Repeat Exercise 12 in Chapter 7, but use an...Ch. 12 - Write a program that will read a text file that...Ch. 12 - Revise the class StringLinkedList in Listing 12.5...Ch. 12 - Prob. 12ECh. 12 - Write some code that will use an iterator to...Ch. 12 - Prob. 14ECh. 12 - Write some code that will use an iterator to...Ch. 12 - Prob. 17ECh. 12 - Revise the method selectionSort within the class...Ch. 12 - Repeat the previous practice program, but instead...Ch. 12 - Repeat Practice Program 1, but instead write a...Ch. 12 - Write a program that allows the user to enter an...Ch. 12 - Write a program that uses a HashMap to compute a...Ch. 12 - Write a program that creates Pet objects from data...Ch. 12 - Repeat the previous programming project, but sort...Ch. 12 - Repeat the previous programming project, but read...Ch. 12 - Prob. 9PPCh. 12 - Prob. 10PPCh. 12 - Prob. 11PPCh. 12 - Prob. 12PPCh. 12 - Prob. 13PPCh. 12 - Prob. 14PPCh. 12 - Prob. 15PP
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
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Java Math Library; Author: Alex Lee;https://www.youtube.com/watch?v=ufegX5o8uc4;License: Standard YouTube License, CC-BY