Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

//import statemnts for Random, Scanner and IO import java.util.Random; import java.util.Scanner; import java.io.*; public class Hobbits { public static void main(String[] args) throws IOException {

//import statemnts for Random, Scanner and IO import java.util.Random; import java.util.Scanner; import java.io.*;

public class Hobbits { public static void main(String[] args) throws IOException { final int NUM_HOBBITS = 5; final int NUM_COLUMNS = 2; String fileName = "hobbits.csv"; //call populateHobbits( ) to create the two dimensional array double[][] hobbits = populateHobbits(NUM_HOBBITS, NUM_COLUMNS); //display the number of hobbits System.out.println(hobbits.length + " hobbits accepted Gandalf's invitation to lunch "); //calculate the means of the columns double[] hobbitMeans = getColMeans(hobbits); //write hobbits array to file writeHobbits(hobbits, fileName); //read and display the file that has been read readHobbitses(fileName); //call displayColMeans to display hobbit means displayColMeans(hobbitMeans); }

//method to populate hobbits array with random double values public static double[][] populateHobbits(int numHobbits, int numCols) { final double HT_MULTIPLIER = 10.0; //multiplier for the hobbit height final double WT_MULTIPLIER = 250.0; //multiplier for the hobbit weight //instantiate Random object Random rand = new Random(); //declare two dim array with numHobbits rows numCols columns double[][] hobbitArray = new double[numHobbits][numCols]; //assign random double values to all elements for (int i = 0; i

//print columen heading of the array of stats outFile.println("HEIGHT,WEIGHT");

for (int i = 0; i

//if at end of a row, add newline char if (j == ar[i].length - 1) outFile.print(" "); else //add the "," delimiter outFile.print(","); } //end of inner loop } //end of outer loop

outFile.close(); //close outfile

System.out.println("The file was successfully written "); } //end of method //method to read the hobbits file public static void readHobbitses(String fileName) throws IOException { //open the file to read File dataFile = new File(fileName); Scanner inFile = new Scanner(dataFile);

//variable to contain the substrings of one line of file String[] oneLine = new String[2];

int counter = 0; //keep track of line numbers

System.out.println("Data read from the " + fileName + " file:"); //read file, one line at a time while (inFile.hasNext()) { String dataLine = inFile.nextLine();

oneLine = dataLine.split(","); //split line with delimiter

if (counter > 0) //for second line and beyond, format doubles { System.out.printf("%.2f\t\t%.2f ", Double.parseDouble(oneLine[0]), Double.parseDouble(oneLine[1])); } else //if this first line, display the column heading System.out.println(oneLine[0] + "\t" + oneLine[1]); if (inFile.hasNext()) counter++; //keep track of how many lines } //end while loop read file

inFile.close(); //close the file

System.out.println("The file has now been successfully read. ");

} //end of method

//method to determine average values of columns two dim array public static double[] getColMeans(double[][] ar) { //local array to store means //array is sized according to length second dimension of parameter //first element is mean of first column //second element is mean of second column, etc double[] meanAr = new double[ar[0].length];

/ested for loop to iterate through elements in parameter for (int i = 0; i

//replace the sum with the average; i.e. divide by number of rows for (int i = 0; i

return meanAr; } //end of method image text in transcribed

Lab16 Sample output

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

More Books

Students also viewed these Databases questions

Question

Have roles been defined and assigned?

Answered: 1 week ago