2016-09-24 3 views
-3

Entschuldigung mein tittle ist ein wenig breit. Aber ich nehme Computer in der 12. Klasse und meine Aufgabe besteht darin, ein kleines Programm zu erstellen, das Zahlen erzeugt, und wenn es einem anderen Satz von Zahlen gleichkommt, gewinnt man, wie eine Lotterie. Ich fand es schwierig, den Zufallszahlengenerator zweimal arbeiten zu lassen, also habe ich eine der Zahlenvariablen geladen. jetzt meine letzte Aufgabe ist es zu bekommen zu sagen, wenn eine der Zahlen übereinstimmen, und wenn nicht „Sie verlieren“ „Sie gewinnen“, im Grunde i kann nicht nur die Variablen entsprechen? `Ärger mit wenn sonst Aussage ... wichtig

Random rn = new Random(); 

String answer = " 3\n 12 \n 27"; 
for(int i =0; i < 3; i++) 
{ 
    int answer1 = rn.nextInt(30) + 1; 

    delay(2000); 
    System.out.println(answer1); 

} 
    System.out.println("And the winning numbers are..."); 

delay(2000); 
    System.out.println(answer); } 


    ` 

ive ein wenig bekommen weiter, aber mein ‚gewinnen‘ scheinen gewohnt zu einer variablen aufgelöst zu werden, hier ist meine neue code`

Random rn = new Random(); 

String answer = " 3\n 12 \n 27"; 
for(int i =0; i < 3; i++) 
{ 
    int answer1 = rn.nextInt(30) + 1; 


    System.out.println(answer1); 


    System.out.println("And the winning numbers are..."); 


    System.out.println(answer); 

    if (answer1 == 3) 
    if (answer1 == 12) 
    if (answer1 == 27) 
     win = true; 

if (win) { 
System.out.println("You win!"); 
} else 
System.out.println("You loose"); 
}` 
+0

Ich sehe keine if-Anweisung? – Li357

+0

Stackoverflow ist vielleicht nicht der beste Platz für Hausaufgaben. – Ming

+0

weil ich nicht weiß, wie man in dieser Situation einen macht, ist die int Antwort1 in einem Körper, also wird es mich nicht außerhalb des Körpers benutzen lassen? –

Antwort

0

Das Problem der Code ist, dass Sie erst nach langer Zeit eine erfolgreiche Lotterie gewinnen. Versuchen Sie, etwas Algo dafür zu machen, um die Wahrscheinlichkeit zu gewinnen, zu gewinnen.

import java.io.*; 
import java.util.Random; 

public class Lottery{ 
    public static void main(String args[]) throws Exception{ 
     BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
     Random rn = new Random(); 

     int ch = 1; 
     while(ch == 1){ 
      String str = ""; 
      String str1 = ""; 
      String str2 = ""; 

      for(int i = 0; i < 3; i++){ 
       int answer1 = rn.nextInt(9) + 1; 

       //delay(2000); 
       str = str + "-" + answer1; 
       str1=str1+answer1; 
      } 

      System.out.println(str); 
      str = ""; 

      for(int i =0; i < 3; i++){ 
       int answer1 = rn.nextInt(9) + 1; 

       //delay(2000); 
       str = str + "-" + answer1; 
       str2 = str2 + answer1; 
      } 
      System.out.println(str); 

      if(Integer.parseInt(str1) == Integer.parseInt(str2)){ 
       System.out.println("Crongrats !! You are the Lucky Winner !!!!"); 
      } 
      else 
       System.out.println("Better Luck Next Time"); 

      System.out.println("Wanna Try Again ? 1=YES, 0=NO"); 
      ch = Integer.parseInt(br.readLine()); 
     } 
     System.out.println("Thanks for Playing Lottery with us !! Come back soon"); 
    } 
} 
+1

Ich frage mich nur, könnten Sie mir helfen, es so zu machen, dass ich nur eine der Zahlen richtig bekommen könnte, würde ich "gewinnen"? –

0

jetzt meine letzte Aufgabe es „Sie gewinnen“, wenn eine der Zahlen Spiel zu sagen zu bekommen ist und wenn nicht "Sie verlieren"

Etwas wie folgt aus:

public static void main(String[] args) throws InterruptedException { 
     Random rn = new Random(); 
     int preloadedAnswer = 19; 
     boolean win = false; 
     for (int i = 0; i < 3; i++) { 
      int answer1 = rn.nextInt(30) + 1; 
      if (answer1 == preloadedAnswer) 
       win = true; 
     } 
     if (win) { 
      System.out.println("You win!"); 
     } else 
      System.out.println("You loose"); 
    }