-1
你好,我得到了與我在這裏的程序有點問題,是一個代碼空指針異常帕斯卡三角
public class zad1
{
static public class WTP
{
int[] wiersz;
int silnia(int a)
{
if (a < 1)
{
return 1;
}
else
{
return a * silnia(a - 1);
}
}
WTP(int n)
{
int wiersz[] = new int[n+1];
for(int i = 0; i<=n; i++)
{
wiersz[i] = silnia(n)/(silnia(n - i) * silnia(i));
}
}
}
public static void main(String args[])
{
int a1 = Integer.parseInt(args[0]);
WTP tablica = new WTP(a1);
for(int i = 1; i<=args.length; i++)
{
System.out.println(tablica.wiersz[i]);
}
}
}
而且我乳寧之後得到一個錯誤:在主線程java.lang中
異常.nullpointerexpception zad1.java:58。
的58行是:System.out.println(tablica.wiersz[i]);
方案的一點是要創建帕斯卡三角的線把一個值轉換成它。之後,當它在控制檯上運行,例如java zad1 4 0 1時,它應該計算4行三角形中的值並打印4後給出的位置值。
任何想法是什麼錯? :/ 感謝您幫助其運行,但有一個問題,其計數位置+ 1而不是位置,例如在4行中的值應爲0-1,1-4,2-6,3-4,但其顯示0-4,1-6,2-4我改變爲(int i = 1; i < = args.length; i ++)到i = 0但它並沒有幫助:/
我嘗試並得到4個錯誤:使用符號[,],; ,最後一句說這不是35行中的一句話:wiersz [] = new int [n + 1]; – user3438022
什麼是錯誤,你在哪裏得到它們? – anirudh
當我嘗試更改爲this.wiersz [] ...編譯時出現錯誤zad1.java:35表達式的非法開始及其對[]符號的指向 – user3438022