java - Math.pow(23,29)%91 的结果为什么是错误的?
怪我咯
怪我咯 2017-04-18 10:53:16
0
2
667

Math.pow(23,29)%91 的结果为什么是错误的?


public class T1 {

    public static void main(String[] args) {

        double c = Math.pow(23,29)%91.0;

        System.out.println(c);
    }

}

输出:28.0


        int c = (int)Math.pow(23,29)%91;

        System.out.println(c);

输出  36

然而这都不是正确答案

正确取余后的值是4才对

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(2)
伊谢尔伦

tidak cukup tepat, 23 ^ 29 ialah 40位 nombor perpuluhan,

  • doubleHanya 15 digit bererti, adalah mustahil untuk menyatakan nilai tepat pada penghujungnya

  • intNilai maksimum hanya 10 digit, jadi tugasan sudah melimpah

洪涛

Double ialah nombor titik terapung Sebaik-baiknya gunakan BigInteger untuk menyelesaikan masalah anda.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!