You are not logged in.

  • Login

1

Monday, December 27th 2010, 11:03pm

Java Zahlenraten Problem

Hallo!
Ich Lerne Momentan Aus dem Buch "Java von Kopf bis Fuß" ein Zahlenraten Speil zu Programmieren. Dies habe ich auch getan aber leider hab ich einen kleinen Fehler und habe Keine Ahnung Was Los ist
Hilfe!

Java Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package zahlenraten;
 
 
public class Zahlenraten {
 
    Spieler s1;
    Spieler s2;
    Spieler s3;
 
    public void starteSpiel() {
      s1 = new Spieler();
      s2 = new Spieler();
      s3 = new Spieler();
 
      int tipp1 = 0;
      int tipp2 = 0;
      int tipp3 = 0;
 
      boolean s1hatrecht = false;
      boolean s2hatrecht = false;
      boolean s3hatrecht = false;
 
      int zielzahl = (int) (Math.random() * 10);
      System.out.println("Ich Denke mir eine Zahl zwischen 1 und 10 aus welcher Spieler Würd sie als erstes erraten? ");
      System.out.println("Die Chancen sind gleich");
      while(true) { System.out.println("Die Zu Ratende Zahl ist " + zielzahl ); }
 
     s1.raten();
     s2.raten();              // Das Hier Erkennt Er nicht!  Die Raten Funktion
     s3.raten();
 
     tipp1 = s1.zahl;
     System.out.println("Spieler Eins Tippte  " + tipp1);
 
 
     tipp2 = s2.zahl;
     System.out.println("Spieler Zwei Tippte " + tipp2);
 
     tipp3 = s3.zahl;
     System.out.println("Spieler Drei Tippte " + tipp3);
 
     if (tipp1 ==  zielzahl) {
       s1hatrecht = true; }
 
     if (tipp2 ==  zielzahl) {
       s2hatrecht = true; }
 
     if (tipp3 ==  zielzahl) {
       s3hatrecht = true; }
 
     if (s1hatrecht || s3hatrecht|| s2hatrecht)  {
         System.out.println("Wir haben einen Gewinner!");
         System.out.println("Hat Spieler 1 recht?" + s1hatrecht );
         System.out.println("Hat Spieler 2 recht?" + s2hatrecht );
         System.out.println("Hat Spieler 3 recht?" + s3hatrecht );
         System.out.println("Das Spiel ist zu ende");
 
        }
 
 else {System.out.println("Die Pcs Müssen nochmal ran"); }
 
    }
}
 
 
 
 
package zahlenraten;
 
 
public class SpielStarter {
public static void main (String[]args) 
{
    Zahlenraten spiel  = new Zahlenraten();           
    spiel.starteSpiel();
 
}
}
 
 
 
package zahlenraten;
 
 
public class Spieler {
int zahl = 0;
 
public void raten() {                 // Hier habe ich Raten doch Deklariert Oo
    zahl = (int) (Math.random() * 10);
    System.out.println("Ich tippe auf die Zahl: " + zahl);
}
}


MFG
Philip

This post has been edited 1 times, last edit by "philip2007" (Dec 28th 2010, 11:07am)


2

Tuesday, December 28th 2010, 10:40am

Es wäre toll wenn du uns den Fehler auch sagen würdest! :)

3

Tuesday, December 28th 2010, 11:04am

steht im quelltext bei kommentaren ;)

4

Tuesday, December 28th 2010, 11:36am

Hab ihn selbst gefunden bei Der While Schleife Hab ich die beendete geschweifte klammer zu früh gesetzt :D Ich hab die Klammer gleich nach der Texteingabe gesetzt musste sie aber erst ganz am ende setzen



while(true) { System.out.println("Die Zu Ratende Zahl ist " + zielzahl ); }

s1.raten();
s2.raten(); // Das Hier Erkennt Er nicht! Die Raten Funktion
s3.raten();

5

Tuesday, December 28th 2010, 11:39am

Jetzt habe ich das nächste Problem Mein IDE (Netbeans) Erkennt die Main Klasse nicht wie kann ich das Konfigurieren ? Jetzt lässt es sich nicht ausführen

6

Thursday, December 30th 2010, 5:38pm

Hallo Philip,

denke das du etwas im Code noch nicht richtig hast.

Siehst Du ein grünes Dreieck an der "SpielStarter" Class im Projektfenster?

Hier einmal das fertige "Spiel" als Projekt aus Netbeans ...

Gruß,

Raphael

Similar threads

Social bookmarks