2015-04-20 130 views
-4

好吧,我的朋友给了我这个输入10个等级,并在提示输出平均值。我对编码很陌生,不知道该怎么做。请帮忙!查找数字的平均值

var i, number, average=0; 
for (i = 1; i<=10; i++) { 
    grade = prompt("enter code hereEnter quiz grade: "); 
    grade = parseInt(grade); 
    average = average + grade; 
    document.write("number entered: " +grade+ "<br>"); 
} 
document.write("after loop sum is: " +average+ "<br>"); 
+2

http://www.mathsisfun.com/mean.html – vtortola

回答

0

您需要声明一个函数来照顾它,然后调用该函数以使其运行。

像这样:

var totGrade = 0, 
grade = 0, 
average = 0 

function gradeAvg(n) { 

    for (var i = 1; i<=n; i++) { 
     grade = parseInt(prompt("Enter quiz grade: ")) 
     totGrade = totGrade + grade 
     document.write("number entered: " + grade) 
     average = totGrade/i 
    } 
    alert(average) 
} 

gradeAvg(10) //the number of grades you wanna input, in your case 10 

编辑:增加了一些东西,适合您的情况更好。

+0

我会如何将平均本身放在提示框中? – jean

+0

@Robert不知道你为什么想这样做,但是你可以在'prompt'中放置'totGrade/i',但提示需要一个答案,我不知道你想要回答什么。顺便说一句,如果你将这些东西移出函数,你应该设置一个等于'totGrade/i'的变量'average'。 – Yeats

+0

@Robert如果你想要的东西弹出像提示,使用'alert()' – Yeats

1

首先考虑在写下任何代码之前如何实际取平均值。

(#1级+级别#2 + ... +级#10)/ 10

看起来像你缺少这些步骤之一。

0

你应该考虑成绩的数组

var grades = [] 

然后在你的提示,你可以通过多次循环,因为你需要和grades.length分的总和得到的平均值。

以下是您对我的建议所描述的工作版本。

var calculateAverage = function (classSize) { 

    var grades = []; 
    var sum = 0; 
    var range = classSize; 

    //prompt for grades 
    for (var i = classSize; i>0 ; i--){ 
     grades.push(prompt("Enter the next grade")); 
    } 

    // Calculate average 
    for (var i = grades.length - 1; i >= 0; i--) { 
     sum += parseInt(grades[i]); 
    }; 

    average = sum/range; 
    console.log(average); // You could also just return this value 
}; 

calculateAverage(3);