import java.util.Scanner; public class UserStory { private String[] countries = FileReader.toStringArray("countries.txt"); private double[] populations = FileReader.toDoubleArray("populations.txt"); private double[] unemployment = FileReader.toDoubleArray("unemployment.txt"); private double[] internetpercent = FileReader.toDoubleArray("internetpercent.txt"); private int opt1; private int opt2; private int width; private int height; public UserStory() { this(0, 2, 50, 100); } public UserStory(int opt1, int opt2, int width, int height){ this.opt1 = opt1; this.opt2 = opt2; this.width = width; this.height = height; } public double[] getArrayFromOpt(int i) { switch(i) { case 0: return this.populations; case 1: return this.unemployment; case 2: return this.internetpercent; default: return null; } } public String getNameFromOpt(int i) { switch(i) { case 0: return "populations"; case 1: return "unemployment"; case 2: return "internetpercent"; default: return null; } } // Method to find maximum in an array public double max(double[] arr){ double max = arr[0]; for (int i = 0; i < arr.length; i++) if (arr[i] > max){ max = arr[i]; } return max; } // Find the corrosponding country name, of largest value of array public String maxStr(double[] arr){ double max = arr[0]; String maxName = ""; for (int i = 0; i < arr.length; i++) if (arr[i] > max){ max = arr[i]; maxName = this.countries[i]; } return maxName; } // Method to find minimum in an array public double min(double[] arr){ double min = arr[0]; for (int i = 0; i < arr.length; i++) if (arr[i] < min){ min = arr[i]; } return min; } // Find the corrosponding country name, of smallest value of array public String minStr(double[] arr){ double min = arr[0]; String minName = ""; for (int i = 0; i < arr.length; i++) if (arr[i] < min){ min = arr[i]; minName = this.countries[i]; } return minName; } // A method to find at which x and y choords are there points. public boolean[][] pointAtChoord(double[] arr1, double[] arr2, double maxX, double maxY) { // Create a 2d boolean array that is all false boolean[][] result = new boolean[this.width][this.height]; for(int a = 0; a < this.width; a++){ for(int b = 0; b < this.height; b++){ result[a][b] = false; } } for(int i=0;i