杨辉三角(附html,Python,c++杨辉三角代码)

1、前言

杨辉三角很早学编程就知道,但不知道杨辉是古人!

一次偶然的机会,和杨辉三角对上了眼神——杨辉!究竟你是怎么发现杨辉三角的呢?

于是经过了长达3个月锲而不舍的探究。

终究也没发现自己想要的最终结果。

不过也还有有一点点小的收获——今闻三角。

我满怀信心的以为自己发现了一片奥区和大家分享,却没想给数学吧封贴了。

所以才想起在知乎来。果然非常贴心,居然自动邀请我写一下感想。

本来我都是没有任何重写的激情和信心,不过既然它这么盛情,我就再试一番吧。

2、今闻三角的规则

问题是围绕杨辉三角的由来而展开。

所以把杨辉三角进行两个处理:

1、有生于无。

2、数生于0,值极于九。

第一条,则用0开始生成杨辉三角,其实后来发现许多人都是这样处理的。

第二条,使用模运算,使得杨辉三角的最大数为9。

其他和杨辉三角完全一致。

按照这个想法在excel上一列,居然发现有点和自己想象的意外,却发现是自己计算错了。

于是就干脆写代码来生成。

这一来,果然一发不可收拾。

3、今闻三角的0聚现象

当时花费这么多心里的关键是今闻三角的一个奇特现象——0聚合。

就是整个今闻三角出现了成片的三角0。

当时以为有规矩可循,结果唯一找到的就是物极必反——由盛及衰!

4、各种进制的奇特差异

当时忽然萌生一个想法,转换为二进制会是如何?

于是,就逐一尝试,甚至最后搞到最大25进制。

由此才发现杨辉三角和素数的一些关联,于是又转头去啃素数。

二进制,太规则了

三进制,像一个三叶风轮

四进制,花了许多,却是规则分形

五进制,出奇的规则

六进制,出奇的凌乱,却和十进制相似

七进制,又很听话,让人想起了素数

八进制,似乎是四进制的扩展

九进制,虚虚实实,非常美

就这么一眼瞅上去,有几个明显的结论:

第一:所有进制的0三角聚合,大体是三个角虚,中间实,实现分形效果。

第二:六进制和十进制比较特殊,当数据达到1W,也没出现分形!

第三:素数的图形格外奇特,就是从1个一直排到N-1个。

5、素数和杨辉

对于素数进制的今闻三角图谱,这种最直观的猜测确实是对的。

后来经过对照杨辉三角的通项公式,发现确实如此

——素数纬今闻三角的底边除了两头为1,全是0!

而其前一行,竟然全是1!

本以为这个用来检测素数很快,结果算法复杂度依旧。

不过另外一个特殊现象却似乎很管用,就是素数纬的今闻三角其第二斜边可定不为0!

果然,用这个方法求取1亿的素数快了很多。

后来想突破一下大数据,因为用java的big类型,对象构造很慢,发现效果很不理想,只好作罢。

接着还是不甘心,开始又一个漫长而又艰难的探索。

6、中数通项公式

以前编程只是写出10以内的杨辉三角,而且后面数据很大,所以不甚在意。

这次通过今闻三角的简化,和有了探索的动力,最大把数据调到2W!

以前数学家绞尽脑汁个把月时间才能算出来的,程序几秒钟就把所有数据完全呈现!

这个最笨的办法,如今似乎却是最有效的了。

经过这一番周折,决定走一条捷径,又回到杨辉三角,看它和素数的关联何在。

我的目标是盯在了一个我自己起的叫中数的地方!

首先发现了杨辉三角隐藏的一个特性——均衡性。

就是把杨辉三角折叠,发现其重叠两数乘积的和居然是一个固定值——中数!

哈哈,这个也是太无望的时候,想起了高斯大人的妙法。

中数

特别的,对折线的数的平方和就是该中数!

在我的预感中,该中数就是整个杨辉三角的灵魂和缩影!

所以素数纬的杨辉三角的中数必然和该素数有着奇特的关系。

在漫无涯际的苦苦求索中,亦然无果,没有找到中数的通项公式!

想到的所有算法其复杂度都一样,还真省不过去。

