🪜 Schritt-für-Schritt-Anleitung – Durchschnitt berechnen (AA3)


🔧 1. Neuen State für den Durchschnittswert einführen

👉 Oben in Ihrer App.js (bei den anderen useState-Hooks):

const [durchschnitt, setDurchschnitt] = useState(0);

🧮 2. Durchschnitt berechnen, wenn Messung beendet ist

👉 In Ihrem bestehenden useEffect, der auf status === 'result' reagiert:

useEffect(() => {
  if (status === 'result' && bewegungen.length > 0) {
    const max = Math.max(...bewegungen);
    setMaxWert(max);

    // Durchschnitt berechnen mit Schleife
    let summe = 0;
    for (let i = 0; i < bewegungen.length; i++) {
      summe += bewegungen[i];
    }
    const durchschnittswert = summe / bewegungen.length;
    setDurchschnitt(durchschnittswert);
  }
}, [status, bewegungen]);

🧾 Erklärung zur Schleife

let summe = 0;
for (let i = 0; i < bewegungen.length; i++) {
  summe += bewegungen[i];
}

✅ Das ist die klassische Vorgehensweise aus dem Informatikunterricht:

  • Initialisierung (summe = 0)
  • Schleife über das Array
  • Schrittweise Addition
  • Division am Ende für den Durchschnitt

🖥️ 3. Wert im UI anzeigen

👉 In Ihrer ErgebnisScreen.js müssen Sie nun den Durchschnitt übergeben und anzeigen:

🧩 a) Props erweitern:
export default function ErgebnisScreen({ maxWert, durchschnitt, onRestart, bewegungen }) {
🧩 b) App.js: ErgebnisScreen aufrufen mit neuem Prop
<ErgebnisScreen
  maxWert={maxWert}
  durchschnitt={durchschnitt}
  onRestart={startChallenge}
  bewegungen={bewegungen}
/>
🧩 c) Anzeige ergänzen:
<Text style={styles.resultText}>
  Durchschnitt: {durchschnitt.toFixed(2)} g
</Text>

📌 Sie können das direkt unterhalb des Maximalwerts platzieren:

<View style={{ marginTop: 10 }}>
  <Text style={styles.resultText}>Dein Wert: {maxWert.toFixed(2)} g</Text>
  <Text style={styles.resultText}>Durchschnitt: {durchschnitt.toFixed(2)} g</Text>
</View>
Zuletzt geändert: Mittwoch, 11. Juni 2025, 14:28
Herausgeber: Land Baden-Württemberg, vertreten durch das Zentrum für Schulqualität und Lehrerbildung (ZSL), Heilbronner Straße 314, 70469 Stuttgart, Telefon 0711/21859-0, poststelle@zsl.kv.bwl.de
Verantwortlich im Sinne des Presserechts: ZSL, Irmgard Mühlhuber, Ref. 24 "Digitalisierung, Medienbildung", Heilbronner Straße 314, 70469 Stuttgart, Telefon 0711/21859-240, digitalebildung@zsl.kv.bwl.de
Kontakt zum/r behördlichen Datenschutzbeauftragte/n: datenschutz@zsl.kv.bwl.de