3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Question { public $text; public $points = 5; public $answers; public $correctAnswer; public $hint; } function createQuestions() { $questions = []; $q = new Question; $q->text = "Какая планета располагается четвертой по счету от Солнца?"; $q->points = 10; // 10 баллов за ответ $q->answers = array('a' => 'Венера', 'b' => 'Марс', 'c' => 'Юпитер', 'd' => 'Меркурий'); // Варианты ответа $q->correctAnswer = 'b'; // Правильный ответ $q->hint = "Красная планета"; $questions[] = $q; $q = new Question; $q->text = 'Какой город является столицей Великобритании?'; $q->points = 5; $q->answers = array('a' => 'Париж', 'b' => 'Москва', 'c' => 'Нью-Йорк', 'd' => 'Лондон'); $q->correctAnswer = 'd'; $q->hint = "Биг Бен"; $questions[] = $q; $q = new Question; $q->text = 'Кто придумал теорию относительности?'; $q->points = 30; $q->answers = array('a' => 'Джон Леннон', 'b' => 'Джим Моррисон', 'c' => 'Альберт Эйнштейн', 'd' => 'Исаак Ньютон'); $q->correctAnswer = 'c'; $q->hint = "Высунул язык"; $questions[] = $q; return $questions; } function printQuestions($questions) { $number = 1; foreach ($questions as $question) { echo "{$number}. {$question->text}\n"; echo "Варианты ответов:\n"; foreach ($question->answers as $letter => $answer) { echo " {$letter}. {$answer}\n"; } echo "\n"; $number++; } } function checkAnswers($questions, $answers) { if (count($questions) != count($answers)) { die("Число ответов и вопросов не совпадает\n"); } $pointsTotal = 0; $pointsMax = 0; $correctAnswers = 0; $totalQuestions = count($questions); for ($i = 0; $i < count($questions); $i++) { $question = $questions[$i]; // Текущий вопрос $answer = $answers[$i]; // текущий ответ $pointsMax += $question->points; if ($answer == $question->correctAnswer) { $correctAnswers ++; $pointsTotal += $question->points; } else { $number = $i + 1; echo "Неправильный ответ на вопрос №{$number} ({$question->text} Подсказка: $question->hint) \n"; } } echo "Правильных ответов: {$correctAnswers} из {$totalQuestions}, баллов набрано: $pointsTotal из $pointsMax\n"; } $questions = createQuestions(); printQuestions($questions); $answers = array('b', 'd', 'a'); checkAnswers($questions, $answers);
Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
1. Какая планета располагается четвертой по счету от Солнца? Варианты ответов: a. Венера b. Марс c. Юпитер d. Меркурий 2. Какой город является столицей Великобритании? Варианты ответов: a. Париж b. Москва c. Нью-Йорк d. Лондон 3. Кто придумал теорию относительности? Варианты ответов: a. Джон Леннон b. Джим Моррисон c. Альберт Эйнштейн d. Исаак Ньютон Неправильный ответ на вопрос №3 (Кто придумал теорию относительности? Подсказка: Высунул язык) Правильных ответов: 2 из 3, баллов набрано: 15 из 45
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 1. Какая планета располагается четвертой по счету от Солнца? Варианты ответов: a. Венера b. Марс c. Юпитер d. Меркурий 2. Какой город является столицей Великобритании? Варианты ответов: a. Париж b. Москва c. Нью-Йорк d. Лондон 3. Кто придумал теорию относительности? Варианты ответов: a. Джон Леннон b. Джим Моррисон c. Альберт Эйнштейн d. Исаак Ньютон Неправильный ответ на вопрос №3 (Кто придумал теорию относительности? Подсказка: Высунул язык) Правильных ответов: 2 из 3, баллов набрано: 15 из 45

preferences:
205.62 ms | 403 KiB | 207 Q