fork download
  1. <?php
  2.  
  3.  
  4. function createQuestions($text, $points, $answers, $correctAnswer) {
  5. $q = new Question;
  6. $questions[] = $q;
  7.  
  8.  
  9. $q->text = $text;
  10. $q->points = $points;
  11. $q->answers=$answers;
  12. $q->correctAnswer=$correctAnswer;
  13.  
  14. return $questions;
  15. }
  16.  
  17. function printQuestions($questions)
  18. {
  19. $i = 1; // номер вопроса
  20.  
  21. foreach ($questions as $question) {
  22. echo "<br>{$i}. {$question->text}<br>";
  23.  
  24. echo "Variants of answer:<br>";
  25.  
  26. foreach ($question->answers as $letter => $answer) {
  27. echo " {$letter}. {$answer}<br>";
  28. }
  29.  
  30. $i++;
  31. }
  32. }
  33.  
  34. function checkAnswers($questions, $answers){
  35.  
  36. if (count($questions) != count($answers)) {
  37. die("The amount of questions and answers doesn't fit");
  38. }
  39.  
  40. $pointsTotal = 0; // сколько набрано баллов
  41. $pointsMax = 0; // сколько можно набрать баллов при всех правильных ответах
  42. $correctAnswers = 0; // сколько отвечено верно
  43. $totalQuestions = count($questions); // Сколько всего вопросов
  44.  
  45. // Цикл для обхода вопросов и ответов
  46. for ($i = 0; $i < count($questions); $i++) {
  47. $question = $questions[$i]; // Текущий вопрос
  48. $answer = $answers[$i]; // текущий ответ
  49.  
  50. // Считаем максимальную сумму баллов
  51. $pointsMax += $question->points;
  52.  
  53. // Проверяем ответ
  54. if ($answer == $question->correctAnswer) {
  55. // Добавляем баллы
  56. $correctAnswers ++;
  57. $pointsTotal += $question->points;
  58. } else {
  59. // Неправильный ответ
  60. $number = $i + 1;
  61. echo "Wrong answer on question №{$number} ({$question->text})<br>";
  62. }
  63. }
  64.  
  65. // Выведем итог
  66. echo "Right answers: {$correctAnswers} from {$totalQuestions}, Points: {$pointsTotal} from {$pointsMax} <br>";
  67.  
  68.  
  69. }
  70.  
  71.  
  72. $questions = CreateQuestions('Name a town', 5, ['a'=>'Paris', 'b'=>'Moscow', 'c'=>'London'], 'c');
  73.  
  74. printQuestions($questions);
  75.  
  76. $questions2 = CreateQuestions('Name an artist', 7, ['a'=>'Sergei', 'b'=>'Danila', 'c'=>'Tolyan'], 'b');
  77.  
  78. printQuestions($questions2);
  79.  
  80. checkAnswers($questions, 'c');
  81. checkAnswers($questions2, 'b');
Runtime error #stdin #stdout #stderr 0.02s 52432KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
PHP Fatal error:  Class 'Question' not found in /home/qQ5R28/prog.php on line 5