// WuerfelFehler.java MM 2009 // Numerische Fehler // (Datenfehler, Rechenfehler, Verfahrensfehler) /** * Wuerfel 1..6, * experimentelle Ermittling der relativen Haeufigkeiten * der gewuerfelten Augenzahlen. */ public class WuerfelFehler { /** * Programm wuerfelt mehrmals mit dem Standardwuerfel, * erstellt eine Tabelle der absoluten Haeufigkeit * und berechnet die relativen Haeufigkeiten * der gewuerfelten Augenzahlen. */ public static void main( String[] args) { // Ueberschrift System.out.println( "Wuerfel 1..6"); // Wuerfel Wuerfel wuerfelBlau = new Wuerfel(); // Tabelle der absoluten Haeufigkeiten int[] tabelle = new int[ 6]; // Anzahl Runden int anzahlRunden = 1000000000; // 1 Mrd. // Wuerfeln System.out.println ( "ACHTUNG: Die Berechnung dauert einige Minuten!"); for( int runde = 0; runde < anzahlRunden; runde++) tabelle[ wuerfelBlau.wuerfeln() - 1]++; // Ausgabe der relativen Haeufigkeiten System.out.println ( "Tabelle der relative Haeufigkeiten"); System.out.println(); for( int i = 0; i < 6; i++) { System.out.print(( i + 1) + ": "); System.out.println ((double)tabelle[ i] / anzahlRunden); } // Fertig System.out.println(); System.out.println( "Programm beendet"); } } /* ------------------------------------------------- */ // Wahrscheinlichkeit ... beim idealen Wuerfel: // 1 / 6 = 0.166667 // Wuerfel 1..6 // Tabelle der relative Haeufigkeiten // 1: 0.166684948 // 2: 0.166656038 // 3: 0.1666613 // 4: 0.166657318 // 5: 0.166661714 // 6: 0.166678682 // Programm beendet // Fehlerabschaetzungen: // Berechnung absoluter, ralativer Fehler (S622), // mittlerer, wahrscheinlicher Fehler, Streuung (S630), // ... // Weitere Projekte aus der Wahrscheinlichkeitsrechnung: // z.B. Wuerfeln mit zwei Wuerfel, // Wuerfeln eines Zweierpaschs, ...