国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

用C++隊列模板實現楊輝三角的輸出

2019-11-06 06:15:26
字體:
來源:轉載
供稿:網友

如何用C++實現楊輝三角的輸出,首先我們來分析楊輝三角的數學規律:

1、每行的第一和最后一個數都為1;

2、除去前兩行,每個數是其上一行對應位置的兩個數之和

我們把規律2推廣,即在每一行的前排采用補0的方法,使第二行開始的每個數都是上一行對應位置兩個數的和

利用規律2,我們知道可以用上一行的元素求出下一行的元素,在這里我們選擇隊列的方式,用隊列保存上一行元素,來求本行元素

使用過的數在隊列中出棧,新的數進棧。這樣一次次更新。

#include<iostream>#include<queue>using namespace std;void Out_number(int n){	int s1, s2;	queue<int> Q;	cout << "       "<<1 << endl;	Q.push(1);	for (int i = 2;i <= n;i++)	{			for (int j = 0;j < n - i;j++)			cout << " ";		s1 = 0;		for (int j = 1;j <= i - 1;j++)		{			s2 = Q.front();			Q.pop();			cout  << s1 + s2 << " ";			Q.push(s1 + s2);			s1 = s2;		}		cout  << 1<<endl;		Q.push(1);	}}int main(){	int n; //記錄要輸出的行數	cout << "輸入行數:" << endl;	cin >> n;	Out_number(n);	return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 嘉黎县| 建湖县| 临西县| 阳高县| 上思县| 舞钢市| 乌苏市| 斗六市| 宕昌县| 林甸县| 宁南县| 和静县| 阿图什市| 桂平市| 永新县| 土默特右旗| 通化县| 金塔县| 重庆市| 泰安市| 敦化市| 镇安县| 杨浦区| 台湾省| 广州市| 吴旗县| 台南市| 雅江县| 广汉市| 麦盖提县| 满洲里市| 合肥市| 浮山县| 仁寿县| 盱眙县| 长汀县| 菏泽市| 辉县市| 鹰潭市| 太和县| 长汀县|