Write a java program that computes three measures of central tendency of a given set of students marks: mean, median, and mode.

Generate students marks randomly.

Please include comments in the program so that I can understand what is being done.

Generate students marks randomly.

Please include comments in the program so that I can understand what is being done.

View Answers

March 22, 2010 at 4:02 PM

Hi Friend,

Try the following code:

import java.util.*;

class Find {

//This method stores the sum of all the elements of array in variable sum and returns the average by dividing the sum with the length of array.

public static int findMean(int array[]){

int sum = 0;

int average=0;

int length=array.length;

for(int j = 0; j < length; j++){

sum += array[j];

average = sum / length;

}

return average;

}

//This method firstly sort the array and returns middle element if the length of arrray is odd.Otherwise it will return the average of two miidele elements.

public static int findMedian(int array[]) {

int length=array.length;

int[] sort = new int[length];

System.arraycopy(array, 0, sort, 0, sort.length);

Arrays.sort(sort);

if (length % 2 == 0) {

return (sort[(sort.length / 2) - 1] + sort[sort.length / 2]) / 2;

} else {

return sort[sort.length / 2];

}

}

//This method counts the occurrence of each element of array and return the lement which has the maximum count.

public static int findMode(int array[]) {

int max=0, maxCount=0;

int length=array.length;

for (int i = 0; i <length; ++i) {

int count = 0;

for (int j = 0; j <length; ++j) {

if (array[j] == array[i]) ++count;

}

if (count > maxCount) {

maxCount = count;

max = array[i];

}

}

return max;

}

public static void main(String[] args)

{

int min = 30;

int max = 50;

int[] ranNum = new int[5];

System.out.println("Students Marks are:");

for ( int i = 0; i < ranNum.length; i++) {

ranNum[i] = (int)(Math.random() * (max - min + 1) ) + min;

System.out.println(ranNum[i]);

}

int mean=Find.findMean(ranNum);

System.out.println("Mean= "+mean);

int median=Find.findMedian(ranNum);

System.out.println("Median= "+median);

int mode=Find.findMode(ranNum);

System.out.println("Mode= "+mode);

}

}

Thanks

Try the following code:

import java.util.*;

class Find {

//This method stores the sum of all the elements of array in variable sum and returns the average by dividing the sum with the length of array.

public static int findMean(int array[]){

int sum = 0;

int average=0;

int length=array.length;

for(int j = 0; j < length; j++){

sum += array[j];

average = sum / length;

}

return average;

}

//This method firstly sort the array and returns middle element if the length of arrray is odd.Otherwise it will return the average of two miidele elements.

public static int findMedian(int array[]) {

int length=array.length;

int[] sort = new int[length];

System.arraycopy(array, 0, sort, 0, sort.length);

Arrays.sort(sort);

if (length % 2 == 0) {

return (sort[(sort.length / 2) - 1] + sort[sort.length / 2]) / 2;

} else {

return sort[sort.length / 2];

}

}

//This method counts the occurrence of each element of array and return the lement which has the maximum count.

public static int findMode(int array[]) {

int max=0, maxCount=0;

int length=array.length;

for (int i = 0; i <length; ++i) {

int count = 0;

for (int j = 0; j <length; ++j) {

if (array[j] == array[i]) ++count;

}

if (count > maxCount) {

maxCount = count;

max = array[i];

}

}

return max;

}

public static void main(String[] args)

{

int min = 30;

int max = 50;

int[] ranNum = new int[5];

System.out.println("Students Marks are:");

for ( int i = 0; i < ranNum.length; i++) {

ranNum[i] = (int)(Math.random() * (max - min + 1) ) + min;

System.out.println(ranNum[i]);

}

int mean=Find.findMean(ranNum);

System.out.println("Mean= "+mean);

int median=Find.findMedian(ranNum);

System.out.println("Median= "+median);

int mode=Find.findMode(ranNum);

System.out.println("Mode= "+mode);

}

}

Thanks

Related Tutorials/Questions & Answers:

- Java Tutorials
- Java Code example
- Java Programming
- Java Beginners Examples
- Applet Tutorials
- Awt Tutorials
- Java Certification
- Interview Question
- Java Servlets Tutorial
- Jsp Tutorials
- Java Swing Tutorials
- JDBC Tutorial
- EJB Tutorials
- Java Server Faces (JSF) Tutorial
- WAP Tutorial
- Struts Tutorial
- JAXB Tutorial
- Spring FrameWork Tutorial
- SOA&Web Services Tutorials
- Bioinformatics Tutorials
- MySQL Tutorials
- JAVA DOM Tutorial
- XML Tutorial
- EAI Articles
- Many Programming Tutorials Links
- Tutorials Books
**Java Script Tutorial****Ajax Tutorial****Dojo Tutorials****Programming Books****Trainings****Flex****Ant****RDF**