计算pi的近似值

cpp 复制代码
#include <stdio.h>

double f1(double x);
double f2(double x, double y);

int main()
{
    int i; 
    double pi = 8.0/3, a = 4.0, b = 3.0;

    for(i = 0; i < 1e7; i++)
    {
        pi *= f2(a, b);
        a = f1(a);
        b = f1(b);
    }
    printf("%.7f\n", pi);
    return 0;
}

double f1(double x)
{
    return x+2;
}

double f2(double x, double y)
{
    return (x*x)/(y*(y+2));
}

3.1415926

cpp 复制代码
#include <stdio.h>

long long fun1(long long x);
double fun2(long long x);

int main()
{
    long long a = 1, i;
    double r = 0;
    for(i = 0; i < 1e7; i++)
    {  
        r += fun2(a);
        a = fun1(a);
    }
    printf("%.7f\n", r*8);
    return 0;
}

long long fun1(long long x)
{
    return x+4;
}

double fun2(long long x)
{
    return 1.0/(x*(x+2));
}

3.1415926

相关推荐
硕风和炜1 小时前
【LeetCode: 2492. 两个城市间路径的最小分数 + DFS】
java·算法·leetcode·深度优先·dfs·bfs·并查集
我是一颗柠檬2 小时前
【Java项目技术亮点】加权轮询负载均衡算法
java·算法·负载均衡
灯厂码农2 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
凯瑟琳.奥古斯特3 小时前
K次取反最大化数组和解法(力扣1005)
开发语言·c++·算法·leetcode·职场和发展
Jerry4 小时前
LeetCode 203. 移除链表元素
算法
地平线开发者4 小时前
征程 6 | 工具链 QAT ObserverBase 源码解析
算法
地平线开发者4 小时前
【地平线 征程 6 工具链进阶教程】QAT 训练常见问题和排查
算法
地平线开发者4 小时前
征程 6 | 直方图量化配置与校准实例
算法
地平线开发者5 小时前
征程 6E/M Matrix 开发评板使用系列(一):开箱与点亮
算法·自动驾驶