c语言编程计算数列1/2,-2/3,3/5,-5/8,8/13,…的前20项和!!大神~~~求求求
3个回答
展开全部
// 求数列的前n项之和,数列初始元素为1/2
//下一元素的分子是上一元素的分母
//下一元素的分母是上一元素的分子分母绝对值之和
//偶数项为负,奇数项为正
double sum(unsigned int n)
{
int i = 0;
double sum = 0;
double numerator, denominator, tmp;
numerator = 1.0; //分子
denominator = 2.0; //分母
if (n <= 0)
return 0;
sum = 0.5; // 1/2 数列中第一个元素,分子为1, 分母为2
for (i = 1; i < n; ++i)
{
if (i % 2 == 0)
{
sum += denominator / (denominator + numerator);
}
else
{
sum -= denominator / (denominator + numerator);
}
// 计算数列中下个元素的分子分母,下一个元素的分子是上一个元素的分母
// 下一个元素的分母,是上一个元素的分子分母绝对值之和
tmp = denominator;
denominator += numerator;
numerator = tmp;
}
return sum;
}
//下一元素的分子是上一元素的分母
//下一元素的分母是上一元素的分子分母绝对值之和
//偶数项为负,奇数项为正
double sum(unsigned int n)
{
int i = 0;
double sum = 0;
double numerator, denominator, tmp;
numerator = 1.0; //分子
denominator = 2.0; //分母
if (n <= 0)
return 0;
sum = 0.5; // 1/2 数列中第一个元素,分子为1, 分母为2
for (i = 1; i < n; ++i)
{
if (i % 2 == 0)
{
sum += denominator / (denominator + numerator);
}
else
{
sum -= denominator / (denominator + numerator);
}
// 计算数列中下个元素的分子分母,下一个元素的分子是上一个元素的分母
// 下一个元素的分母,是上一个元素的分子分母绝对值之和
tmp = denominator;
denominator += numerator;
numerator = tmp;
}
return sum;
}
展开全部
找出通项,符号使用-1来控制。
追问
帮我编程可以嘛?我不会啊~可是作业马上就要交了!
追答
经典代码想不起来!自己写的,将就用吧!
#include
void main(){
float a=1,b=2,d;
float sum=0;
int i=0;
int c=-1;
while(i<20)
{
c=-c; //为了控制符号
sum=sum+a*c/b;
d=a,a=b,b=b+d;
i++;
}
printf("%.3f\n",sum); //控制3位小数点,你可以改
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
0c语言编程计算数列1/2,-2/3,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |