我刚学循环的时候,老师,让我们打印杨辉三角形,
那时还没写数组和递归,让我们用循环打印杨辉三角形,我想了很久,找到了打印杨辉三角形的规律。
package com.bdqn.dreaming.Test;
import java.util.Scanner;
public class TriangleTest {
public static void main(String[] args) {
/*
* 我刚学循环的时候,老师,让我们打印杨辉三角形,
那时还没写数组和递归,让我们用循环打印杨辉三角形,我想了很久,找到了打印杨辉三角形的规律。 */
//输入打印杨辉三角形的行数
Scanner input =new Scanner(System.in);
System.out.print("输入打印的行数:");
int rows=input.nextInt();
long temp=0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < i+1; j++) {
if(i==0||j==0||i==1) {
temp=1;
System.out.print(temp);
}else {
/*
* 其中的规律,在于每行的第一个数都为1,而在同一行的数有这么一个规律,它的下一个数等于那
* 个数所在行数i+1减去那个数所在的列数除于那个数所在的列数再乘前一个数
* 其实,你们可以去找一下规律,你从每行的第一个开始找下一个数,你看1乘什么分数得到下一个数,然后这个数再乘什么分数得到下一个数。
* 你会发现,他们乘的分数的分子分母都是递增或递减的。
*/
temp=temp*(i+1-j)/j;
System.out.print(temp);
}
}
System.out.println();
}
}
}