import java.util.Scanner;
/****************************************************
 * StdDeviationHelper contains two methods to help
 * calculate a standard deviation
 *
 * @author Nancy Harris
 * @version V1 - 11/8/2011
 ****************************************************/
public class StdDeviationHelper
{
	/***************************************************
	 * mean calculates the mean of an 
	 * array of numbers
	 * 
	 * @param numbers The array of numbers
	 * @return the mean of those numbers
	 ***************************************************/
	public static double mean(double numbers[])
	{
		double sum;
		double mean;
      //------------------------------------------------------------
      // calculate the mean
      //------------------------------------------------------------
		
		sum = 0;
		if (numbers != null && numbers.length > 0)
		{
	      for (int ii = 0; ii < numbers.length; ii++)
	      {
	         sum = sum + numbers[ii];
	      }
	      mean = sum / numbers.length;
	   }
		else
			mean = 0;
		
		return mean;
	}
	/***************************************************
	 * stdDev calculates the standard deviation of an 
	 * array of numbers
	 * 
	 * @param numbers The array of numbers
	 * @return the standard deviation of those numbers
	 ***************************************************/
	public static double stdDev(double numbers[])
	{
		double sum;
		double mean;
		double stdDev;
	   //------------------------------------------------------------
      // calculate the standard deviation - sum used for sum squares
      //------------------------------------------------------------
		sum = 0;
		mean = mean(numbers);
		
		if (numbers != null && numbers.length > 0)
	   {
		   for (int ii = 0; ii < numbers.length; ii++)
	      {
	         sum = sum + Math.pow((numbers[ii] - mean), 2);
	      }
		
	      stdDev = Math.sqrt(sum / (numbers.length ));
		}
		else 
			stdDev = 0;
			
		return stdDev;
 	}     
}
         
       
