import javax.swing.JOptionPane;public class San { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String bb;
int aa;
bb = JOptionPane.showInputDialog("lines:");
aa = Integer.parseInt(bb);
int cc[][]=new int[aa][aa * 2 - 1];
for(int i = 0;i < aa;i++){
for(int j = 0;j < aa * 2 -1;j++){
cc[i][j] = -1;
}
}
for(int i = 0;i < aa;i++){
cc[(aa * 2 - 1) / 2 - i][i] = 1;
cc[(aa * 2 - 1) / 2 - i][aa * 2 - 1 - i - 1] = 1;
}
for(int i = 2;i < aa;i++){
for(int j = 0;j < aa * 2 -1;j++){
if(j > aa - i - 1 && j < aa * 2 - 1 - 1
&& cc[i - 1][j -1] != -1 && cc[i -1][j + 1] != -1)
cc[i][j] = cc[i - 1][j -1] + cc[i -1][j + 1];
}
}
for(int i = 0;i < aa;i++){
for(int j = 0;j < aa * 2 - 1;j++){
if(cc[i][j] == -1){
System.out.printf("%3s"," ");
}
else{
System.out.printf("%3d",cc[i][j]); }
}
System.out.println();
}
}}
-------------------------------------------------------------------
上边程序是用Java编写的杨辉三角,我不是很明白,请高手为我在每句程序后边写上注释!便于我理解!!谢谢了!!!在线等....
bb = JOptionPane.showInputDialog("lines:");
aa = Integer.parseInt(bb);尤其是这两句话....
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String bb;
int aa;
bb = JOptionPane.showInputDialog("lines:");
aa = Integer.parseInt(bb);
int cc[][]=new int[aa][aa * 2 - 1];
for(int i = 0;i < aa;i++){
for(int j = 0;j < aa * 2 -1;j++){
cc[i][j] = -1;
}
}
for(int i = 0;i < aa;i++){
cc[(aa * 2 - 1) / 2 - i][i] = 1;
cc[(aa * 2 - 1) / 2 - i][aa * 2 - 1 - i - 1] = 1;
}
for(int i = 2;i < aa;i++){
for(int j = 0;j < aa * 2 -1;j++){
if(j > aa - i - 1 && j < aa * 2 - 1 - 1
&& cc[i - 1][j -1] != -1 && cc[i -1][j + 1] != -1)
cc[i][j] = cc[i - 1][j -1] + cc[i -1][j + 1];
}
}
for(int i = 0;i < aa;i++){
for(int j = 0;j < aa * 2 - 1;j++){
if(cc[i][j] == -1){
System.out.printf("%3s"," ");
}
else{
System.out.printf("%3d",cc[i][j]); }
}
System.out.println();
}
}}
-------------------------------------------------------------------
上边程序是用Java编写的杨辉三角,我不是很明白,请高手为我在每句程序后边写上注释!便于我理解!!谢谢了!!!在线等....
bb = JOptionPane.showInputDialog("lines:");
aa = Integer.parseInt(bb);尤其是这两句话....
aa = Integer.parseInt(bb);
这个是让你输入需要打印几行的杨辉三角
import javax.swing.JOptionPane;public class San { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String bb;
int aa; bb = JOptionPane.showInputDialog("lines:");
aa = Integer.parseInt(bb); int cc[][] = new int[aa][aa * 2 - 1]; //创建一个2维数组保存杨辉三角的值 for (int i = 0; i < aa; i++) { //初始化
for (int j = 0; j < aa * 2 - 1; j++) {
cc[i][j] = -1;
}
} for (int i = 0; i < aa; i++) { //将三角外围全赋值为 1
cc[(aa * 2 - 1) / 2 - i][i] = 1;
cc[(aa * 2 - 1) / 2 - i][aa * 2 - 1 - i - 1] = 1;
} for (int i = 2; i < aa; i++) { //将三角中相应的位置填充
for (int j = 0; j < aa * 2 - 1; j++) {
if (j > aa - i - 1 && j < aa * 2 - 1 - 1
&& cc[i - 1][j - 1] != -1 && cc[i - 1][j + 1] != -1)
cc[i][j] = cc[i - 1][j - 1] + cc[i - 1][j + 1];
}
} for (int i = 0; i < aa; i++) { //打印
for (int j = 0; j < aa * 2 - 1; j++) {
if (cc[i][j] == -1) {
System.out.printf("%3s", " ");
} else {
System.out.printf("%3d", cc[i][j]); }
}
System.out.println();
} }}这个代码有点冗余
不过分工倒是蛮明确的
aa = Integer.parseInt(bb); //把输入的数值转换为数值类型