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

Expert Solution & Answer
Book Icon
Chapter 12, Problem 1E

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);

    }

}

Expert Solution & Answer
Check Mark
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 an original network topology consisting of at least seven routers and twelve links, assigning arbitrary positive weights to each link. Using this topology, apply Dijkstra's Link-State Algorithm to compute the shortest paths from a source router of your choice to all other routers in the network. Your topology must be entirely your own design and should not resemble any examples from the textbook, lecture slides, or other students' work. Al-generated topologies are not permitted. Create a PowerPoint presentation that follows the format and style of slides 11 to 23 from Lecture Slide Set 06 (LS06). You should copy those slides and make any necessary changes, additions, or deletions to reflect your own topology, shortest-path calculations, and update tables. Do not alter the original slide style, layout, or formatting.
Create an original network topology consisting of at least seven routers and twelve links, assigning arbitrary positive weights to each link. Using this topology, apply Dijkstra's Link-State Algorithm to compute the shortest paths from a source router of your choice to all other routers in the network. Your topology must be entirely your own design and should not resemble any examples from the textbook, lecture slides, or other students' work. Al-generated topologies are not permitted. Create
x3003 x3008 1110 0000 0000 1100 1110 0010 0001 0000 0101 0100 1010 0000 x3004 0010 0100 0001 0011 x3005 0110 0110 0000 0000 X3006 0110 1000 0100 0000 x3007 0001 0110 1100 0100 0111 0110 0000 What does the following LC-3 program do? Trace Step by Step, SHOW ALL YOUR WORK. x3001 x3002 0000 x3009 0001 0000 0010 0001 X300A 0001 0010 0110 0001 x300B 0001 0100 1011 1111 x300C 0000 0011 1111 1000 X300D 1111 0000 0010 0101 x300E 0000 0000 0000 0101 x300F 0000 0000 0000 0100 x3010 0000 0000 0000 0011 x3011 0000 0000 0000 0110 x3012 0000 0000 0000 0010 x3013 x3014 0000 0000 0000 0000 0000 0100 0000 0111 x3015 0000 0000 0000 0110 x3016 0000 0000 0000 1000 x3017 0000 0000 0000 0111 x3018 0000 0000 0000 0101

Chapter 12 Solutions

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

Additional Engineering Textbook Solutions

Find more solutions based on key concepts
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 Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:9781337102124
Author:Diane Zak
Publisher:Cengage Learning
Text book image
Np Ms Office 365/Excel 2016 I Ntermed
Computer Science
ISBN:9781337508841
Author:Carey
Publisher:Cengage
Java Math Library; Author: Alex Lee;https://www.youtube.com/watch?v=ufegX5o8uc4;License: Standard YouTube License, CC-BY