这篇文章给大家介绍怎么用JAVA实现杨辉三角实例,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
题目是:
杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。
输入包含一个数n。(1 <= n <= 34)
输出格式:n=5:数和数之间有空格
首先我们应该想着如何打印一个边长=n等边直角三角形,这里我们可以运用 嵌套循环 就可以轻松做到:
import java.util.Scanner; public class Tast01 {public static void main(String[] args) {Scanner arr=new Scanner(System .in );int n=arr.nextInt();for (int i = 0; i < n; i++) {//行for (int j = 0; j <= i; j++) {//列if(j==0) {System.out.print(0);}else {System.out.print(" "+0);}}System.out.println();//换行}}}
运行结果如下:
现在我们就想着如何将0分别改为对应的数字即可,这里我们应用到 二维数组(int [][]sc=new int[列][行];) 既可以知道每个数对应的位置,也可以让每个数之间存在了联系。
首先定义长度:这里大家要明白长度的定义为:每个数都有家可寻。
下图可以清晰地解释:下一行的数等于“肩上”两数之和。
具体实现代码如下 :
import java.util.Scanner; public class Tast02 {public static void main(String[] args) {Scanner arr = new Scanner(System.in);int n = arr.nextInt(); //键盘输入nint[][] sc = new int[n][n];for (int i = 0; i < sc.length; i++) {for (int j = 0; j <= i; j++) {if (j == 0 || j == i) { // 第一列全为1sc[i][j] = 1;} else {sc[i][j] = sc[i - 1][j - 1] + sc[i - 1][j];//下一行的数等于“肩上”两数之和。}}}for (int i = 0; i < n; i++) { // 行for (int j = 0; j <= i; j++) { // 列if (j == 0) {System.out.print(sc[i][j]);} else {System.out.print(" " + sc[i][j]);}}System.out.println(); // 换行} }}
关于怎么用JAVA实现杨辉三角实例就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。