不过有几个发现也算是比较欣慰。

这个似乎是目前杨辉三角最全的公式

这个是杨辉三角相邻两列的比值

这个是杨辉三角相邻两行的比值

7、素数判定

奇怪,为何没有求余运算符?

打不动了,偷个懒吧,网上发现素数的定义是用威尔逊的定理来的。

用中数判断素数的方法很简单,代码就几句话,但是中数计算却是麻烦,大数据也很慢,就不贴代码了。

这个就是杨辉三角判断素数的法则

当时好像自己证明过,但是找不到了。

8、素数间隔

为了这个素数还真煞费苦心,来去折腾还真是没有通项公式。

所以自己就提出了个两仪体系的概念来安慰自己。

不过也是发现一个奇特的现象,就是两个相邻素数,之间隔6的概率最大。

而且其6倍的概率也远远高出其他值。

似乎隐隐约约觉得这个分布和杨辉三角有关系。

素数间隔6倍法则

这个是1亿的数据,我的电脑太旧,撑不到2亿的运算,1亿多的没记结果看走向也是如此。

9、异想天开

当时自己的感觉是找到了打通东西方文化的桥梁,所以着实飘了一阵子。

杨辉三角从西方的视角是被世人所承认,这个必须承认,因为人家帕斯卡都这么认为的。

但是从东方的视觉,似乎人们从未去思考过为什么。

我一直认为,就如同数学上一次一次的扩展,从整数到小数,从有理数到无理数,从实数到虚数……

这个路肯定没有到终点,西方的数理逻辑或许只是一个目前很高光的分支,

而它的另一支,却在至暗的历史长河里淹没着——这个就是东方数理逻辑。

或许杨辉三角就是一个窗口。

 下面是html杨辉三角:

<!DOCTYPE html>
<html><head><title>杨辉三角</title><style>table {margin: auto;border-collapse: collapse;}table td {width: 30px;height: 30px;text-align: center;border: 1px solid black;}</style>
</head><body><script>function generateTriangle(rows) {var triangle = [];for (var i = 0; i < rows; i++) {triangle[i] = [];for (var j = 0; j <= i; j++) {if (j === 0 || j === i) {triangle[i][j] = 1;} else {triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];}}}return triangle;}function displayTriangle(triangle) {var table = document.createElement('table');for (var i = 0; i < triangle.length; i++) {var row = document.createElement('tr');for (var j = 0; j < triangle[i].length; j++) {var cell = document.createElement('td');cell.innerText = triangle[i][j];row.appendChild(cell);}table.appendChild(row);}document.body.appendChild(table);}var rows = 10; // 指定要生成的行数var triangle = generateTriangle(rows);displayTriangle(triangle);</script>
</body></html>

这是c++的杨辉三角:
 

#include <iostream>
#include <vector>std::vector<std::vector<int>> generateTriangle(int numRows) {std::vector<std::vector<int>> triangle;for (int i = 0; i < numRows; i++) {std::vector<int> row(i + 1, 1);for (int j = 1; j < i; j++) {row[j] = triangle[i - 1][j - 1] + triangle[i - 1][j];}triangle.push_back(row);}return triangle;
}void displayTriangle(const std::vector<std::vector<int>>& triangle) {int numRows = triangle.size();for (int i = 0; i < numRows; i++) {int numCols = triangle[i].size();for (int j = 0; j < numCols; j++) {std::cout << triangle[i][j] << " ";}std::cout << std::endl;}
}int main() {int numRows = 10; // 指定要生成的行数std::vector<std::vector<int>> triangle = generateTriangle(numRows);displayTriangle(triangle);return 0;
}

Python杨辉三角:

def yanghui_triangle(n):triangle = [[1] * (i+1) for i in range(n)]for i in range(2, n):for j in range(1, i):triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]return triangledef print_triangle(triangle):for row in triangle:print(" ".join(map(str, row)))n = int(input("请输入行数:"))
triangle = yanghui_triangle(n)
print_triangle(triangle)

请大家点赞关注收藏,成为粉丝3月30日有福利!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/271732.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【YOLO v5 v7 v8 v9小目标改进】AFPN 渐进式特征金字塔网络:解决多尺度特征融合中,信息在传递过程丢失

AFPN 渐进式特征金字塔网络&#xff1a;解决多尺度特征融合中&#xff0c;信息在传递过程丢失 提出背景AFPN 多尺度特征金字塔 非邻近层次的直接特征融合 自适应空间融合操作 小目标涨点YOLO v5 魔改YOLO v7 魔改YOLO v8 魔改YOLO v9 魔改 提出背景 论文&#xff1a;https:…

数据库原理实验课(1)

目录 实验内容 安装头歌中的相关内容 具体过程 完结撒花~ 我也是第一次接触oracle的相关软件和操作&#xff0c;所以是一次傻瓜式教学记录 实验内容 安装头歌中的相关内容 具体过程 这是我在百度网盘中下载解压出来的oracle文件夹内的全部内容&#xff08;可能有因为安装完…

神州大地人类来源猜想

在公元前2000年以前&#xff0c;伟大的中华民族还是石器时代&#xff0c;我们有很多美好的神话和传说&#xff0c;三皇五帝就是这个时代伟大部落或者部落首领的故事。 关于人类的历史&#xff0c;从基因学上最新的研究成果大概是这样的&#xff0c;虽然从300万年前就诞生了人类…

[Buuctf] [MRCTF2020]Transform

1.查壳 64位exe文件&#xff0c;没有壳 2.用64位IDA打开 找到主函数&#xff0c;F5查看伪代码 从后往前看&#xff0c;有一个判断语句&#xff0c;是两个数组进行比较的&#xff0c;我们双击byte_40F0E0查看里面的内容 所以能够推出byte_414040的内容&#xff0c;byte_4140…

Window下编写的sh文件在Linux/Docker中无法使用

Window下编写的sh文件在Linux/Docker中无法使用 一、sh文件目的1.1 初始状态1.2 目的 二、过程与异常2.1 首先获取标准ubuntu20.04 - 正常2.2 启动ubuntu20.04容器 - 正常2.3 执行windows下写的preInstall文件 - 报错 三、检查和处理3.1 评估异常3.2 处理异常3.3 调整后运行测试…

手写分布式配置中心(三)增加实时刷新功能(短轮询)

要实现配置自动实时刷新&#xff0c;需要改造之前的代码。代码在https://gitee.com/summer-cat001/config-center​​​​​​​ 服务端改造 服务端增加一个版本号version&#xff0c;新增配置的时候为1&#xff0c;每次更新配置就加1。 Overridepublic long insertConfigDO(…

06. Nginx进阶-Nginx代理服务

proxy代理功能 正向代理 什么是正向代理&#xff1f; 正向代理&#xff08;forward proxy&#xff09;&#xff0c;一个位于客户端和原始服务器之间的服务器。 工作原理 为了从原始服务器获取内容&#xff0c;客户端向代理发送一个请求并指定目标&#xff08;即原始服务器…

几种电脑提示mfc140.dll丢失的解决方法,以及如何预防mfc140.dll丢失

mfc140.dll真是一个超级关键的动态链接库文件&#xff01;一旦这个文件不翼而飞&#xff0c;可能会导致一些程序无法顺利运行&#xff0c;甚至给系统带来麻烦。但别担心&#xff01;遇到mfc140.dll文件丢失的情况&#xff0c;我们有一堆应对措施可以立马施行&#xff0c;确保问…

C++指针(四)万字图文详解!

个人主页&#xff1a;PingdiGuo_guo 收录专栏&#xff1a;C干货专栏 前言 相关文章&#xff1a;C指针&#xff08;一&#xff09;、C指针&#xff08;二&#xff09;、C指针&#xff08;三&#xff09; 本篇博客是介绍函数指针、函数指针数组、回调函数、指针函数的。 点赞破六…

五、软考-系统架构设计师笔记-信息安全技术基础知识

信息安全技术基础知识 1、信息安全基础知识概述 信息安全的概念 信息安全包括 5 个基本要素&#xff1a; 机密性:确保信息不暴露给未授权的实体或进程。完整性:只有得到允许的人才能修改数据&#xff0c;并且能够判别出数据是否已被篡改。可用性:得到授权的实体在需要时可以…

