Advertisement
agoncharova

As-6

Jun 26th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.37 KB | None | 0 0
  1. /* As-6 */
  2.  
  3. import javax.swing.*;
  4. import java.util.Arrays;
  5.  
  6. public class TestStatistics {
  7.     public static class Statistics {
  8.         private double[] data;
  9.         private double[] sortData;
  10.  
  11.         public Statistics(double[] data) {
  12.             this.data = data;
  13.             this.sortData = Arrays.copyOf(data, data.length);
  14.             Arrays.sort(sortData);
  15.         }
  16.  
  17.         public double[] getData() {
  18.             return data;
  19.         }
  20.  
  21.         public double[] getSortData() {
  22.             return sortData;
  23.         }
  24.  
  25.         public double findMin() {
  26.             return sortData[0];
  27.         }
  28.  
  29.         public double findMax() {
  30.             return sortData[sortData.length - 1];
  31.         }
  32.  
  33.         public double findMean() {
  34.             double sum = 0;
  35.             for (int i = 0; i < sortData.length; i++) {
  36.                 sum += sortData[i];
  37.             }
  38.             return sum / sortData.length;
  39.         }
  40.  
  41.         public double findMedian() {
  42.             return sortData[sortData.length / 2];
  43.         }
  44.  
  45.         public String getDataAsString() {
  46.             String result = "";
  47.             for (int i = 0; i < data.length; i++) {
  48.                 result += data[i] + " ";
  49.             }
  50.             return result.trim();
  51.         }
  52.  
  53.         public String getSortDataAsString() {
  54.             String result = "";
  55.             for (int i = 0; i < sortData.length; i++) {
  56.                 result += sortData[i] + " ";
  57.             }
  58.             return result.trim();
  59.         }
  60.     }
  61.  
  62.     public static void main(String[] args) {
  63.  
  64.         String in = JOptionPane.showInputDialog("Enter the size of the array: ");
  65.         int size = Integer.parseInt(in);
  66.  
  67.         double[] data = new double[size];
  68.         for (int i = 0; i < size; i++) {
  69.             String inData = JOptionPane.showInputDialog("Enter data value: ");
  70.             data[i] = Double.parseDouble(inData);
  71.         }
  72.  
  73.         Statistics statistics = new Statistics(data);
  74.  
  75.         String out = "Original data:\n" + statistics.getDataAsString() + "\nSorted data:\n" + statistics.getSortDataAsString()
  76.                 + "\nMin Value: " + statistics.findMin() + "\nMax Value: " + statistics.findMax() + "\nMean: " + statistics.findMean() + "\nMedian: "
  77.                 + statistics.findMedian();
  78.  
  79.         JOptionPane.showMessageDialog(null, out);
  80.         System.exit(0);
  81.  
  82.     }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement