1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
mart [117]
3 years ago
6

Fred wants to analyze his spending habits of the past few years and has gathered information on the checks he has written from 2

014 – 2018. The data is in a file in the form YYYY XXXXXX.XX where YYYY represents the year and XXXXXX.XX represents the dollar amount of the check. Because it took a while to gather the information, the data is not in year order. See the Input Data at the end of the assignment. After reading in the data, he wants to print a report by year of the number of checks written, the total amount spent and the average amount of the check. Also, an overall total of the five years appears after the individual data of each year.
Using one array to store the running total of the check amounts by year, an array to hold the number of checks written by year write the Java code to read and store the data and then do the necessary computations to produce a report in the format below. Use printf to display the dollar amounts with two decimal places and right adjust all output. You can set an int variable baseYear to 2014 and subtract it from the actual year to get the correct subscript in each array.

Sample report
Year # Checks Total Spent Average Check
2014 25 3452.23 198.02
. . . .
. . . .
. . . .
2018 33 1097.87 125.67
Overall Total 254 15478.98 167.65

The numbers appearing in the sample report above are not related to the actual input data to follow.
Input Data

2017 876.20
2014 345.67
2014 100.00
2016 345.89
2017 45.34
2015 89.23
2016 1000.00
2017 239.09
2018 67.89
2018 198.00
2015 145.45
2018 180.00
2015 505.23
2014 78.65
2014 42.98
2014 370.00
Computers and Technology
1 answer:
finlep [7]3 years ago
4 0

Answer:

See explaination

Explanation:

import java.io.File;

import java.io.FileNotFoundException;

import java.util.Scanner;

public class SpendAnalysis {

// year 2014 data will be at index 0

// year 2015 data will be at index 1

// year 2016 data will be at index 2

// year 2017 data will be at index 3

// year 2018 data will be at index 4

private static int[] checkIssued={0,0,0,0,0}; // will store the count of check for the year

private static double[] totalAmount={0,0,0,0,0}; // will store the total amount spent for that year

private static final int BASE_YEAR=2014; // base year

// need to update the below line so that it points to the input text file need to be read

private static final String INPUT_FILE="D:\\spent.txt";

public static void main(String[] args) {

// first read all the data from the input file and populate the array

try {

populateData();

} catch (FileNotFoundException e) {

System.out.println(INPUT_FILE+" could not read. Program will terminate now.");

System.exit(1);

}

// second print the data in the console

reportSpending();

}

// read data from input file and update the two arrays

public static void populateData() throws FileNotFoundException {

Scanner fileInput = new Scanner(new File(INPUT_FILE));

while(fileInput.hasNext()){

String[] lineTokens = fileInput.nextLine().split("\\s+");

if(lineTokens.length==2){

int year = Integer.parseInt(lineTokens[0].trim());

double amount = Double.parseDouble(lineTokens[1].trim());

checkIssued[year-BASE_YEAR]+=1;

totalAmount[year-BASE_YEAR]+=amount;

}

}

}

// print the report in the console

public static void reportSpending(){

System.out.println(String.format("%-13s%-15s%-15s%-15s","Year","# Checks","Total Spent","Average Check"));

System.out.println(String.format("%-15d%-15d$%-15.2f$%-15.2f",2014,checkIssued[0],totalAmount[0],totalAmount[0]/checkIssued[0]));

System.out.println(String.format("%-15d%-15d$%-15.2f$%-15.2f",2015,checkIssued[1],totalAmount[1],totalAmount[1]/checkIssued[1]));

System.out.println(String.format("%-15d%-15d$%-15.2f$%-15.2f",2016,checkIssued[2],totalAmount[2],totalAmount[2]/checkIssued[2]));

System.out.println(String.format("%-15d%-15d$%-15.2f$%-15.2f",2017,checkIssued[3],totalAmount[3],totalAmount[3]/checkIssued[3]));

System.out.println(String.format("%-15d%-15d$%-15.2f$%-15.2f",2018,checkIssued[4],totalAmount[4],totalAmount[4]/checkIssued[4]));

int totalChecks = checkIssued[0]+checkIssued[1]+checkIssued[2]+checkIssued[3]+checkIssued[4];

double totalSpent = totalAmount[0]+totalAmount[1]+totalAmount[2]+totalAmount[3]+totalAmount[4];

System.out.println(String.format("%-15s%-15d$%-15.2f$%-15.2f","Overall Total",totalChecks,totalSpent,totalSpent/totalChecks));

}

}

