2016-11-14 68 views
-3

遇到我的代码问题。它必须要求用户输入第n行,并打印该行。错误在第62行,当我删除箭头时,它没有给出建议。Pascal's Triangle - 查找第n行

使用此: enter image description here

import java.util.Scanner; 

public class PascalsTriangle { 
    private int lineNumber, count; 
    private int[] num; 

    public PascalsTriangle() { 
    lineNumber = 1; 
    } 

    public PascalsTriangle(int n) { 
    set(n); 
    } 

    public void set(int n) { 
    if (n < 1) 
     lineNumber = n; 
    } 

    public int get() { 
    return lineNumber; 
    } 

    private void pascal(int[] row) { 
    if (count >= lineNumber) 
     return; 
    num = new int [row.length+1]; 
    num[0] = 1; 

    for (int i = 1; i < row.length; i++) 
     num[i] = row[i-1] + row[i]; 
    num[row.length] = 1; 
    count++; 
    pascal(num); 
    return; 
    } 

    public int[] output() { 
    count = 1; 
    num = new int[count]; 
    return num; 
    } 

    public static void main(String[] args) { 
    int i, num; 

    Scanner scan = new Scanner (System.in); 
    System.out.println("Enter the Nth number: "); 

    num = scan.nextInt(); 
    PascalsTriangle t = new PascalsTriangle(num); 
    int[] result = t.output(); 
    System.out.println("Line" + t.get()); 
    for (i = 0; < result.length; i++) 
     System.out.println(result[i] + " "); 
    } 
} 
+5

你能否指出失败的确切路线?你说它在第62行,但行号不会出现在SO上。 –

回答

1

for循环线62应该是:

for(i=0; i < result.length ; i++){ 

逻辑生病离开了你,因为这似乎是一个家庭作业。