打印楊輝三角(STL版隊列)

#include <iostream>
#include <queue>
using namespace std;

void YangHuiTriangle(int n);
int main()
{
	cout<<"請輸入楊輝三角的層數:";
	int x;
	cin>>x; 
    YangHuiTriangle(x);
	return 0;
}

void YangHuiTriangle(int n)
{
	queue<int> q;
	q.push(0);
	q.push(1);
	
	int x,y; 
	for(int i=0;i<n;i++)
	{
		q.push(0);
		for(int j=n;j>i;j--)
		cout<<" ";
		do
		{
			x = q.front();
			q.pop();
			
			y = q.front();
			
			y!=0? cout<<y<<" " : cout<<" " ;
			q.push((x+y));
		}while(y!=0);
		cout<<endl; 
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章