1樓:攻得無量受無疆
我也想知道- - 我非常懷疑 你是不是我同學 - - 我們今天也要交這個
2樓:匿名使用者
這個很簡單的函式,為什麼要用到迭代函式呢?
能不用迭代函式就不用迭代函式...因為迭代函式需要用到入棧和出棧,這些操作需要時間(當然這些操作並不需要我們考慮)...
下面是vb6.0**,你能看明白的
private function f(x as double, optional diaota as double = 0.0000001) as double
dim i as long, a as double, b as double, c as double
i = 1: a = x * x: b = x: c = x
doi = i + 2: b = -b * a / (i - 1) / i: c = c + b
if abs(b) < diaota then exit do
loop
f = c
end function
請用迭代代函式呼叫來計算下試:f(x)=x-x^3/3!+x^5/5!-x^7/7!+...
3樓:
#include
double x;
double myfuc1(unsigned int m)for(; n<=m; n++) x1 *= x /(n+1);
return x1;
}double myfuc2(double fx,unsigned int m)
void main()
用c語言迭代函式的呼叫來計算x-x^3/3!+x^5/5!-x^7/7!+.....
4樓:昂元亮
1:輝三角形(要求列印出10行)
#include
main()
printf("1\n"); } }
求一個3*3的矩陣對角線元素之合
直接用兩個for迴圈遍歷矩陣
然後用if判斷在i=j的時候把該元素加到sum裡面
3:什麼迭代求法,有什麼規則。距離用法(例如3次函式)
迭代演算法是用計算機解決問題的一種基本方法。它利用計算機運算速度快、適合做重複性操作的特點,讓計算機對一組指令(或一定步驟)進行重複執行,在每次執行這組指令(或這些步驟)時,都從變數的原值推出它的一個新值。
利用迭代演算法解決問題,需要做好以下三個方面的工作:
一、確定迭代變數。在可以用迭代演算法解決的問題中,至少存在一個直接或間接地不斷由舊值遞推出新值的變數,這個變數就是迭代變數。
二、建立迭代關係式。所謂迭代關係式,指如何從變數的前一個值推出其下一個值的公式(或關係)。迭代關係式的建立是解決迭代問題的關鍵,通常可以使用遞推或倒推的方法來完成。
三、對迭代過程進行控制。在什麼時候結束迭代過程?這是編寫迭代程式必須考慮的問題。
不能讓迭代過程無休止地重複執行下去。迭代過程的控制通常可分為兩種情況:一種是所需的迭代次數是個確定的值,可以計算出來;另一種是所需的迭代次數無法確定。
對於前一種情況,可以構建一個固定次數的迴圈來實現對迭代過程的控制;對於後一種情況,需要進一步分析出用來結束迭代過程的條件。
具體用法:我沒太弄明白你說的3次函式具體是個什麼意思
是求f(x)=x^3 這樣的函式的結果嗎?
如果這樣利用迭代的話就是得出迭代公式 就是 f(x)=f(x)*x
用個迴圈就可以了 這個思路不難
迭代和遞迴有區別:迭代比遞迴的效率要高的多 利用記憶體佔用資源也更少
所以寫程式時提倡能用迭代來轉換的遞迴都用迭代來代替
4:最小公倍數和最大公約數的求法;
這個用「輾轉相除」法就可以了 相信你們老師已經講過...
5樓:
#include "stdio.h"
void main()
while(temp>=1e-5);
printf("sin(%f)=%.16lf\n",x,sin);
} 輸入樣例:
3.1415926
輸出樣例:
sin(3.141593)=0.0000000760092960
sin(x)=x-x^3/3!+x^5/5!-x^7/7!+...,直到最後一項的絕對值小於10的負七次方為止。c語言程式設計
6樓:匿名使用者
這應該是泰勒式的應用,用級數的部分和近似計算函式值。
跳出迴圈的條件是fabs(x)>1e-7,即最後一項的絕對值小於10的負七次方為止
7樓:匿名使用者
這是泰來勒展示沒錯。sin表示自的就是一
個求出來的和,你看原公式不就是sin=一個求和式的形式嘛。。。
我覺得x=-x*z*z/(2*n+1)/2*n;這一行貌似有問題,2*n沒有加括號。
驗證時其實不用轉化,泰勒公式對所有x都成立。結果可能有一點差別,因為這個求和過程終止於你所定義的條件(<1e-7).
c++, 計算正弦的近似值。sin(x)=x-x^3/3!+x^5/5!-x^7/7!+…… 要求用while、do-while和for迴圈語句
8樓:匿名使用者
private sub command2_click()dim x, an, sinx, n
x = val(inputbox("x="))an = x
n = 1
jc = 1
sinx = 0
do until abs(an) < 10 ^ -6sinx = sinx + an
n = n + 1
jc = jc * (2 * n - 2) * (2 * n - 1)
an = (-1) ^ (n - 1) * x ^ (2 * n - 1) / jc
loop
print sinx
end sub
c語言:y=x/1!-x^3/3!+x^5/5!-x^7/7!+……前20項的值(已知:x=2)?
9樓:
int main(int argc,char *argv)printf("%.2f\n",y);
return 0;}
vb程式設計:用泰勒級數 sin(x)=x-x^3/3!+x^5/5!-x^7/7!+x^9/9!-x^11/11!......... 15
10樓:匿名使用者
我以前寫的,c語言的改造一下就變成vb的了,速度有點慢,精確到小數點後6位,入參x是角度弧度值。
double sin(double x)
while((temp>0.0000001)||(temp<-0.0000001));
return result;}
利用泰勒級數sin(x)=x-x^3/3!+x^5/5!-x^7/7!...,計算sinx的值,要求最後一項的值小於10^(-5)
11樓:程式設計_高手
測試通過,不懂可以追問
#include
#include
#include
#define pi 3.1415926
double x,sinx =0,n =1,a =1; //a為(2n-1)!
void main()
}printf("%f %f\n",sinx,n);
system("pause");}
輸入x算出 sin(x)=x-x^3/3!+x^5/5!-x^7/7!… +x^10/10! 我
12樓:匿名使用者
第二個for迴圈裡面的,錯了
13樓:小帆向前衝
pow函式第一個引數應該大於0
用C語言迭代函式的呼叫來計算X X 3 3 X 5 5 X
昂元亮 1 輝三角形 要求列印出10行 include main printf 1 n 求一個3 3的矩陣對角線元素之合 直接用兩個for迴圈遍歷矩陣 然後用if判斷在i j的時候把該元素加到sum裡面 3 什麼迭代求法,有什麼規則。距離用法 例如3次函式 迭代演算法是用計算機解決問題的一種基本方法...
C呼叫子函式使用法簡單舉個例子就行
include using namespace std int pingfang int number 宣告定義平方函式為int型,引數為number 函式定義結束 int main int a 一忽兒要輸入的數cin a 輸入aa pingfang a 將a的值平方運算 此處的a只是一個變數名稱 ...
C可以使用C 的Dll庫嗎?函式如何呼叫
顯然是可以的.拿一個最簡單的例子呼叫messagebox這個api函式 public delegate int delegatemessagebox intptr hwnd,string lpstring,string lpcaption,int type intptr hmodule kernel...