7-1 求N分之一序列前N项和

本题要求编写程序,计算序列 1 + 1/2 + 1/3 + … 的前N项之和。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。

样例”>输入样例:

6

输出样例:

sum = 2.450000

int main(){


double sum;

int n;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


sum+=1.0/i;

}

printf(“sum = %lf”,sum);

}

7-2 求交错序列前N项和

本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中输出部分和的值,结果保留三位小数。

输入样例:

5

输出样例:

0.917

int main(){


double sum=0;

int n,flag=1;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


sum+=flag*1.0*(i)/(2*i-1);

flag=-flag;

}

printf(“%.3f”,sum);

}

7-3 求奇数分之一序列前N项和

本题要求编写程序,计算序列 1 + 1/3 + 1/5 + … 的前N项之和。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。

输入样例:

23

输出样例:

sum = 2.549541

int main(){


double sum=0;

int n;

//     int flag=1;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


sum+=1.0/(2*i-1);

//         flag=-flag;

}

printf(“sum = %lf”,sum);

}

7-4 求简单交错序列前N项和

本题要求编写程序,计算序列 1 – 1/4 + 1/7 – 1/10 + … 的前N项之和。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后三位。题目保证计算结果不超过双精度范围。

输入样例:

10

输出样例:

sum = 0.819

int main(){


double sum=0;

int n,flag=1;

scanf(“%d”,&n);

for(int i=0;i<n;i++)

{


sum+=flag*1.0/(3*i+1);

flag=-flag;

}

printf(“sum = %.3f”,sum);

}

7-5 求平方根序列前N项和

本题要求编写程序,计算平方根序列1​+2​+3​+⋯的前N项之和。可包含头文件

math.h

,并调用

sqrt

函数求平方根。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后两位。题目保证计算结果不超过双精度范围。

输入样例:

10

输出样例:

sum = 22.47

int main(){


double sum;

int n;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


sum+=sqrt(i);

}

printf(“sum = %.2f”,sum);

}

本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。

输入格式:

输入在一行中给出一个不超过12的正整数N。

输出格式:

在一行中输出整数结果。

输入样例:

5

输出样例:

153

int main(){


int sum;

int n,incount;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


incount=1;

for(int j=1;j<=i;j++)

{


incount *=j;

}

sum +=incount;

}

printf(“%d”,sum);

}

7-7 求分数序列前N项和

本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+… 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中输出部分和的值,精确到小数点后两位。题目保证计算结果不超过双精度范围。

输入样例:

20

输出样例:

32.66

int main(){


double sum=0,flag,numerator=1,denominator=1;

int n;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


flag=numerator;

numerator=denominator;

denominator=flag+denominator;

sum+=(denominator)/(numerator);

}

printf(“%.2f”,sum);

}


7-8 特殊a串数列求和

给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。

输入格式:

输入在一行中给出不超过9的正整数a和n。

输出格式:

在一行中按照“s = 对应的和”的格式输出。

输入样例:

2 3

输出样例:

s = 246

int main(){


int sum;

int a,n,incount;

scanf(“%d %d” ,&a,&n);

for(int i=1;i<=n;i++)

{


incount=a;

for(int j=1;j<i;j++)

{


incount=incount*10+a;

}

sum +=incount;

}

printf(“s = %d”,sum);

}

7-9 求平方与倒数序列的部分和

本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m2+1/m+(m+1)2+1/(m+1)+⋯+n2+1/n。

输入格式:

输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。

输入样例:

5 10

输出样例:

sum = 355.845635

int main(){


double sum=0,front,rear;

int m,n;

scanf(“%d %d”,&m,&n);

for(int i=m;i<=n;i++)

{


front=i*i;

rear=1.0/(i);

sum+=front+rear;

}

printf(“sum = %lf”,sum);

}

7-10 求幂之和

本题要求编写程序,计算sum=21+22+23+⋯+2n。可以调用pow函数求幂。

输入格式:

输入在一行中给出正整数n(≤10)。

输出格式:

按照格式“result = 计算结果”输出。

输入样例:

5

输出样例:

result = 62

int main(){


int result=0,count;int n;

scanf(“%d”,&n);

for(int i=1;i<=n;i++)

{


count=pow(2,i);

result +=count;

}

printf(“result = %d”,result);

}



版权声明:本文为qq_53819205原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_53819205/article/details/126943162