Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

The local Kids League coach keeps some of the baseball team statistics in a text file organized as follows: each line of the file contains

The local Kids League coach keeps some of the baseball team statistics in a text file organized as follows: each line of the file contains the name of the player followed by a list of symbols indicating what happened on each at bat for the player. The letter h indicates a hit, o an out, w a walk, and s a sacrifice fly. Each item on the line is separated by a comma. There are no blank spaces except in the player name. So, for example the file could look as follows:

Sam Slugger,h,h,o,s,w,w,h,w,o,o,o,h,s

Jill Jenks,o,o,s,h,h,o,o

Will Jones,o,o,w,h,o,o,o,o,w,o,o

The file BaseballStats.java contains the skeleton of a program thats reads and processes a file in this format. Study the program and note that three Scanner objects are declared. One scanner (scan) is used to read in a file name from standard input. The file name is then used to create a scanner (fileScan) to operate on that file. A third scanner (lineScan) will be used to parse each line in the file. Also note that the main method throws an IOException. This is needed in case there is a problem opening the file.

1. First add a while loop that reads each line in the file and prints out each part (name, then each at bat, without the commas) in a way similar to the URLDissector program in Listing 5.10 of the text. In particular inside the loop you need to

a. read the next line from the file

b. create a comma delimited scanner (lineScan) to parse the line

c. read and print the name of the player, and finally,

d. have a loop that prints each at bat code.

2. Compile and run the program to be sure it works.

3. Now modify the inner loop that parses a line in the file so that instead of printing each part it counts (separately) the number of hits, outs, walks, and sacrifices. Each of these summary statistics, as well as the batting average, should be printed for each player. Recall that the batting average is the number of hits divided by the total number of hits and outs.

4. Test the program on the file stats.dat and stats2.dat .

// **************************************************************** // BaseballStats.java

//

// Reads baseball data in from a comma delimited file. Each line

// of the file contains a name followed by a list of symbols

// indicating the result of each at bat: h for hit, o for out,

// w for walk, s for sacrifice. Statistics are computed and

// printed for each player.

// ****************************************************************

import java.util.Scanner;

import java.io.*;

public class BaseballStats

{

//-------------------------------------------------

// Reads baseball stats from a file and counts

// total hits, outs, walks, and sacrifice flies

// for each player.

//-------------------------------------------------

public static void main (String[] args) throws IOException

{

Scanner fileScan, lineScan;

String fileName;

Scanner scan = new Scanner(System.in);

System.out.print ("Enter the name of the input file: ");

fileName = scan.nextLine();

fileScan = new Scanner(new File(fileName));

// Read and process each line of the file } }

stats.dat

Willy Wonk,o,o,h,o,o,o,o,h,w,o,o,o,o,s,h,o,h

Shari Jones,h,o,o,s,s,h,o,o,o,h,o,o,o,o

Barry Bands,h,h,w,o,o,o,w,h,o,o,h,h,o,o,w,w,w,h,o,o

Sally Slugger,o,h,h,o,o,h,h,w

Missy Lots,o,o,s,o,o,w,o,o,o

Joe Jones,o,h,o,o,o,o,h,h,o,o,o,o,w,o,o,o,h,o,h,h

Larry Loop,w,s,o,o,o,h,o,o,h,s,o,o,o,h,h

Sarah Swift,o,o,o,o,h,h,w,o,o,o

Bill Bird,h,o,h,o,h,w,o,o,o,h,s,s,h,o,o,o,o,o,o

Don Daring,o,o,h,h,o,o,h,o,h,o,o,o,o,o,o,h

Jill Jet,o,s,s,h,o,o,h,h,o,o,o,h,o,h,w,o,o,h,h,o

stats2.dat

Barry Bands,h,h,w,o,o,o,w,h,o,o,h,h,o,o,w,w,w,h,o,o

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Intelligent Information And Database Systems 6th Asian Conference Aciids 2014 Bangkok Thailand April 7 9 2014 Proceedings Part I 9 2014 Proceedings Part 1 Lnai 8397

Authors: Ngoc-Thanh Nguyen ,Boonwat Attachoo ,Bogdan Trawinski ,Kulwadee Somboonviwat

2014th Edition

3319054759, 978-3319054759

More Books

Students also viewed these Databases questions