Расчет среднего балла в Stack Overflow

Я пытаюсь найти средние оценки студентов в php. Я использую формы, чтобы спросить пользователя, сколько учеников, а затем заставить их ввести оценку для каждого ученика. затем отображается среднее значение. мой код ниже, и я могу заставить его работать. Ниже приведено описание того, как это должно выглядеть (чтобы дать вам представление о том, что я пытаюсь сделать). Я думаю, что я использую формы неправильно, но я не могу понять, почему?

Enter the number of students: 3
Enter grade 1: 55
Enter grade 2: 108
Invalid grade, try again
Enter grade 2: 56
Enter grade 3: 57
the average is 56.0<?php
//GRADES AVERAGE

$sum = 0;
$average = 0;
$students = $_POST['numStudents'];
$grade = $_POST['grade'];

for($i=1; $i>$students; $i++){
if($grade <0 || $grade > 0){
echo "invalid grade, try again";
}

$sum = $sum + $grade;
$average = $sum/$i;
}
echo "the average is = $average";
?>

<form action="task19.php" method="POST">
Enter the number of students<input type="number" name="numStudents" />
<input type="submit" value="Enter" />
</form>

<form action="task19.php" method="POST">
Enter the grade for student <?php $i ?> <input type="number" name="grade" />
<input type="submit" value="Enter grade" />
</form>

0

Решение

Во-первых, используйте 1 форму, объединяющую два входа: если вы отправите одну форму, другая не будет отправлена. Во-вторых, взгляните на следующий код:

if($grade <0 || $grade > 0){
echo "invalid grade, try again";
}

Это немного странно 🙂 Я думаю, вы должны удалить его или сделать более точное выражение. Его оценка всегда будет меньше 0 ИЛИ больше 0.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector