Question: I need help fixing the code (javascript) to have the results in 2 decimal places (except for mode). I also don't know how to create

I need help fixing the code (javascript) to have the results in 2 decimal places (except for mode). I also don't know how to create a numeric array. This is for a statistical calculator. Thanks!

performStatistics()

  • Input
    • None
  • Process
    • Create a numeric array of the values entered in the textarea control
    • Call each of the eight (8) functions (in some order)
      • Calling the functions in the correct logical order will help reduce duplicate code
    • Store the value returned by each function in the value property of the respective control
      • Example: document.getElementById("sum").value=calcSum();
  • Output
    • Always return false
      • Otherwise, the web browser may display an error message
  • --------------------

function resetAll(){

document.getElementById("TextBox").value = "";

document.getElementById("min").value = "";

document.getElementById("max").value = "";

document.getElementById("sum").value = "";

document.getElementById("mean").value = "";

document.getElementById("median").value = "";

document.getElementById("mode").value = "";

document.getElementById("std").value = "";

document.getElementById("variance").value = "";

}

function getResult(){

var xValue = document.getElementById("TextBox").value;

values = xValue.split(/\s+/);

for(i=0;i

values[i] = parseInt(values[i].trim());

}

min = calcMin(values);

max = calcMax(values);

sum = calcSum(values);

mean = calcMean(values);

median= calcMedian(values);

mode= calcMode(values);

variance= calcVariance(values);

std= calcStd(values);

document.getElementById("min").value = min;

document.getElementById("max").value = max;

document.getElementById("sum").value = sum;

document.getElementById("mean").value = mean;

document.getElementById("median").value = median;

document.getElementById("mode").value = mode;

document.getElementById("std").value = std;

document.getElementById("variance").value = variance;

}

function calcVariance(values){

mean=calcMean(values);

temp = 0;

for(i=0;i

temp += Math.pow(values[i]-mean,2);

}

return temp/values.length;

}

function calcStd(values){

variance = calcVariance(values);

return Math.pow(variance,1/2);

}

function calcMode(values){

var count=0;

maxCount = 0;

for(i=0;i

tempCount=0;

for(j=i+1;j

if(values[i]==values[j]){

tempCount++;

}

}

if(tempCount>maxCount){

maxCount=tempCount;

}

}

list="";

for(i=0;i

tempCount=0;

for(j=i+1;j

if(values[i]==values[j]){

tempCount++;

}

}

if(tempCount==maxCount){

list+=values[i]+" ";

}

}

return list;

}

function calcMedian(values){

for(i=0;i

for(j=i+1;j

if(values[i]>values[j]){

temp = values[i];

values[i] = values[j];

values[j] =temp;

}

}

}

numsLen = values.length;

var median=0;

if (

numsLen % 2 === 0 // is even

) {

// average of two middle numbers

median = (values[numsLen / 2 - 1] + values[numsLen / 2]) / 2;

} else { // is odd

// middle number only

median = values[(numsLen - 1) / 2];

}

return median;

}

function calcMean(values){

sum = calcSum(values);

return sum/values.length;

}

function calcSum(values){

var total = 0;

for(i=0;i

total+=values[i];

}

return total;

}

function calcMin(values){

var min = 999;

for(i=0;i

if(values[i]

min = values[i];

}

}

return min;

}

function calcMax(values){

var min = 0;

for(i=0;i

if(values[i]>min){

min = values[i];

}

}

return min;

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!