天天看點

Codeup遞歸:數列

題目描述

編寫一個求斐波那契數列的遞歸函數,輸入n 值,使用該遞歸函數,輸出如下圖形(參見樣例)。

輸入

輸入第一行為樣例數m,接下來有m行每行一個整數n,n不超過10。

輸出

樣例輸入

1
6      

樣例輸出

0
        0 1 1
      0 1 1 2 3
    0 1 1 2 3 5 8
  0 1 1 2 3 5 8 13 21
0 1 1 2 3 5 8 13 21 34 55      
#include<bits/stdc++.h>
using namespace std;
int fabs(int n){
	if(n==0) return 0;
	else if(n==1||n==2) return 1;
	else {
		return fabs(n-1)+fabs(n-2);
	}
} 
int main(){
	int m,n,i,j,k;
	scanf("%d",&m);
	while(m--){
		scanf("%d",&n);
		for(i=0;i<n;i++){
			for(j=0;j<n-i-1;j++){
				cout<<"  ";
			}
			for(k=0;k<2*i+1;k++){
				printf("%d",fabs(k));
				if(k==2*i)printf("\n");
				else printf(" ");
			}
		}
	}
	return 0;
}           

繼續閱讀