用for循环生成形式为2 ^ n - 1的整数

时间:2015-09-22 23:11:22

标签: java loops sequences

我有一个赋值,要求我在输出此序列的方法中编写for循环:

  

1 3 7 15 31 ... 255

我知道模式是将数字乘以2然后加一(或者只是为每个数字添加2的指数,所以1 + 2 = 3 + 4 = 7 + 8 = 15等)但我不知道#39;知道如何制作一个循环,将该序列一直输出到255.

我想要一个示例或解释来指导我一点,我不希望任何人真正给我我需要的确切代码。这是我到目前为止所做的:

public static void methodOne() {
    for (int j = 1; j <= 255; j *= 2) {

    }
}

我尝试在上面的for循环中使用另一个for循环,但它不能很好地工作,我不确定这是否正确。我基本上想要取j并将其乘以2,然后加1以得到序列中的下一个数字。

2 个答案:

答案 0 :(得分:4)

如您所述,序列是将前一个数字加倍并添加一个。只需让你的for循环进展,并在每次迭代中打印数字:

for (int j = 1; j <= 255; j = (j * 2) + 1) {
    System.out.println(j);
}

答案 1 :(得分:1)

如同工作一样,会给你一些思考:

for x in 2:8 range
result = 2^x -1