1 /*33 【程序 33 杨辉三角】
2 题目:打印出杨辉三角形(要求打印出 10 行如下图)
3 程序分析:
4 1
5 1 1
6 1 2 1
7 1 3 3 1
8 1 4 6 4 1
9 1 5 10 10 5 1
10 */
11
12 /*分析:
13 * ======================
14 * 杨辉三角特点:
15 * 1.每个数等于它上方两数之和。
16 * 2.每行数字左右对称,由1开始逐渐变大。
17 * 3.第n行的数字有n项。
18 * =======================
19 ==================================规律===规律====规律==================================
20 * 经过观察发现:
21 1
22 1 1
23 1 2 1
24 1 3 3 1
25 1 4 6 4 1
26 1 5 10 10 5 1
27 第一行a1[0]=1
28 第二行a2[0]=1,a2[1]=1;
29 第三行a3[0]=1,a3[1]=a2[0]+a2[1],a3[2]=1;
30 第四行a4[0]=1,a4[1]=a3[0]+a3[1],a4[2]=a3[1]+a3[2],a4[3]=1;
31 ....
32 第n行an[0]=1,an[1]=a(n-1)[0]+a(n-1)[1],an[2]=a(n-1)[1]+a(n-1)[2],an[3]=a(n-1)[2]+a(n-1)[3]...
33 ...an[n-2]=a(n-1)[n-3]+a(n-1)[n-2],an[n-1]=1;
34
35 考虑用for循环输出10行!还有一个for循环来改变数组的值
36 直接用二维数组输出!!!!!!!
37 * ==========输出规律=========
38 * 每行的第一个数字前面有n-i个空格,即第一数字输出之前要输出n-i个空格
39 * 没输出一个数字,再输出一个空格
40 *
41 */
42
43 package homework;
44
45 public class _33 {
46
47 public static void main(String[] args) {
48 // 声明一个10行10列的二维数组
49 int n = 10;
50 int[][] a = new int[n][n]; // 10行10列数组
51 //第一次循环控制行数
52 for (int i = 0; i < n; i++) {
53 //第二层循环控制列数
54 for (int j = 0; j <= i; j++) {
55 //每行的第一列值都为1,每行要输出的最后一个数(即行数等于列数时)也为1
56 if (j == 0 || j == i) {
57 a[i][j] = 1;
58 }
59 //其余情况的值都等于它上方两数之和
60 else {
61 a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
62 }
63 // System.out.printf("%d\t",a[i][j]); //输出值
64 }
65 // System.out.println(); //换行
66 }
67
68 // 使输出的结果为等腰三角形,两层for循环
69 // 第一层控制行输出
70 for (int i = 0; i < n; i++) {
71 //第二层的第一部分控制输出空格
72 for (int j = 0; j <= n-i; j++) {
73 System.out.print(" ");
74 }
75 //第二层的第二部分控制输出数组值+“ ”
76 for (int k = 0; k <= i; k++) {
77 System.out.print(a[i][k] + " ");
78 }
79 System.out.println(); //换行
80 }
81
82 }
83 }

