| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 800 人关注过本帖
标题:[求助]帮帮忙!
只看楼主 加入收藏
学C中
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2005-10-30
收藏
 问题点数:0 回复次数:10 
[求助]帮帮忙!

求1-1/2+1/3-1/4+...+1/99-1/100的值.用循环怎么做?

搜索更多相关主题的帖子: 100 
2005-11-06 22:06
学C中
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2005-10-30
收藏
得分:0 
我自己做了一个不会循环的,大家看看是怎么回事?
#include <stdio.h>
int main(void)
{
int j;
double i;
for(i=1.0,j=2;j<=100;j++)
if(j%2==0) i-=1/j;
else i+=1/j;
printf("%lf\n",i);
return 0;
}

2005-11-06 22:18
bych
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-11-1
收藏
得分:0 


{ 1 n=1
sum(n){sum(n-1)+a(n) n>=2


a(n)=(1/n)*(-1)的n次方

用递归较好:
#include<iostream.h>
#include<stdio.h>
float sum(int n)
{ if(n<=0) cout<<"ERROR!! n<=0 \a"<<endl;
else if(n==1) return 1;
else return (sum(n-1)+a(n));


}
float a(int n)
{

if(n/2==0) return -(1/n);
else return 1/n;

}
int main()
{ int n;
cout<<"PLease input the number n"<<endl;
cout<<"n=";
cin>>n;
cout<<"sum["<<n<<"]="<<sum(n)<<endl;


}

2005-11-06 23:03
学C中
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2005-10-30
收藏
得分:0 
能再说详细点吗?

2005-11-06 23:26
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
#include <stdio.h>
main()
{
int j;
double i=0;
for(j=1;j<=100;j+=2)
i+=(1/j)-(1/j+1);
printf("%lf\n",i);
}
没有编译器,你自己试试看吧。估计没问题的。

2005-11-07 10:35
学C中
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2005-10-30
收藏
得分:0 
还是不行!

2005-11-07 14:20
llx3449
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2005-11-7
收藏
得分:0 
main()
{
int sign=1;
float deno=2.0,sum=1.0,term;
while(deno<=100)
{
sign=-sign;
term=sign/deno;
sum=sum+term;
deno=deno+1;
}
printf("%f",sum);
}

上机试试

2005-11-07 16:36
llx3449
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2005-11-7
收藏
得分:0 

mian()
{
int sign=1;
float deno=2.0,sum=1,term;
while(deno<=100)
{
sign=-sign;
term=sign/deno;
sum=sum+term;
deno=deno+1;
}
printf("%f",sum)
}


2005-11-07 16:40
学C中
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2005-10-30
收藏
得分:0 

不行!


2005-11-08 10:42
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
#include <stdio.h>
main()
{
int j;
double i=0;
for(j=1;j<=100;j+=2)
i+=(1.0/j)-(1.0/(j+1));
printf("%f\n",i);
}
这个对了吧。

2005-11-09 21:00
快速回复:[求助]帮帮忙!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.052195 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved