')
scoreGrade.append(tr)
$(".CyTopN").after(scoreGrade)
$(".tablecon tbody").bind('DOMNodeInserted', function (e) {
let scores=[] //成绩数组
let scoreSum=0
let excellen=0
let good=0
let average=0
let pass=0
let fail=0
$(".borRightNone>span").each(function(){
if(!isNaN(parseFloat($(this).text()))){
let score=parseFloat($(this).text())
scores.push(score)
scoreSum+=score
if(score>=90){
$(this).parent().parent().css("background-color","#FFCCCC")
excellen++
}
else if(score>=80){
good++
}
else if(score>=70){
average++
}
else if(score>=60){
pass++
}
else{
$(this).parent().parent().css("background-color","#FFFFCC")
fail++
}
}
});
Excellent.text(excellen) //优
Good.text(good) //良
Average.text(average) //中
Pass.text(pass) //及
Fail.text(fail) //不及
let stuCounts=scores.length
StuCounts.text(stuCounts) //人数
let stuAverage=scoreSum/stuCounts
StuAverage.text(stuAverage.toFixed(2) ) //平均分
//就是用每个样本的分数减平均分,再求平方和,再除以样本容量,这个是方差。在开方就是标准差了
//定义两个简单的函数
var sum = function(x,y){ return x+y;}; //求和函数
var square = function(x){ return x*x;}; //数组中每个元素求它的平方
var data = [1,1,3,5,5]; //
var mean = data.reduce(sum)/data.length; //平均值
var deviations = data.map(function(x){return x-mean;});//偏差
var stddev = Math.sqrt(deviations.map(square).reduce(sum)/(data.length-1)); //标准差
StuVariance.text(stddev)
});
}
})();
function scoresum(){
let scoreBox=$('')
floatBox(100,80,'left',scoreBox)
var sumtimer=setInterval(function(){
let realWork= $("#realWork").val() // 作业
let active= $("#active").val() //课堂互动
let attend = $("#attend").val() //签到
let video= $("#video").val() //课程音视频
let work = $("#work").val() //章节测验
let pbl = $("#pbl").val() //PBL
let onlineTime = $("#onlineTime").val() //章节学习次数
let bbs= $("#bbs").val() //讨论
let readTime= $("#readTime").val() //阅读
let liveTime= $("#liveTime").val() //直播
let test = $("#test").val() //考试
let offline= $("#offline").val() //线下
let sum= Number(realWork)+Number(active) + Number(attend)+ Number(video)+ Number(work)+Number(pbl) + Number(onlineTime)+Number(bbs) +Number(readTime) + Number(liveTime)+Number(test)+Number(offline)
scoreBox.html('