s=1+2*3+4*5*6+7*8*9*10+.... C語言求解


#include <stdio.h>
/*類似斐波那契數列的計算方式
   項           1   2    3      4
                1   2*3  4*5*6  7*8*9*10
生成項的起始數字  1   2    4      7
  和后一項的差值    1   2     3
*/
int startNum(int i){
    if(i==1)
        return 1;
    return startNum(i-1)+i-1;
}
/*獲得第幾項 Ai 
    方式是項起始數字乘下一個數字    
*/
int A(int i){
    int start, increase,a;
    a=start=startNum(i);
    for(increase=1;increase<i;increase++)
        a=a*(start+increase);
    return a;
}
int main(){
    int n, sum=0;
    scanf("%d", &n);
    /*求和 i代表下標*/
    for(int i=1;i<=n;i++){
        sum+=A(i);
    }
    
    printf("%d", sum);
    return 0;
}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM