Add a method description to all private methods in the file. Add @param to all p
ID: 3786619 • Letter: A
Question
Add a method description to all private methods in the file.
Add @param to all private methods in file where present.
Add @return to all private methods in file where present.
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;
import java.util.Scanner;
public class AssignmentOne
{
public static void main(String[] args)
{
ArrayList<String> input = getInput(args[0]);
printInput(input);
printInputAndLengths(input);
printReverseInput(input);
printSortedInput(input);
int[] theInts = generateRandomInts();
printInts(theInts);
printAverage(theInts);
printStdDev(theInts);
printSquareRoots(theInts);
}
private static void printInput(ArrayList<String> input)
{
printInput("The Input File", input, false);
}
private static void printInputAndLengths(ArrayList<String> input)
{
printInput("The Input File and Lengths", input, true);
}
private static void printInput(String title, ArrayList<String> input, boolean withLengths)
{
System.out.println(" " + title + " ");
for(String s : input)
{
System.out.print(s + " ");
if(withLengths) System.out.print(s.length());
System.out.println();
}
}
private static void printInts(int[] theInts)
{
System.out.println(" Some Random Integers ");
for(int ii = 0; ii < theInts.length; ++ii)
{
System.out.println(theInts[ii]);
}
}
private static void printReverseInput(ArrayList<String> input)
{
System.out.println(" The Input File Reversed ");
for(String s : input)
{
String reverse = "";
int pos = s.length() - 1;
while(pos >= 0) reverse += s.charAt(pos--);
System.out.println(reverse);
}
}
private static void printSortedInput(ArrayList<String> input)
{
ArrayList<String> sorted = new ArrayList<String>(input);
Collections.sort(sorted);
printInput("Sorted String Input", sorted, false);
}
private static ArrayList<String> getInput(String fileName)
{
try
{
ArrayList<String> input = new ArrayList<String>();
Scanner sc = new Scanner(new BufferedReader(new FileReader(fileName)));
while(sc.hasNext()) input.add(sc.next());
sc.close();
return input;
}
catch(Exception exc)
{
System.out.println("Exception: " +exc.getMessage() + " opening input file " + fileName);
System.exit(0);
}
return null;
}
private static int[] generateRandomInts()
{
final int SIZE = 15;
int[] output = new int[SIZE];
Random gen = new Random();
final int MAX = (int)(Math.pow(2, 20));
for(int ii = 0; ii < SIZE; ++ii) output[ii] = gen.nextInt(MAX);
return output;
}
private static int getSum(int[] input)
{
int sum = 0;
for(int ii = 0; ii < input.length; ++ii) sum += input[ii];
return sum;
}
private static double getAverage(int[] input)
{
double size = input.length;
if(size == 0) return 0.0;
else
{
return getSum(input) / size;
}
}
private static double getStdDev(int[] input)
{
double stdDev = 0.0;
int n = input.length;
if(n == 0) return 0.0;
else
{
double ave = getAverage(input);
for(int ii = 0; ii < n; ++ii)
{
stdDev += (input[ii] - ave) * (input[ii] - ave);
}
return Math.sqrt(stdDev / n);
}
}
private static void printAverage(int[] input)
{
System.out.println(" The average of the " + input.length + " integers is " + getAverage(input));
}
private static void printStdDev(int[] input)
{
System.out.println(" The Standard Deviation of the " + input.length + " integers is " + getStdDev(input));
}
private static void printSquareRoots(int[] input)
{
System.out.println(" n NewtonRaphson Math.sqrt Difference ");
for(int ii = 0; ii < input.length; ++ii)
{
double v1 = NewtonRaphsonSqrt(input[ii]);
double v2 = Math.sqrt(input[ii]);
System.out.println(input[ii] + " " + v1 + " " + v2 + " " + (v1 - v2));
}
}
private static double NewtonRaphsonSqrt(double n)
{
final int MAX_TRIES = 10000000;
final double EPS = 0.0000001;
double answer = n / 2.0;
int tries = 0;
while(Math.abs(answer * answer - n) > EPS && tries < MAX_TRIES)
{
answer = answer - ((answer * answer - n)/(2 * answer));
++tries;
}
return answer;
}
}
Explanation / Answer
//importing packages
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;
import java.util.Scanner;
//creating class named as AssignmentOne
public class AssignmentOne
{
public static void main(String[] args) //main method start
{
ArrayList<String> input = getInput(args[0]);
printInput(input);
printInputAndLengths(input);
printReverseInput(input);
printSortedInput(input);
int[] theInts = generateRandomInts();
printInts(theInts);
printAverage(theInts);
printStdDev(theInts);
printSquareRoots(theInts);
}
// method overloading
private static ArrayList<String> printInput(ArrayList<String> input)
{
//calling printInput() method using the following parameters
printInput("The Input File", input, false);
Return input;
}
private static ArrayList<String> printInputAndLengths(ArrayList<String> input)
{
//calling printInput() method using the following parameters
printInput("The Input File and Lengths", input, true);
return input;
}
private static ArrayList<String> printInput(String title, ArrayList<String> input, boolean withLengths)
{
System.out.println(" " + title + " ");
for(String s : input)
{
System.out.print(s + " ");
if(withLengths)
System.out.print(s.length());
System.out.println();
}
return s;
}
//printing integers from 0 to given number theInts
private static int printInts(int[] theInts)
{
System.out.println(" Some Random Integers ");
for(int ii = 0; ii < theInts.length; ++ii)
{
System.out.println(theInts[ii]);
}
return 0;
}
//printing reserves input
private static ArrayList<String> printReverseInput(ArrayList<String> input)
{
System.out.println(" The Input File Reversed ");
for(String s : input)
{
String reverse = "";
int pos = s.length() - 1;
while(pos >= 0) reverse += s.charAt(pos--);
}
return reverse;
}
//method for sorted input
private static ArrayList<String> printSortedInput(ArrayList<String> input)
{
ArrayList<String> sorted = new ArrayList<String>(input);
Collections.sort(sorted);
printInput("Sorted String Input", sorted, false);
return sorted;
}
//method returns arraylist contains the given input
private static ArrayList<String> getInput(String fileName)
{
try
{
ArrayList<String> input = new ArrayList<String>();
Scanner sc = new Scanner(new BufferedReader(new FileReader(fileName)));
while(sc.hasNext()) input.add(sc.next());
sc.close();
return input;
}
catch(Exception exc)
{
System.out.println("Exception: " +exc.getMessage() + " opening input file " + fileName);
System.exit(0);
}
return null;
}
//method returns integer array of random numbers
private static int[] generateRandomInts()
{
final int SIZE = 15;
int[] output = new int[SIZE];
Random gen = new Random();
final int MAX = (int)(Math.pow(2, 20));
for(int ii = 0; ii < SIZE; ++ii) output[ii] = gen.nextInt(MAX);
return output;
}
//method returns integer sum of input array
private static int getSum(int[] input)
{
int sum = 0;
for(int ii = 0; ii < input.length; ++ii) sum += input[ii];
return sum;
}
//method returns double average of input array
private static double getAverage(int[] input)
{
double size = input.length;
if(size == 0) return 0.0;
else
{
return getSum(input) / size;
}
}
//method returns double data type standard deviation of input array
private static double getStdDev(int[] input)
{
double stdDev = 0.0;
int n = input.length;
if(n == 0) return 0.0;
else
{
double ave = getAverage(input);
for(int ii = 0; ii < n; ++ii)
{
stdDev += (input[ii] - ave) * (input[ii] - ave);
}
return Math.sqrt(stdDev / n);
}
}
private static double printAverage(int[] input)
{
System.out.println(" The average of the " + input.length + " integers is " + getAverage(input));
return getAverage(input) ;
}
private static double printStdDev(int[] input)
{
System.out.println(" The Standard Deviation of the " + input.length + " integers is " + getStdDev(input));
return getStdDev(input);
}
private static int printSquareRoots(int[] input)
{
System.out.println(" n NewtonRaphson Math.sqrt Difference ");
for(int ii = 0; ii < input.length; ++ii)
{
double v1 = NewtonRaphsonSqrt(input[ii]);
double v2 = Math.sqrt(input[ii]);
System.out.println(input[ii] + " " + v1 + " " + v2 + " " + (v1 - v2));
}
return 0;
}
private static double NewtonRaphsonSqrt(double n)
{
final int MAX_TRIES = 10000000;
final double EPS = 0.0000001;
double answer = n / 2.0;
int tries = 0;
while(Math.abs(answer * answer - n) > EPS && tries < MAX_TRIES)
{
answer = answer - ((answer * answer - n)/(2 * answer));
++tries;
}
return answer;
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.