1
1 2 1
1 3 3 1
n行
我做的逻辑:
import java.io.*;
class pat {
public static void main(String[] args) throws IOException {
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
int n,p=0;
System.out.println("Enter value of n");
n=Integer .parseInt(in.readLine());
for(int i=0;i<n;i++)
{
for(int j=0;j<n-i;j++)
{
System.out.print(" ");
}
for(int k=0;k<=i;k++)
{
System.out.print((int)Math.pow(11,p));
}
System.out.println();
p++;
}
}
}
答案 0 :(得分:0)
我知道要求帕斯卡三角形系数。这是一个很好的练习题,我们可以通过递归使用它。
import java.util.Scanner;
public class BinomialPascalTriangle {
public static int pascal(int i, int j) {
if (j == 0) {
return 1;
} else if (j == i) {
return 1;
} else {
return pascal(i - 1, j - 1) + pascal(i - 1, j);
}
}
public static void print(int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
System.out.print(pascal(i, j) + " ");
}
System.out.println();
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("How many rows should the binomial pascal triangle have? ");
int row = scanner.nextInt();
print(row);
}
}
递归适用于此问题,因为二项式扩展使用两个先前计算的值。