| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3582 人关注过本帖
标题:好久没有来了,大家100个倒数相加做的怎么样了。。。
只看楼主 加入收藏
吴军旗
Rank: 5Rank: 5
等 级:职业侠客
帖 子:286
专家分:308
注 册:2011-9-14
结帖率:100%
收藏
 问题点数:0 回复次数:22 
好久没有来了,大家100个倒数相加做的怎么样了。。。
程序代码:
第一种
#include < iostream >
#include < cstdlib >
using namespace std;

int main ( )
{
    const int N = 100;
    double sum = 0.0;
    int x = 1;
    do sum += 1.0 / x++;
    while ( x <= N );
    cout << " The sum of the first" << N << " reciprocals is " << sum;

第二种:
//迭代意指反复执行一条或多条语句,直至某个条件为真、
#include < iostream >
#include < cstdlib >
using namespace std;

int main ( )
{
    const int N = 100;
    double sum = 0.0;
    int x = 1;

repeat: sum += 1.0 / x++;
    if ( x < N )
        goto repeat;
    cout << "The sum of the first " << N << " reciprocals is " << sum;

    system ( "pause" );

}

第三种:
#include < iostream >
#include < cstdlib >
using namespace std;

int main ( )
{
    const int N = 100;
    double sum = 0.0;
    int x = 1;

    while ( x <= N )
        sum += 1.0 / x++;
    cout << "The sum of the first " << N << " reciprocals is " << sum;

    system ( "pause" );

    return 0;
}


第四种:
#include < iostream >
#include < cstdlib >
using namespace std;

int main ( )
{
    const int N = 100;
    double sum = 0.0;

    for ( int x = 1; x <=N; x++ )
        sum += 1.0 / x;
    cout << "The sum of the first " << N << " reciprocal is " << sum << endl;

    system ( "pause" );

    return 0;
}



再发个漂亮的图案玩玩:


#include < iostream >
#include < cstdlib >
using namespace std;

int main ( )
{
    const int N = 10;
    for ( int i = 0; i < N; i++ )
    {
        for ( int j = 0; j < 2 * N; j++ )
        if ( j < N -i || j > N + i ) cout << " ";

        else cout << "*";
        cout <<"\n";
    }
   
    system ( "pause" );

    return 0;
}



    system ( "pause" );

    return 0;
}
嘿嘿
搜索更多相关主题的帖子: 倒数 color 
2011-10-31 14:32
jcw08120110
Rank: 8Rank: 8
来 自:南京
等 级:蝙蝠侠
帖 子:272
专家分:742
注 册:2009-6-8
收藏
得分:0 
鲜花掌声~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

君生我未生 我生君以老
2011-10-31 15:00
Devil_W
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:9
帖 子:1160
专家分:1797
注 册:2009-9-14
收藏
得分:0 
垃圾帖。
2011-10-31 15:06
jcw08120110
Rank: 8Rank: 8
来 自:南京
等 级:蝙蝠侠
帖 子:272
专家分:742
注 册:2009-6-8
收藏
得分:0 

楼上的请多给别人鼓励~ 别说风凉话!!!!!!!!!!!我对你得人品表示怀疑~~~~

君生我未生 我生君以老
2011-10-31 15:17
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
虽然3楼的话有点不好听,不过这种代码确实没什么值得炫耀的地方。楼主的水平还很稚嫩。

哪位把这100个倒数的和精确到小数点后10000位,我个人送他100专家分,以资鼓励。

在这里,第一个完成以上任务的,我单独给他开个百分英雄贴。

重剑无锋,大巧不工
2011-10-31 15:36
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
新手需要鼓励,谁都是从初学者过来的,而且术业有专功,所谓高手也只是在某一方面经验丰富一些,大家都平和一些

总有那身价贱的人给作业贴回复完整的代码
2011-10-31 15:50
jcw08120110
Rank: 8Rank: 8
来 自:南京
等 级:蝙蝠侠
帖 子:272
专家分:742
注 册:2009-6-8
收藏
得分:0 
5 楼 我怎么说你呢~~~~~~~~~~
如果你只要求单个数的精确到10000位很简单 就是10W 100W都可以;不过你说的是求他们相加? 你确定你没说错!
我有一个思路:  强制求法   创建100个10001个数据的整形数组a1,a2,a3,a4....;每个数组存放1/1 1/2 1/3的精确到1W的数 以此类推;然后是循环内容是加各个数组的数据 int t,t1=0,t2=0,h[10001];for(int i=10000;i>2;--i){t=a1[i]+a2[i]...+t2/10;t1=t%10;t2=t/10;h[i]=t1;}   t1等于t的个位;t2等于t的高位除以10; 最后输出数组h 就是精确到10000位的数据~~~
其中每个数组的求法  我写出来  
比如1/3  x=1;y=3;
for(i=3;i<=10000;i++){c=x%y;a3[i]=(c*10)/y;x=c*10%y;}

[ 本帖最后由 jcw08120110 于 2011-10-31 16:56 编辑 ]

君生我未生 我生君以老
2011-10-31 16:42
jcw08120110
Rank: 8Rank: 8
来 自:南京
等 级:蝙蝠侠
帖 子:272
专家分:742
注 册:2009-6-8
收藏
得分:0 
求指教  其中a1 a2 a3 各个数组的求解要花掉好多时间要写100个for循环 不过也可以偷懒可以直接定义一个aa[100][10001]这样一个数组就可以一个循环解决~~   然后就是 求加法for(int i=10000;i>2;--i){t=a1[i]+a2[i]...+t2/10;t1=t%10;t2=t/10;h[i]=t1;}  最后输出  一共定义3个函数解决这个问题~~ 只是太烦了 要打好多字 我就不把程序写出来了~~    希望高手指教一些简单的方法!!!!!!!!!!

君生我未生 我生君以老
2011-10-31 17:02
cosam
Rank: 4
等 级:业余侠客
帖 子:146
专家分:259
注 册:2011-8-25
收藏
得分:0 
回复 3楼 Devil_W
支持楼主。
2011-10-31 17:08
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
确定我没有说错。
而且我可以负责任地告诉你,这不过是一个很初级的大数运算问题而已。
ACM里有大量的大数运算问题,这只是基本功而已。

前几天我还出过一题,求n的阶乘结果的十进制位长,比如2!=4,位长为1;4!=24,位长为2;10!=3628800,位长为7。
现在要求求100000!的位长。
其实这题的难度更低,不过到现在也没人给出过结果。

做不出来上面的,可以试试这个问题。
这都是些很初级的问题,不是在难为你们。

重剑无锋,大巧不工
2011-10-31 17:10
快速回复:好久没有来了,大家100个倒数相加做的怎么样了。。。
数据加载中...
 
   



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

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