Write a method named evenNumbers that accepts a Scanner as a parameter reading i
ID: 3624994 • Letter: W
Question
Write a method named evenNumbers that accepts a Scanner as a parameter reading input from a file containing a series of integers, and report various statistics about the integers. You may assume that there is at least one integer in the file. Report the total number of numbers, the sum of the numbers, the count of even numbers and the percent of even numbers. For example, if a Scannerinput on file numbers.txt contains the following text:
5 7 2 8 9 10 12 98 7 14 20 22
then the call evenNumbers(input); should produce the following output:
12 numbers, sum = 214
8 evens (66.67%)
Must be in basic JAVA
Explanation / Answer
import java.text.DecimalFormat; public static void evenNumbers(Scanner myScanner) { int sum = 0; int totalNumbers = 0; int evenNumbers = 0; int numberRead = 0; DecimalFormat twoDForm = new DecimalFormat("#.##"); while(myScanner.hasNextInt()) { numberRead = myScanner.nextInt(); totalNumbers += 1; sum += numberRead; //Check for even numbers if(numberRead % 2 == 0) { evenNumbers += 1; } } System.out.println(totalNumbers + " numbers, sum = " + sum); System.out.println(evenNumbers + " evens (" + twoDForm.format((double)evenNumbers/(double)totalNumbers * 100.0) + "%)"); }
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.