| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2543 人关注过本帖, 1 人收藏
标题:跪求c算法,简单的公式。感谢大虾们。小弟没分,照顾下哈。
只看楼主 加入收藏
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
回复 8楼 wbq30747
那就在m456的基础上分别求分子和分母,分母就是1*...*n,分子慢慢加,自己再想想怎么实现约分

我可好玩啦...不信你玩玩^_^
2009-10-24 11:09
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
回复 9楼 m456m654
什么宝贝软件

我可好玩啦...不信你玩玩^_^
2009-10-24 11:10
dengjun000
Rank: 2
等 级:论坛游民
帖 子:66
专家分:77
注 册:2009-10-14
收藏
得分:0 
貌似M456没看清楚那个数组的规律啊
2009-10-24 11:11
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
回复 13楼 dengjun000
m456的那个要评论是这样评论“没有一句多余代码”
大家向m456学习
不过他把题目没看仔细
加个对t的判断

[ 本帖最后由 pgy 于 2009-10-24 11:16 编辑 ]

我可好玩啦...不信你玩玩^_^
2009-10-24 11:13
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
得分:0 
回复 3楼 m456m654
运行起怎么都输出1.00
那个减去的那部分貌似有问题哦,不是那种规律么。
感谢感谢
2009-10-24 11:18
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
得分:0 
大虾你在写代码么、、、

等着你哈
2009-10-24 11:20
LEED
Rank: 2
等 级:论坛游民
帖 子:75
专家分:43
注 册:2009-8-26
收藏
得分:0 
#include<stdio.h>
void main()
{
    int n,t,p=1;
    float s=1,m=0;
    scanf("%d",&n);
    for(t=1;t<=n;t++)
    {
        s=s+m;
        p=-p;
        m=p/(t+1);
    }
    printf("s=%10.6f\n",s);
}
初学者,瞎写了一个,为什么编译没错,但n不管等于几,s都等于1.。。。我觉得 那算法没错啊。。很费解。。高手指点下。。
2009-10-24 11:58
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
回复 17楼 LEED
提示:float int

我可好玩啦...不信你玩玩^_^
2009-10-24 12:08
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:0 
用不到float浮点型,1/2+1/3+1/4……1/n等于几分之几,整型就可以了,我用上了长型,n在1~24之间。
 
程序代码:
#include <stdio.h> 
 
long tigui(long jia,long cheng) 
{ 
 if(cheng%jia==0) 
   return jia; 
 else 
   tigui(cheng%jia,jia); 
} 
 
 
void yuefen(long *jia,long *cheng) 
{ 
 int i; 
 while(1) 
   { 
    i=tigui(*jia,*cheng); 
    if(i==1)break; 
    else 
      { 
       *jia/=i; 
       *cheng/=i; 
      } 
   } 
} 
 
 
 
int main(void) 
  { 
   int i,n; 
   unsigned long zi,mu; 
    
   do{ 
      printf("n="); 
      scanf("%d",&n); 
     }while(n<1 || n>24); 
   for(zi=1,mu=2,i=3;i<=n;i++) 
     { 
      zi=mu+zi*i; 
      mu*=i; 
      yuefen(&zi,&mu); 
     } 
   printf("s="); 
   if(zi>mu) 
     { 
      printf("%ld+",zi/mu); 
      zi%=mu; 
     } 
   n==1?printf("1\n\n"):printf("%ld/%ld\n\n",zi,mu); 
 
   getch(); 
   return 0; 
  }

努力—前进—变老—退休—入土
2009-10-24 12:18
LEED
Rank: 2
等 级:论坛游民
帖 子:75
专家分:43
注 册:2009-8-26
收藏
得分:0 
回复 18楼 pgy
大侠美女,我很菜。。能改一下不?
2009-10-24 12:24
快速回复:跪求c算法,简单的公式。感谢大虾们。小弟没分,照顾下哈。
数据加载中...
 
   



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

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