Advertisement
Guest User

kenny

a guest
May 4th, 2008
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.72 KB | None | 0 0
  1.  
  2. public class Ziegenproblem {
  3.    
  4.     static boolean wechsel = false;
  5.    
  6.     public static int zufall() {
  7.         // Die Zufallsfunktion soll die Zahlen von 0 bis 2 gleichverteilt zurckgegeben
  8.         int z = (int) (Math.random() * 3000);
  9.         if (z <= 1000) return 0;
  10.         if (z <= 2000) return 1;
  11.         if (z <= 3000) return 2;
  12.         return 0;
  13.     }
  14.    
  15.     public static long runTest(long intHaufigkeit) {
  16.         int richtigesTor    = 0;
  17.         int ersteWahl       = 0;
  18.         int offenesTor      = 0;
  19.         int zweiteWahl      = 0;
  20.         int anzAutos        = 0;
  21.         for (int i=0; i <= intHaufigkeit; i++) {
  22.             // Der Spielleiter stellt hinter eines der Tore ein Auto
  23.             richtigesTor    = zufall();
  24.            
  25.             // Der Spieler whlt eines der Tore aus
  26.             ersteWahl       = zufall();
  27.            
  28.             // Der Spielleiter ffnet ein Tor mit einer Ziege, nicht aber das was der Spieler gewhlt hat
  29.             offenesTor      = ersteWahl;
  30.             for (int j=0; j < 3;j++) {
  31.                 if ((j!=ersteWahl) && (j!=richtigesTor)) offenesTor = j;
  32.             }
  33.            
  34.             // Der Spielleiter bietet dem Spieler an nun noch einmal das Tor zu wechseln
  35.             if (wechsel) {
  36.                 // Der Spieler entscheidet sich dafr
  37.                 zweiteWahl = ersteWahl;
  38.                 for (int j=0; j < 3;j++) {
  39.                     if ((j!=ersteWahl) && (j!=offenesTor)) zweiteWahl = j;
  40.                 }
  41.             }
  42.             else {
  43.                 // Der Spieler bleibt bei seiner Entscheidung
  44.                 zweiteWahl = ersteWahl;
  45.             }
  46.            
  47.             // Auswertung
  48.             if (zweiteWahl==richtigesTor) anzAutos++;
  49.         }
  50.        
  51.         return anzAutos;
  52.     }
  53.    
  54.     public static void main(String[] args) {       
  55.        
  56.         wechsel             = false;
  57.         long ohneWechsel        = runTest(100000);
  58.        
  59.         wechsel             = true;
  60.         long mitWechsel         = runTest(100000);     
  61.        
  62.         System.out.println("Hufigkeit ohne Wechsel:\t" +  ohneWechsel);
  63.         System.out.println("Hufigkeit  mit Wechsel:\t" +  mitWechsel);
  64.        
  65.     }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement