无法在阵列中打印出模式

时间:2016-08-11 18:27:17

标签: java numbers

我正在尝试从阵列中获取打印输出的模式数量,但在我的模式数量下没有打印出对,这是我想要获得的一个示例

(Array: 2 7 2 3 1 5 7 4 3 6 
Number of patterns: 3)  

但我不知道从多种模式中写出什么

代码:

public class FindIt {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int Sum = 0;
        int[] InsertNumbers = new int[10];
        System.out.println("Sample output #1:");
        System.out.print("Array: ");
        for(int i = 0; i < 10; i++)
        {
            InsertNumbers[i]=(int)(Math.random()*10)+1;
            System.out.print(InsertNumbers[i] + " ");
        }
        System.out.println("");
        System.out.print("Array: ");
        for(int i = 0; i < 5; i++)
        {
            ComputePattern(InsertNumbers, Sum);
            System.out.print(InsertNumbers[i] + " ");
        }
        System.out.println("");
        System.out.print("Number of patterns: ");

    }
    public static void ComputePattern(int[] InsertNumbers, int Sum)
    {
        for(int i = 0; i < 2; i++)
        {
            InsertNumbers[i] = Sum;
            Sum = Sum + Sum;
        }
    }
}

2 个答案:

答案 0 :(得分:0)

很难理解你的代码,但我可以告诉你。 您已设法询问用户输入,但我觉得以下情况会更好。

相反,尝试使用两个数组,一个用户可以输入10个整数,另一个数组用于总和,因此数组包含5个整数。

借助For循环和公式,您可以使用它来获取2个连续值。第一个公式是x * 2,第二个公式是(x * 2)+1。 在for循环中x为0,并循环5次。

然后,你得到数组中x * 2和(x * 2)+1的值,并将它们加在一起。

然后使用总和,您可以使用它来计算模式的数量。

建议:尽量与您的println和print打印一致。这是非常令人困惑的,我不太清楚为什么你为某些文本设置println并为其余文本打印。

答案 1 :(得分:-1)

由于打印Number of patterns后没有打印声明,因此未打印任何图案。