代码随想录 回溯算法-排序

目录 46.全排序 47.全排列|| 332.重新安排行程 46.全排序 46. 全排列 中等 给定一个不含重复数字的数组 nums &#xff0c;返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[1,2,3],[1,…

关于出国留学和考研比较----以本人双非跨考计算机为例

文章目录 中心论点国内就业现状勿让旧认知害了自己那出国留学真的一无是处了吗?1. 藤校仍旧是具有极高价值2. 时间成本低3. 研究生一定比单纯的本科找工作强!4. 很多人说出国读博好,可以无脑入,真是这样吗? 中心论点 如果在选择出国留学还是国内考研的最终核心诉求都是有更好…

985硕的4家大厂实习与校招经历专题分享(part2)

我的个人经历&#xff1a; 985硕士24届毕业生&#xff0c;实验室方向:CV深度学习 就业&#xff1a;工程-java后端 关注大模型相关技术发展 校招offer: 阿里巴巴 字节跳动 等10 研究生期间独立发了一篇二区SCI 实习经历:字节 阿里 京东 B站 &#xff08;只看大厂&#xff0c;面试…

(MATLAB)第十二章-数列与极限

目录 12.1 数列 12.1.1 数列求和 1. 累计求和函数sum() 2. 忽略NaN累计求和函数 nansum() 3. 求此元素位置之前的元素和函数cumsum() 4. 求梯形累计和函数cumtrapz() 12.1.2 数列求积 1. 元素连续相乘函数 prod() 2. 求累计积函数 cumprod() 3. 阶乘函数 ffactorial(n…

【C++精简版回顾】18.文件操作

1.文件操作头文件 2.操作文件所用到的函数 1.文件io 1.头文件 #include<fstream> 2.打开文件 &#xff08;1&#xff09;函数名 文件对象.open &#xff08;2&#xff09;函数参数 /* ios::out 可读 ios::in 可…

【C++】C++模板基础知识篇

个人主页 &#xff1a; zxctscl 文章封面来自&#xff1a;艺术家–贤海林 如有转载请先通知 文章目录 1. 泛型编程2. 函数模板2.1 函数模板概念2.2 函数模板格式2.3 函数模板的原理2.4 函数模板的实例化2.5 模板参数的匹配原则 3. 类模板3.1 类模板的定义格式3.2 类模板的实例化…

基于Java的生活废品回收系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容三、界面展示3.1 登录注册3.2 资源类型&资源品类模块3.3 回收机构模块3.4 资源求购/出售/交易单模块3.5 客服咨询模块 四、免责说明 一、摘要 1.1 项目介绍 生活废品回收系统是可持续发展的解决方案&#xff0c;旨在鼓…

硬盘温度过高会怎么办?机箱温度多少算正常?

硬盘温度 硬盘在使用过程中&#xff0c;断电很容易导致数据丢失&#xff0c;但如果温度过高&#xff0c;也可能对硬盘造成损坏。 硬盘的温度是决定电脑能否正常使用的重要因素。 如果长时间读取和存储数据&#xff0c;硬盘的温度会升高。 那么&#xff0c;硬盘的正常温度是多少…

万字详解,Java实现低配版线程池

文章目录 1.什么是线程池2.线程池的优势3.原理4.代码编写4.1 阻塞队列4.2 ThreadPool线程池4.3 Worker工作线程4.4 代码测试 5. 拒绝策略5.1 抽象Reject接口5.2 BlockingQueue新增tryPut方法5.3 修改ThreadPool的execute方法5.4 ThreadPool线程池构造函数修改5.5 拒绝策略实现1…

利用“定时执行专家”循环执行BAT、VBS、Python脚本——含参数指定功能

目录 一、软件概述 二、VBS脚本执行设置 三、触发器设置 四、功能亮点 五、总结 在自动化办公和日常计算机任务管理中&#xff0c;定时执行脚本是一项非常重要的功能。今天&#xff0c;我将为大家带来一款名为“定时执行专家”的软件的评测&#xff0c;特别是其定时执行VB…