JavaScript实现杨辉三角

杨辉三角的算法还是比较简单易懂的,只是要想在控制台更好的实现三角输出就没那么简单了。

根据目前所学,使用了二维数组实现杨辉三角。

每一行都是一个内层数组。

在输出的时候再将每一个内层数组转换成字符串来输出,这样就不会出现中括号,看起来就更美观。

要想第一行居中,就根据所要输出的行数来给每一个内层数组前面添加空格。

而且要考虑行数越多,下面的每一个数字的长度就越大,然后我就根据最大数字的长度来给每一个数字后面加空格,使每一个数字所占的宽度相同,方便排列。

我这个方法也是假的,不是真正的居中对齐,只是看起来还算整齐,而且基本不会受到数字位数的影响。

我还试了使用制表符来做,但是空得太宽了,而且当数字长度超过四位还是五位的话,也会使金字塔变形。

下面代码就是根据用户输入行数来给二维数组赋值:

下面代码是使之成金字塔形式输出:

实现的效果:

时间: 2024-08-29 00:19:42

JavaScript实现杨辉三角的相关文章

js算法集合(二) javascript实现斐波那契数列 (兔子数列) Javascript实现杨辉三角

js算法集合(二)  斐波那契数列.杨辉三角 ★ 上一次我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,这次,我们来对斐波那契数列和杨辉三角进行研究,来加深对Javascript的理解. 一.Javascript实现斐波那契数列 ①要用Javascript实现斐波那契数列,我们首先要了解什么是斐波那契数列:斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为

JavaScript打印杨辉三角

1.什么是杨辉三角? 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 上面就是一个简单的杨辉三角的例子 观察一下, 第n行有n个元素, 第n行的第一个元素和第n个元素为1, 其他元素,假设为第n行第m个元素,则其值为第n-1行第m-1个元素+第n-1行第m个元素. 2.附上代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>杨辉三角</

php_js_css_html——杨辉三角

<?php function yanghui($lines){    echo '<head id=hd><head/>'; //头部插入css样式    echo '<a id=cow>',$lines,'</a>';    echo '<a id=column>',($lines - $lines%2)/2 + ($lines%2),'</a>';//想要设定每个表格遵从一样的宽度,                     

用二维数组打印出杨辉三角

用二维数组打印出杨辉三角 首先你得知道二位数组和熟练二位数组,再次你得知道杨辉三角的规律! 相信能知道这个的,你已经掉了半只脚在这个坑了,不说废话直接上... 针对Javascript掌握基础的: 在电脑输入cmd命令打开控制器先要创建node'.js的环境: 你得把这个文件夹和你的js文件放在一起! js代码如下: 1 let readline = require("readline-sync"); 2 console.log("请输入杨辉三角的行数:"); 3

LeetCode (13) Pascal&#39;s Triangle (杨辉三角 )

题目描述 Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5, Return 从第三行开始,每行除了最左边和最右边两个数为1,其他数字都是上一行中相邻两个数字之和.根据上述规则可以写出下面的代码: class Solution { public: vector<vector<int> > generateRow1() { vector<in

杨辉三角

1 package com.llh.demo; 2 3 /** 4 * 杨辉三角 5 * 6 * @author llh 7 * 8 */ 9 public class Test { 10 /* 11 * 杨辉三角 12 */ 13 public static void main(String[] args) { 14 int[] a = new int[11]; 15 int num = 1; 16 // 17 for (int i = 1; i <= 10; i++) { 18 for (i

杨辉三角实例菱形实例

杨辉三角实例 public class Hui { public static void main (String [] args){ int [][] a =new int [10][10]; for(int i=0;i<a.length;i++){ for(int j=0;j<=i;j++){ if(j==0||i==j){ System.out.print(" "+(a[i][j]=1)); }else {a[i][j]=a[i-1][j-1]+a[i-1][j];

使用Java打印杨辉三角

package 杨辉三角; import java.util.Scanner; public class 三角 { private static Scanner scn; public static void main(String[] args) { scn = new Scanner(System.in); System.out.println("请输入数据"); int n = scn.nextInt(); //定义一个二维数组 int [][] array = new int

Java的二维数组的应用及杨辉三角的编写

(1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个,即该位置上的元素在该行上最大,在该列上最小(注:一个二维数组也可能没有这样的鞍点). /** * * @author liuhui *@version Java上机实验三 *@time 2016.10.30 */ public class javatest2 { public static int