java例题_33 等腰输出杨辉三角的更多相关文章

  1. Java使用for循环输出杨辉三角

    杨辉三角形由数字排列,可以把它看做一个数字表,其基本特性是两侧数值均为1,其他位置的数值是其正上方的数字与左上角数值之和.编写程序,使用for循环输出包括10行在内的杨辉三角形. 思路是创建一个整型二 ...

  2. 1233: 输出杨辉三角前n行(Java)

    WUSTOJ 1233: 输出杨辉三角前n行 题目 原题链接 Description 输出杨辉三角前n行. Input 输入一个数n(n <= 9) Output 输出杨辉三角前n行.(注意行末 ...

  3. 使用for循环输出杨辉三角-还是不懂得需要复习

    package com.chongrui.test; /* *使用for循环输出杨辉三角杨辉三角形由数字排列,可以把它看作一个数字表,其基本特征是两侧的数值均为1,其他位置的数值是其正上方的数值与左上 ...

  4. 08-使用for循环输出杨辉三角(循环)

    /** * 使用循环输出杨辉三角 * * */ public class Test6 { public static void main(String[] args) { // 创建二维数组 int ...

  5. C语言实现输出杨辉三角

    1.倒推法实现输出杨辉三角右半部分,代码如下: #include<stdio.h> int main() { ]; printf("请输入行数n:"); scanf(& ...

  6. php输出杨辉三角

    php输出杨辉三角 一.截图 二.代码 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...

  7. 用java输出杨辉三角

    杨辉三角:它的两个边都是1,内部其它都是肩上两个数的和 第一种: package aaa; public class YangHui { public static void main(String[ ...

  8. Java数组的应用:案例:杨辉三角,三维数组,字符串数组

    //import java.util.Arrays; //包含Arrays //import java.util.Random; public class HelloWorld { public st ...

  9. 利用yield关键字输出杨辉三角

    最近学习了下python,发现里面也有yield的用法,本来对C#里的yield不甚了解,但是通过学习python,对于C#的yield理解更深了!! 不多说了,小学生水平的表达能力伤不起.... 直 ...

随机推荐

  1. ES6 Set vs ES5 Array

    ES6 Set vs ES5 Array Set https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Ob ...

  2. NGK全球行伦敦站,SPC推动全球数字金融创新

    近日,NGK全球巡回路演在英国的首都伦敦盛大落幕,此次路演有幸邀请到了西欧区块链业界弗洛伊德大咖,NGK方面代表鲍利斯以及英国及其组周边国家社群意见代表马丁内斯等人,总计参与人数达到了数十人. 路演一 ...

  3. 1095 Cars on Campus——PAT甲级真题

    1095 Cars on Campus Zhejiang University has 6 campuses and a lot of gates. From each gate we can col ...

  4. 【Notes_3】现代图形学入门——基础变换、MVP变换模型

    基础变换(二维) 三维变化与二维变换矩阵类似 齐次坐标下的基础变换 Scale: \[S(s_x,s_y) =\begin{pmatrix} s_x &0 &0\\ 0 & s ...

  5. 微信小程序:数据绑定

    data中的数据不仅仅可以当成文本来显示,还可以当成属性来显示. 注意:属性值要用单引号或双引号引起来. 在微信开发者工具的控制台中点击Wxml会看到 使用Boolean类型充当属性的时候,字符串和花 ...

  6. Vue脚手架中默认的margin怎么清除

    问题情景:开发中发现我的项目四周有白边,但是并没有设置样式 问题原因:vue脚手架中静态文件夹public中的index.html造成的 解决方案:找到vue脚手架中index.html页面,设置ma ...

  7. eclipse从接口快速跳转到实现类

    1.只跳转到实现类上 按住Ctrl键,把鼠标的光标放在要跳转的接口上面,选择第二个 2.直接跳转大实现的方法上 按住Ctrl键,把鼠标的光标放在要跳转的方法上面,选择第二个 对比可以发现,操作都是一样 ...

  8. 使用 Tye 辅助开发 k8s 应用竟如此简单(六)

    续上篇,这篇我们来进一步探索 Tye 更多的使用方法.本篇我们将进一步研究 Tye 与分布式应用程序运行时 Dapr 如何碰撞出更精彩的火花. Newbe.Claptrap 是一个用于轻松应对并发问题 ...

  9. 使用Docker创建MongoDb服务

    使用Docker创建MongoDb服务 1.先拉mongodb镜像 docker pull mongodb:4.2.5 2.创建映射目录 创建mongo映射目录,用于存放后面的相关东西. mkdir ...

  10. 顶级c程序员之路 基础篇 - 第一章 关键字的深度理解 number-1

    c语言有32个关键字,每个关键字你都理解吗? 今天出场的是: auto ,  register,  static,   extern 为什么他们会一起呢,说到这里不得不谈到c语言对变量的描述. c给每 ...