欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

实验四---杨辉三角

程序员文章站 2022-06-05 21:01:27
实验目的:用一维数组实现杨辉三角的输出 结果如下: 用#代替空格输出更直观些 代码如下: 心得:用一位数组进行杨辉三角的输出,不仅要考虑三角形的对应,符合等腰三角形的形状,空格与数字的输出; 思路: 1.可以用两个一维数组,一个用来打印当前的层数;一个用来存储上一层的数字,通过计算得到下一层的数字 ......

实验目的:用一维数组实现杨辉三角的输出

结果如下:

 实验四---杨辉三角

用#代替空格输出更直观些

实验四---杨辉三角

 

代码如下:

 

 1 package yhui;
 2 import java.util.*;
 3 public class yh {
 4     public static void main(string[] args) {
 5         // todo auto-generated method stub
 6
 7         scanner in=new scanner(system.in);
 8         system.out.print("规定要输出的层数:\t");
 9         int n=in.nextint();
10 
11         yhui(5);
12         
13     }
14     static void yhui(int n) {
15         system.out.println("\t输出"+n+"层的等腰杨辉三角\t");
16         int [] a=new int [n]; //定义数组a[n]
17         for (int i=0;i<=n-1;i++)   //按层数循环,i为层数
18         {
19             a[i]=1; //赋值
20             for (int j=i-1;j>=1;j--)   
21                 //从第2行层始,从第i-1个元素开始计算,直到第j个元素,计算各元素的值,j为列
22                 a[j]=a[j]+a[j-1];   
23             //元素的值是上一行本位置元素左右值的和
24             for(int k=1;k<=n-i;k++)    //打印空格,间隔
25                 system.out.print("#5");
26             for (int j=0;j<=i;j++)
27             {    //输出本层
28                 system.out.print("#");
29                 system.out.print(a[j]);
30                }
31         system.out.println();
32          }
33     }
34 }

 

心得:用一位数组进行杨辉三角的输出,不仅要考虑三角形的对应,符合等腰三角形的形状,空格与数字的输出;

思路:

1.可以用两个一维数组,一个用来打印当前的层数;一个用来存储上一层的数字,通过计算得到下一层的数字

2.通过递归算法,用一维数组对杨辉三角的值进行存储

3.可以通过本实验,每循环一层就计算本层的各元素值,并输出

java的变量只在定义的范围内有效,除此之外均无效,会提示该变量未定义!!!

 

至此,完成!