2016-09-24 2 views
-3

извините, мой титл немного широк. но я принимаю компьютеры в 12 классе, и мое задание состоит в том, чтобы создать небольшую программу, которая генерирует числа, и если она равна другому набору чисел, вы выигрываете, как лотерея. мне было сложно сделать работу генератора случайных чисел дважды, поэтому я предварительно загрузил одну из числовых переменных. Теперь моя последняя задача состоит в том, чтобы сказать «вы выиграли», если один из матча чисел, и если не «вы теряете», в основном я просто не могу соответствовать переменные? `проблема с if else заявление ... важное

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); } 


    ` 

ив получил немного и дальше, но мой «выиграть» привычка, кажется, решен переменной, вот мой новый 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

Я не вижу никаких утверждений? – Li357

+0

Stackoverflow может быть не лучшим местом для запроса домашней работы. – Ming

+0

, потому что я не знаю, как сделать это в этой ситуации, int answer1 находится в теле, поэтому он не позволит мне использовать его за пределами тела? –

ответ

0

проблема Кодекса является то, что вы выиграете успешную лотерею только после того, как долгое время. Попытайтесь сделать для него некоторый алгоритм, чтобы увеличить вероятность выигрыша.

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

Я просто задавался вопросом, не могли бы вы помочь мне сделать это, чтобы я мог просто получить один из чисел правильно, я бы «выиграл»? –

0

теперь моя последняя задача состоит в том, чтобы сказать «вы выиграли», если один из номеров матча , а если нет "вы теряете"

Что-то вроде этого:

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"); 
    } 
Смежные вопросы