0% found this document useful (0 votes)
138 views3 pages

Array in Statistics Information

This Java program allows a user to input integer data points and calculates the statistical measures of arithmetic mean, median, mode, and standard deviation of the data set. It uses arrays to store the user input data, sorts the data, and calculates the measures through summation, sorting, and other mathematical operations. The output displays the calculated statistical information in an organized manner.

Uploaded by

MahmoudMohammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
138 views3 pages

Array in Statistics Information

This Java program allows a user to input integer data points and calculates the statistical measures of arithmetic mean, median, mode, and standard deviation of the data set. It uses arrays to store the user input data, sorts the data, and calculates the measures through summation, sorting, and other mathematical operations. The output displays the calculated statistical information in an organized manner.

Uploaded by

MahmoudMohammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Exercise: Write a Java program to answer about the statistical information such as

arithmetic mean, median, mode, and standard deviation of an integer data set. The data
points are input by the user from keyboard. This program will display the output similar to
the one shown below:

If you are not sure about statistical information such as arithmetic mean, median, mode,
and standard deviation, you will need to read this page:

Descriptive Measures

Solution:

import java.util.Scanner;

public class StatisticsInfo


{
public static void main(String[] args)
{
showStatistics();
}

static void showStatistics(){


//

int n;
float mean,median,std;
Scanner sc=new Scanner(System.in);
System.out.print("Enter number of data points:");
n=sc.nextInt();
if (n < 3)
{
System.out.println("The number of data points should be greater than 2.");

}
else
{

//declare an array of n size to store integral data points


int[] dataset = new int[n];
//allow user inputs
int i = 0;
for (i = 0; i < n; i++)
{
System.out.print("["+i+"]:");
dataset[i] = sc.nextInt();
}

//sort the data set


bubblesort(dataset, n);

//calculate the mean


int sum = 0;
int j = 0;
while (j < n)
{
sum = sum + dataset[j];
j++;
}

mean = (float)sum / n;

//calculate median
//If n is odd, median=dataset[n/2]
//If n is even, median=(dataset[n/2]+dataset[1+n/2])/2
//The index of array starts from 0, so you need to subtract 1 from the indices used in
calculating the median
if (n % 2 != 0) median = dataset[n / 2];
else median = (dataset[(n / 2) - 1] + dataset[n / 2]) / (float)2;

//calculate the mode


int[][] mode = new int[n][2];
//initialize 2D array storing numbers of occurences, and values
for (i = 0; i < 2; i++)
for (j = 0; j < n; j++) mode[j][i] = 0;
mode[0][0] = 1;

for (i = 0; i < n; i++)


for (j = 0; j < n - 1; j++)
if (dataset[i] == dataset[j + 1]) { ++mode[i][0]; mode[i][1] = dataset[i]; }

int max;
int k = 0;
max = mode[0][0];
for (j = 0; j < n; j++)
if (max < mode[j][0]) { max = mode[j][0]; k = j; }

//calculate standard deviation,std


float temp = 0.0f;

for (j = 0; j < n; j++)


{
temp = temp + (float)Math.pow(dataset[j] - mean, 2);
}

std = (float)Math.sqrt(temp / (n - 1));

//Show results

System.out.println("Statistical Information:");
System.out.println("===============================");
System.out.println("Arithmetic mean:"+mean);
System.out.println("Median:"+median);
if (mode[k][1] != 0)
System.out.println("Mode:"+ mode[k][1]);
else System.out.println("Mode: no mode");
System.out.println("Standard deviation:"+std);

//

You might also like