• 一本通1156 求π的值


    【题目描述】

      根据公式:

      定义函数 arctanx(x),求当最后一项小于10-6时π的值。

    【输入】

    (无)

    【输出】

      π的值。保留到小数点后10位。

    1.一开始看到题一脸懵逼,过于简单的题干和神奇的求解公式让人惆怅,发人深思,完全没法做嘛。

    2.没过多久就发现这是个制仗题……

    3.题解
    (1)硬核打表

    手机上的(或者电脑上的)计算器真的NB……直接cout就行了嘛……
    (2)抄近道
    其实求π公式很多,咱也可以不用出题人的这个嘛(看起来好麻烦…)
    就比如下面这个


    用简单的循环直接搞就是了,多算几位也没关系,四舍五入然后再cout个十位的就是了。其他公式也同理。
    (3)正解
    其实也不难,还是函数+循环的基本操作,话不多说上代码:

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    using namespace std;
    double hanshu(double x);
    int main()
    {
    double a,pai;
    a=1/sqrt(3);
    pai=6*(hanshu(a));
    printf("%.10lf
    ",pai);
    return 0;
    }
    double hanshu(double x)
    {
    double sum=0,temp=x;
    int i=1;
    while(fabs(temp/i)>=1e-6)
    {
    sum+=temp/i;
    temp=-1xx*temp;
    i+=2;
    }
    return sum;
    }

    嗯对没错就是这样。
    4.最后总结一下吧:
    这道题很典型,虽然正解不难打,但其他的方法无疑要巧妙省力的多。在做题的时候往往应该避开常规思路,寻求特殊解或巧解,这可能也是解决问题的捷径。

  • 相关阅读:
    纪念时至今日才学会的命令行
    面向对象程序设计寒假作业2
    面向对象程序设计寒假作业1
    POJ 2104 K-th Number
    HihoCoder 1325 平衡树·Treap
    HihoCoder 1079 离散化
    POJ 2135 Farm Tour
    Luogu P1231 教辅的组成
    洛谷 P3410 拍照
    洛谷 P3370 【模板】字符串哈希
  • 原文地址:https://www.cnblogs.com/Jiangxingchen/p/12236654.html
Copyright © 2020-2023  润新知