1. 程式人生 > >C++上機報告 利用公式計算π=4(1-1/3+1/5-1/7+1/9-...)的近似值,直到括號中最後一項的絕對值小於0.000001為止。

C++上機報告 利用公式計算π=4(1-1/3+1/5-1/7+1/9-...)的近似值,直到括號中最後一項的絕對值小於0.000001為止。

上機內容:

      利用公式計算π=4(1-1/3+1/5-1/7+1/9-...)的近似值,直到括號中最後一項的絕對值小於0.000001為止。

上機目的:鍛鍊思維能力。

我的程式:

/*    
* 程式的版權和版本宣告部分:    
* Copyright (c) 2011, 煙臺大學計算機學院    
* All rights reserved.    
* 檔名稱:1.cpp    
* 作    者:陸文飛    
* 完成日期:2012 年 9 月 22 日    
* 版 本 號:v1.0    
* 對任務及求解方法的描述部分:   
* 輸入描述:無    
* 問題描述:鍛鍊思維能力   
* 程式輸出:看執行結果    
* 問題分析:略   
* 演算法設計:略    
*/        
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
	int i = 1;

	double m = 1,n = 1,pi = 0;

	while((fabs(n))>1e-7)
	{
		pi = pi + n;

		m = m + 2;

		i = -i;

		n = i/m;
	}
	pi = pi * 4;

	cout<<"pi="<<setiosflags(ios::fixed)<<setprecision(6)<<pi<<endl;

	return 0;
}
執行結果:


心得體會:

    其實這道題時課本上的例題,就是譚浩強的那本C++,也沒是什麼要寫的,就是不要把問題想得太複雜,基礎的知識一定要記牢。

知識點總結:

    也沒什麼要說的仔細看看書本上的知識,在做題前要理好思路,比如加減相隔的這種題不要老是想著(-1)的偶數和奇數的次方等等,定義個整數i然後i=-i 不就完事了。