Hallo,
In meiner Studie müssen die Teilnehmenden verschiedene Matheaufgaben bearbeiten. Am Ende des Fragebogens sollen sie eine Rückmeldung bekommen, wie viele der Aufgaben sie korrekt beantwortet haben. Prinzipiell funktioniert der PHP-Code auch (siehe unten), allerdings werden auch bei der korrekten Beantworten aller Aufgaben nur 3 Punkte erreicht. Das Problem liegt bei Aufgabe G002_01, bei der das Ergebnis eine Dezimalzahl darstellt. Am Dezimaltrennzeichen "Punkt" scheint es nicht zu liegen, da ein Komme auch nicht hilft. Woran könnte es liegen? Vielen Dank schon einmal!
// Definition der Fragen und der korrekten Antworten
$fragenb1 = [
'G001_01' => [2 => 0.5], // In Aufgabe G001_01 ist die richtige Antwort die 2, für die korrekte Antwort werden 0.5 Punkte vergeben
'G001_02' => [2 => 0.5], // In Aufgabe G001_02 ist die richtige Antwort die 2, für die korrekte Antwort werden 0.5 Punkte vergeben
'G002_01' => [1.7 => 1], // In G002_01 ist das richtige Ergebnis 1.7
'G003_01' => [-8 => 1], // In Aufgabe G003_01 ist das richtige Ergebnis -8
'G004_01' => [2 => 1], // In Aufgabe G004_01 ist das richtige Ergebnis 1
];
// Zähler-Variable
$pointsb1 = 0;
foreach ($fragenb1 as $variable => $values) {
// Antwort des Teilnehmers abrufen
$answer = value($variable);
// Prüfen, ob für diese Antwort ein Wert vorliegt (sonst keinen Punkt vergeben)
if (isset($values[$answer])) {
// Zählen des Wertes
$pointsb1 += $values[$answer];
}
}
// Ergebnisanzeige
html('<p>Sie haben '.$pointsb1.' von 4 Punkten erzielt.</p>');