Java返回机动车的功率_Java指数错误,功率为2 ^ 31

我正在编写一个Java程序来输出2的指数幂(顺便说一句,我不能使用Math.pow()),但是在2 ^ 31和2 ^

32处我得到了其他东西。另外,我不打算接受负整数。

我的代码:

class PrintPowersOf2 {

public static void main (String[] args) {

printPowersOf2(10);

printPowersOf2(5);

printPowersOf2(2);

printPowersOf2(-5);

printPowersOf2(30);

printPowersOf2(32);

}

public static void printPowersOf2 (int x) {

for(int i=0;i

int y = exponent (i);

System.out.print(y);

if(!(i == x)) {

System.out.print(" ");

}

}

System.out.println();

}

static int exponent(int power) {

int output = 1;

for (int z=0; z

output *= 2;

return output;

}

}

我得到的输出是:

1 2 4 8 16 32 64 128 256 512 1024

1 2 4 8 16 32

1 2 4

1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824

1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 -2147483648 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值