Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import javax.swing.JOptionPane;
- import java.util.*;
- import java.util.StringTokenizer;
- public class Main {
- public static void main(String[] args) throws IOException {
- String fname = "data.txt"; //Read in the data file for use in the array
- String pass= JOptionPane.showInputDialog("Please enter the " +
- "password to continue:"); /*Have the user enter the password to
- access the file. */
- checkPass(pass); // Verify that the password is correct before continuing.
- readData (fname); // Read data, print output and save output file.
- }
- private static void checkPass (String pass)
- {
- String password= "INF260";
- int passCount= 0;
- if (pass.equals(password)) {
- System.out.println("The password is correct. Continuing...");
- }
- else {
- do {
- pass= JOptionPane.showInputDialog("Please re-enter the" +
- "password:");
- passCount++;
- } while (!pass.equals(password) && passCount < 2);
- if (!pass.equals(password)) {
- System.out.println("You have tried to enter the " +
- "password too many times. Exiting...");
- System.exit(0);
- }
- else {
- System.out.println("The password is correct. Continuing...");
- }
- }
- }
- public static void readData (String data) throws IOException{
- FileReader inputData= new FileReader (data);
- BufferedReader findNum= new BufferedReader (inputData);
- String str= findNum.readLine ();
- int count=-1;
- int countNum= 0;
- double total= 0;
- double min= 0;
- double max= 0;
- double average= 0;
- FileWriter writeFile = new FileWriter("sales.txt");
- PrintWriter printFile = new PrintWriter(writeFile);
- while (str != null)
- {
- double num= Double.parseDouble (str);
- if (count == 0){
- countNum++; // counter of Reciepts to use
- }
- str = findNum.readLine();
- }
- double [][] input = new double [countNum][10];
- total= getCurrentTotal(input); /*This will get the total
- from the method getCurrentTotal.*/
- min= getCurrentMin(input); /*This will get the minimum value from
- the method getCurrentMin.*/
- max= getCurrentMax (input); /*This will get the maximum value from
- the method getCurrentMax.*/
- average= (total / countNum); //Calculate the average.
- System.out.println("The List of Today's Sales:");
- for (int row = 0; row < input.length; row++){
- System.out.println ();
- System.out.println("Customer " + row + "t");
- for (int column = 0; column < input[row].length; column++){
- if (input [row].length < 10){
- System.out.println(input[row][column] + "t");
- str = findNum.readLine();
- }
- else{
- System.out.println ("There are too many receipts" +
- " for one Customer.n");
- System.exit (0);
- }
- }
- }
- System.out.println ("There are " + countNum + "receipts in the list.");
- /*This will print the total of receipts in the list.*/
- System.out.println ("The total of today's sales is $" + total); /*
- This will print the total of the sales for the day.*/
- System.out.println ("The average of today's sales is $" + average); /*
- This will print the average sale total.*/
- System.out.println ("The highest receipt is $" + max); /* This will print
- the highest sale.*/
- System.out.println ("The lowest receipt is $" + min); /* This will print
- the lowest sale.*/
- Date date = new Date();
- System.out.println ("n The current time is:" + date.toString()); /* This
- will print the current date and time */
- }
- public static double getCurrentTotal (double [][] input){
- double totalAmount = 0;
- for (int row = 0; row < input.length; row++){
- for (int column = 0; column < input [row].length; column++){
- totalAmount += input [row][column];
- }
- }
- return totalAmount;
- }
- public static double getCurrentMin (double [][] input) {
- double currentMin = input[0][0];
- for (int row = 0; row < input.length; row++){
- for (int column = 0; column < input [row].length; column++){
- if (currentMin > input[row][column])
- currentMin = input[row][column];
- }
- }
- return currentMin;
- }
- public static double getCurrentMax (double [][] input){
- double currentMax = input[0][0];
- for (int row = 0; row < input.length; row++){
- for (int column = 0; column < input [row].length; column++){
- if (currentMax < input[row][column]){
- currentMax = input[row][column];
- }
- }
- }
- return currentMax;
- }
- }
- // from your main method
- String fname = "data.txt";
- readData (fname);
- // the method being called
- public static void readData (String data[][]){
- BufferedReader br = new BufferedReader(new FileReader(data));
Add Comment
Please, Sign In to add comment