?? 5_04.c
字號:
/*【例5-4】 輸入精度e,使用格里高利公式求π的近似值,精確到最后一項的絕對值小于e。要求定義和調用函數funpi(e)求π的近似值。*/
/* 用格里高利公式計算π的近似值,精度為e */
#include <stdio.h>
#include <math.h>
int main(void)
{
double e, pi; /* e 代表精度 */
double funpi(double e); /* 函數聲明 */
printf("Enter e:"); /* 提示用戶輸入精度 */
scanf("%lf", &e);
pi = funpi(e); /* 調用函數,把返回值賦值給pi */
printf ("pi = %.4f\n", pi);
return 0;
}
double funpi(double e) /* 定義計算pi的函數 */
{
int denominator, flag;
double item, sum;
flag = 1; /* flag 表示第 i 項的符號,初始為正 */
denominator = 1; /* denominator表示第 i 項的分母,初始為1 */
item = 1.0; /* item 中存放第 i 項的值,初值取 1 */
sum = 0; /* 置累加和 pi 的初值為0 */
/* 當|item| ≥ e時,執(zhí)行循環(huán) */
while(fabs(item) >= e){
item = flag * 1.0 / denominator; /* 計算第 i 項的值 */
sum = sum + item; /* 累加第 i 項的值 */
flag = -flag; /* 改變符號,為下一次循環(huán)做準備 */
denominator = denominator + 2; /* 分母遞增2 ,為下一次循環(huán)做準備 */
}
return sum * 4;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -