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. React.createClass vs. ES6 Class Components

    1 1 1 https://www.fullstackreact.com/articles/react-create-class-vs-es6-class-components/ React.crea ...

  2. style element & web components

    style element & web components style.textContent style.setContent bug style.textContent const st ...

  3. 2021-2-22:请你说下 CAP 理论并举例

    CAP CAP 理论是分布式系统中的一个老生常谈的理论了,最早由 Eric Brewer 在一个讲座中提出.在这个讲座中,在传统 ACID 理论以及当时比较流行但是比较抽象的的设计指导理论 BASE ...

  4. javascript初体验(一)

    数据类型 数字 (Number),整数或浮点数,例如42或3.14159 字符串 (String) 布尔值 (Boolean) null (js大小写敏感,因此null和NULL不一样) undefi ...

  5. MySQL应用优化

    MySQL应用优化 目录 MySQL应用优化 1.数据库连接池 2.减少对MySQL的访问 3.负载均衡 4.MySQL查询缓存优化 5.MySQL如何使用缓存 6.MySQL内存管理以及优化 原则 ...

  6. BigDecimalUtil:对double类型的数据进行处理(加减乘除、四舍五入、类型转换、比较两个值的大小)

    该工具类所在的包:import java.math.BigDecimal; 项目中使用该工具类的相关代码: // 如果Output表中已经存在该节点(插入数据的节点)的信息,则修改Output表中的这 ...

  7. eclipse输入时自动提示

    当输入一部分代码时,其他的候选代码提示出来,可以提高开发的效率,设置方法如下: 选择Window -> Perferences -> Java -> Editor -> Con ...

  8. 程序员如何在VsCode上看基金?

    一 我是一个程序员. 代码是我的禁锢,基金是我的自由. 打破禁锢,奔向自由,也许只差几个定投. 有人说,买基金一定要心态好,要学会风险对冲,把8成的钱全仓买基金,剩余2成买意外身亡险,基金大涨就赚,基 ...

  9. springcloud alibaba-nacos配置中心

    nacos除了充当注册中心外,还能作为配置中心,下面进行演示. 1. 创建 模块,用于读取 nacos配置中心的统一配置 2. 添加依赖 <dependencies> <!-- na ...

  10. LeetCode1576. 替换所有的问号

    原题链接 1 class Solution { 2 public: 3 string modifyString(string s) { 4 int lens = s.length(); 5 for(i ...