各位帅哥,美女我这里有一道题要大家帮忙了!
将杨辉三角变变形,变成菱形!如下图:
1
1 1
1 2 1
1 3 3 1
…………
1 2 1
1 1
1
具体几行再黑屏下输入一个数!
你们可要救我一命呀!
还是要这个吧,这个键盘输入的代码少一些,今天老师刚讲的
import java.io.*;
public class Yanghuisanjiao {
public static void main(String[] args) throws IOException {
String str;
int n;
System.out.print("请输入杨辉三角的边长");
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in));
str=buf.readLine();
n=Integer.parseInt(str);
int a[][]=new int [n][2*n-1];
a[0][n-1]=1;
for(int i=1;i<=n-1;i++){
for(int j=n-1-i;j<=n-1+i;j++){
if(j-1>=0&&j+1<2*n-1){
a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
else{
if(j-1<0) a[i][j]=a[i-1][j+1];
else a[i][j]=a[i-1][j-1];
}
}
}
int b[][]=new int [n-1][2*n-1];
for(int i=0;i<=n-2;i++){
for(int j=0;j<=2*n-2;j++){
b[i][j]=a[n-i-2][j];
}
}
for(int i=0;i<=n-1;i++){
for(int j=0;j<=2*n-2;j++){
if(a[i][j]==0)
System.out.print(" ");
else
System.out.print(a[i][j]);
}
System.out.println();
}
for(int i=0;i<=n-2;i++){
for(int j=0;j<=2*n-2;j++){
if(b[i][j]==0)
System.out.print(" ");
else
System.out.print(b[i][j]);
}
System.out.println();
}
}
}