close

C++巴斯卡三角形

新手入門的家常菜巴斯卡三角形,他的規則相當簡單,程式碼其實也不用想,就照他的規則寫就好

在校外比賽都是以這為基礎變化出奇怪的題目,有時你還不知道是巴斯卡三角形喔

所以大家一定要練習看看,熟練一下(030)/

問題來源:https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?a=15389

題目描述:

巴斯卡三角形的 第一行第一個字是「 1 」,在下來的數字等於「左上及右上相加」,如果左上或右上沒有數字則為 0 ,例如第二行的數字為「 1 、 1 」,第三行等於「 1 、 2 、 1 」,並且可以無限延伸下去 ~~

 

程式碼:

  1. #include<iostream>  
  2.  
  3.   
  4. using namespace std;  
  5.   
  6. int main()  
  7.  
  8. {  
  9.  
  10.     int level;  
  11.  
  12.     cin >> level;  
  13.  
  14.     int table[level][level]={0};  //裡面都塞0
  15.  
  16.     for(int i=0;i<level;i++)      //裡面都變1
  17.  
  18.         for(int j=0;j<level;j++)  
  19.  
  20.             table[i][j]++;  
  21.  
  22.     for(int i=2;i<level;i++)  
  23.  
  24.     {  
  25.         for(int j=1;j<i;j++)  
  26.  
  27.             table[i][j] = table[i-1][j]+table[i-1][j-1];  //左上及右上相加
  28.  
  29.     }  
  30.     cout << table[0][0] << endl;  //先印第1層
  31.  
  32.     for(int i=0;i<level;i++)  
  33.  
  34.     {  
  35.  
  36.         for(int j=0;j<i+1;j++)  
  37.  
  38.         {  
  39.  
  40.             cout << table[i][j] << " ";  
  41.  
  42.         }  
  43.  
  44.         cout << endl;  
  45.     }  
  46.   
  47. }  
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 佑佑 的頭像
    佑佑

    佑佑的語言

    佑佑 發表在 痞客邦 留言(0) 人氣()