java基础

/*
* java里不能使用人们熟悉的算术运算符处理大数值 而需要使用大数值类中的add和multiply方法
* BigInteger c = a.add(b)// c = a+b;
* BigInteger d = c.multiply(b.add(BigInteger.valueOf(2)))// d = c *(b+2)
* */

如计算n*(n-1)*...*(n-k+1) / (1*2*...k);

package welcome;

import java.math.BigInteger;
import java.util.Scanner;


public class welcome {
    public static void main(String[] args)
    {
        
        Scanner in = new Scanner(System.in);
        int k = in.nextInt();
        int n = in.nextInt();
        BigInteger lotteryOdds = BigInteger.valueOf(1);
        for(int i=1;i<=k;i++)
        {
            lotteryOdds = lotteryOdds.multiply(BigInteger.valueOf(n-1-i)).divide(BigInteger.valueOf(i));
        }
        
        System.out.println("Your odds are 1 in "+ lotteryOdds +".Good luck");
    }

}

java基础,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。