用PHP计算平均值

用PHP计算平均值,php,average,Php,Average,我有个小问题 我有一个虚拟实验室,一个学生将完成一个调查,有5个问题,每个成本2分。错误选择-2分,正确选择+2分 所以,在最后,当学生按“显示结果”时,我希望脚本从表“用户”更新“媒体”字段,从表“实验室”更新“nota”字段。 该学生将获得更多的成绩,但如果他有成绩4,则平均成绩必须为4,而不考虑其他成绩。 我附加了一个PHP脚本,它不工作,它没有计算出我想要的平均值 PS:媒体表示平均值,nota表示结果或注释,suma表示总和,NRU表示注释数 或者举个例子: 我有: 6 5 6 如果

我有个小问题

我有一个虚拟实验室,一个学生将完成一个调查,有5个问题,每个成本2分。错误选择-2分,正确选择+2分

所以,在最后,当学生按“显示结果”时,我希望脚本从表“用户”更新“媒体”字段,从表“实验室”更新“nota”字段。 该学生将获得更多的成绩,但如果他有成绩4,则平均成绩必须为4,而不考虑其他成绩。
我附加了一个PHP脚本,它不工作,它没有计算出我想要的平均值

PS:媒体表示平均值,nota表示结果或注释,suma表示总和,NRU表示注释数

或者举个例子:

我有:
6
5
6

如果我执行
选择if('nota'似乎您在获取正确的平均值时遇到问题,因为所有测试的所有结果都集中在一起(每个用户)?换句话说,如果学生多次参加测试,该表不会单独存储每个测试,它只会将结果添加到相同用户的总分数中


因此,解决方案可能是向表中添加另一个字段,该字段具有特定考试的唯一编号,然后每次学生开始考试时,您都必须在考试开始时生成该编号。如果您的考试在多个页面上,您需要将变量逐页传递或设置cookie。

您可以使用fol低通逻辑

$sum = 0; 
$size = 0;

 if (answer == 1) // answer is correct
  {
   $sum += 2; 
   $size ++;
  }
 else 
  {
   $sum -= 2; 
   $size ++;
  }

$average = $sum / $size; // be sure to check size is not equal to 0

“它不起作用,它没有计算出我想要的平均值。”然后它计算出什么?结果是什么?有错误吗?这听起来很像家庭作业。@Orbling:不,这不是家庭作业@KEoki:我想计算平均值并从“用户”表中更新“媒体”字段…但是我的脚本计算出了错误的平均值,但我不知道为什么我不想直接从答案中计算平均值,我想从笔记中计算平均值,如果1笔记如果字段数不固定,你可以将foreach添加到答案中。如果平均值不等于或小于4,则将其设置为4。并更新表。如果你可以上载脚本,我可以帮助你更好地修改了主文本。下面是SQL查询中的IF子句示例…它不起作用。。。