• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C语言创建pascal三角图形

OC/C/C++ 水墨上仙 2539次浏览

C语言创建pascal三角图形

//Procedural Programming technique shows creation of Pascal's Triangl
#include <iostream>
#include <iomanip>
using namespace std;
int** comb(int** a , int row , int col)
{
   int mid = col/2;
        //clear matrix
         for( int i = 0 ; i < row ; i++)
         for( int j = 0 ; j < col ; j++)
                a[i][j] = 0;
                a[0][mid] = 1; //put 1 in the middle of first row
    //build up Pascal's Triangle matrix
     for( int i = 1 ; i < row ; i++)
        {
          for( int j = 1 ; j < col - 1 ; j++)
               a[i][j] = a[i-1][j-1] + a[i-1][j+1];
        }
   return a;
}
void disp(int** ptr, int row, int col)
{
  cout << endl << endl;
    for ( int i = 0 ; i < row ; i++)
        {
        for ( int j = 0 ; j < col ; j++)
            {
                if( ptr[i][j] == 0)
                cout << "   ";
                else
                cout << setw(4) << right << ptr[i][j];
            }
            cout << endl;
        }
    cout << endl << endl;
}
int main()
{
    int **ptr, m, n;
    cout << "\nEnter number of rows to draw Pascal's Triangle: ";
    cin >> m;
    n = 2 * m + 1; //column = 2 * row + 1
 
    ptr = new int*[m];
    for( int i = 0 ; i < m ; i++)
        ptr[i] = new int[n];
 
        ptr = comb(ptr, m, n);//calling function for array creation
 
        disp(ptr, m, n);//calling function for array displaying.
 
    return 0;
}
/*Programs output
******************
Enter number of rows to draw Pascal's Triangle: 9
 
 
                              1
                           1      1
                        1      2      1
                     1      3      3      1
                  1      4      6      4      1
               1      5     10     10      5      1
            1      6     15     20     15      6      1
         1      7     21     35     35     21      7      1
      1      8     28     56     70     56     28      8      1
 
 
 
Process returned 0 (0x0)   execution time : 2.996 s
Press any key to continue.
*/


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C语言创建pascal三角图形
喜欢 (0)
加载中……