You might be interested in
Anil needs to show the overlap of people who live in a certain neighborhood in his city and who support a specific political can
pantera1 [17]

Since Anil needs to show the overlap of people who live in a certain neighborhood in his city that supports a specific political candidate, the type of conceptual diagram which he should use is a: B: Venn diagram.

<h3>What is a Venn diagram?</h3>

A Venn diagram can be defined as a circular graphical (visual) tool that is typically used for representing, logically comparing and contrasting two (2) or more finite sets of data such as objects, students, events, voters, concepts, people, etc.

In this context, we can reasonably infer and logically deduce that a Venn diagram is a type of conceptual diagram which can be used by Anil in illustrating the overlap of people who are living in a certain neighborhood in his city and supports a specific political candidate in an election.

Read more on Venn diagram here: brainly.com/question/24581814

#SPJ1

8 0
1 year ago
Jenny needs to record the names of 30 students, write down the subjects they studied, and note their grades in each subject afte
Marina86 [1]
The correct answer for this question is this one: "She can rename the 2 worksheet by right clicking the sheet tab. After right clicking the mouse, select Rename Sheet and type the preferred name of the sheet."  Hope this helps answer your question and have a nice day ahead.
5 0
4 years ago
Read 2 more answers
. Explain how semaphores are handled in embedded systems design
Readme [11.4K]

Answer:

 Semaphores carries the signal between the task and interrupts that does not carry any type of additional data in the embedded system. A semaphore is used as synchronization object and helps in maintain the value between zero and the specific higher value.  

It basically reduced the value each time and complete the semaphore object in the embedded system. Binary semaphores is the main type of semaphore that invoke activation of the task.

 

5 0
3 years ago
Create a script that asks for the visitor's weight in pounds and his/her height in inches. The program should then calculate the
Nookie1986 [14]

Answer:

weightPound = float(input("Enter your weight in pounds "))

heightInches = float(input("Enter your height in inches "))

weightKg = weightPound*0.453592

heightMeter = heightInches*0.0254

BodyMassIndex = weightKg/(heightMeter*heightMeter)

print("")

print("Your Weight in kilograms is: ")

print(weightKg)

print("Your Height in meters is: ")

print(heightMeter)

print("Your Body Mass Index is: ")

print(BodyMassIndex)

Explanation:

  1. Above is a Python Script to accomplish the task
  2. See attached image for the program output.
  3. Observe that we used the formula weight/height*height to calculate the Body Mass Index
  4. Observe also the conversion from pounds to Kilogram and inches to meters

6 0
3 years ago
Today's networks can offer differing levels of ________, which include specifications for maximum delay and minimum throughput
xeze [42]
The answer is quality service. 
Today's networks can offer different levels of quality service, which include specifications for a maximum delay and minimum throughput. Quality service or QoS requirements in terms of the maximum allowed delay jitter for such applications.  Quality of Service is the set of techniques to manage network resources.
7 0
3 years ago
Read 2 more answers
Other questions:
  • Define function print_popcorn_time() with parameter bag_ounces. If bag_ounces is less than 3, print "Too small". If greater than
    15·1 answer
  • A slideshow that accompanies an oral report is known as what?
    6·1 answer
  • Host A is sending Host B a large le over a TCP connection. Assume Host B has no data to send Host A. Host B will not send acknow
    14·1 answer
  • Which one is not an operating system?1.mac 2.Microsoft office3.Iso.3.Android
    11·1 answer
  • Green field country is planning to conduct a cricket match between two teams A and B. a large crowd is expected in the stadium a
    6·1 answer
  • Create a TicTacToe class that initializes a 3x3 board of "-" values. We will use this class in future exercises to fully build o
    9·1 answer
  • A technician has been asked to upgrade a processor and needs to do some research. The computer is just a couple of years old. Wh
    13·1 answer
  • Who innovated an aeroplane? ​
    5·1 answer
  • The way a student prepares for a test or reviews academic material is referred to as
    8·2 answers
  • Any idea how to make my simple python projects such as guess the number, mad libs, etc. even better?
    15·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!