import java.util.*;
public class LotteryOdds {
public static void main (String[] args){
  Scanner in = new Scanner(System.in);
  System.out.print("How many numbers do you need to draw");
  int k = in.nextInt();
  System.out.print("Whit is the highest number you can draw");
  int n = in.nextInt();
  int lotteryOdds = 1;
  for (int i=1; i<=k ;i++)
   lotteryOdds=lotteryOdds*(n-i+1)/i;
  System.out.println("Your odds are 1 in"+lotteryOdds+"Good luck!");  
}
}
用来计算彩票中奖机率   可是编译后 不进行循环计算直接退出
How many numbers do you need to draw 5
Whit is the highest number you can draw 1
Your odds are 1 in 0 Good luck!
上面是返回的结果   难道是我人品差????????????????

解决方案 »

  1.   

    for (int i=1; i <=k ;i++) {
      lotteryOdds=lotteryOdds*(n-i+1)/i; 
      System.out.println("Your odds are 1 in"+lotteryOdds+"Good luck!");  
    }
    写代码的规范阿,为啥都不加大括号呢???这样只是循环了后面一行代码
      

  2.   

    How many numbers do you need to draw60
    Whit is the highest number you can draw7
    Your odds are 1 in7Good luck!
    Your odds are 1 in21Good luck!
    Your odds are 1 in35Good luck!
    Your odds are 1 in35Good luck!
    Your odds are 1 in21Good luck!
    Your odds are 1 in7Good luck!
    Your odds are 1 in1Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    Your odds are 1 in0Good luck!
    按照1楼给的方法  还是不对