![fortran習題參考答案_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/6b38bbfd-ecc5-490b-aeed-ef0483646935/6b38bbfd-ecc5-490b-aeed-ef04836469351.gif)
![fortran習題參考答案_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/6b38bbfd-ecc5-490b-aeed-ef0483646935/6b38bbfd-ecc5-490b-aeed-ef04836469352.gif)
![fortran習題參考答案_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/6b38bbfd-ecc5-490b-aeed-ef0483646935/6b38bbfd-ecc5-490b-aeed-ef04836469353.gif)
![fortran習題參考答案_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/6b38bbfd-ecc5-490b-aeed-ef0483646935/6b38bbfd-ecc5-490b-aeed-ef04836469354.gif)
![fortran習題參考答案_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/6b38bbfd-ecc5-490b-aeed-ef0483646935/6b38bbfd-ecc5-490b-aeed-ef04836469355.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、工程分析程序設計 上機作業(yè)(五)模塊化編程上機目的:掌握內(nèi)部例程、主程序、外部例程、模塊等功能的使用方法。1、 有一個六邊形,求其面積。為求面積,作了3條輔助線。如圖所示:(提示,三角形面積=,其中,a、b、c為三個邊長)。要求用內(nèi)部函數(shù)來計算每個三角形的面積。program main implicit none real : A(9)=(/10,30,16,13,21,14,20,36,28/) integer i real s s=area(A(3),A(4),A(7)+area(A(2),A(7),A(8)+ & area(A(1),A(8),A(9)+area(A(5),A(6
2、),A(9) print*,'The area is',s contains function area(x,y,z) implicit none real x,y,z real p,area p=(x+y+z)/2 area=sqrt(p*(p-x)*(p-y)*(p-z) end functionend2、 編寫一個子例程子程序,SUM(S,T,N1,N2)。把整型數(shù)N1到N2進行求和,并把求和的結果放置到S,把整型數(shù)N1到N2進行求積,并把求積的結果放置到T。并用這個子程序來計算:program main implicit none integer A(8) intege
3、r i,b,c,d,e,f,g,m,n,y b=0;d=0;g=1;n=1 do i=1,8 A(i)=iend do call sum(b,c,1,4) call sum(d,e,3,8) call sum(f,g,3,6) call sum(m,n,1,3) y=b+d+g-n print*,'y=(1+2+3+4)+(3+4+5+6+7+8)+(3*4*5*6)-(1*2*3)=',y contains subroutine sum(s,t,N1,N2) integer s,t,N1,N2,i do i=N1,N2 s=s+A(i) t=t*A(i) end do end
4、 subroutine end 3、 編寫函數(shù)子程序GDC求兩個數(shù)的最大公約數(shù)。求最大公約數(shù)的算法如下:把兩個數(shù)中大的那個數(shù)作為被除數(shù),兩數(shù)相除得到一個余數(shù)。把余數(shù)去除除數(shù)得到新一輪的余數(shù)。不斷重復這一過程直到余數(shù)為0,這時的除數(shù)就是兩個數(shù)的最大公約數(shù)。調用此函數(shù),求1260,198,72三個數(shù)的最大公約數(shù)。program main implicit none integer a,b,c,m,n,temp print*,'請輸入三個數(shù):' print*,'a b c' read*,a,b,c if (a<b) then temp=a a=b b=temp
5、end if call GDC(a,b,m) if (c<m) then temp=c c=m m=temp end if call GDC(m,c,n) print*,'最大公約數(shù)為',n contains subroutine GDC(x,y,z) integer x,y,z,k do while(mod(x,y)/=0) k=mod(x,y)x=yy=k end do z=y end subroutine end4、 編寫一個模塊程序,提供以下服務:定義出常量p、e。定義出子程序,實現(xiàn)求和、求階乘n!。并在主程序中計算如下結果:從鍵盤上輸入整數(shù)n、實型數(shù)A、R、R0
6、,求(實型)和(實型)。 module mytask implicit none real,parameter : PI=3.1415926 real,parameter : e =2.7182818 contains function sub(n) integer i,n,sub sub=0 do i=1,n sub=sub+i*i end do end function sub function fact(n) integer i,n real fact fact=1 do i=1,n fact=fact*i end do end function factend module mytas
7、kprogram main use mytask implicit none integer n real A,R,R0 real x,y print*,'請輸入依次 n,A,R,R0 :' read*,n,A,R,R0 x=fact(n)/sub(n) y=(A*n/(2*PI*R*R)*(R/R0)*n*e*(-(R/R0)*n) print*,'n!/n2(i=1,n)=',x print*,'(A*n/(2*PI*R*R)*(R/R0)*n*e*(-(R/R0)*n)',yend program 5、 編寫外部函數(shù),計算的值,直到最后一項
8、的絕對值小于10-6為止。再編寫主程序,從鍵盤讀入x,調用該外部函數(shù)并輸出sinx的計算結果。注意不能用Fortran的標準函數(shù)SIN(X)。program main implicit none real x,p external sub print*,'請輸入角度 x :' read*,x p=x/180*3.14 call sub(p) end programsubroutine sub(k) implicit none real k,y integer i y=0i=1 do while (abs(k*i/(fact(i)>1.0e-6) y=y+(-1)*(i-1
9、)/2)*k*i/(fact(i) i=i+2 end do print*,'sin(x) = ',y contains function fact(m) integer m,j,factfact=1do j=1,m fact=fact*jend do end function factend subroutine sub6、 編寫程序,用歐拉法數(shù)值求解一階微分方程。數(shù)值解法的基本思想:用差分方程代替微分方程,然后在若干個離散點上逐點求解差分方程,得到各離散點x0, x1, x2, 等處函數(shù)的近似值y0, y1, y2, 。其中各離散點x0, x1, x2, 之間的距離稱為步長
10、h。歐拉法的基本思想是,一階微分可用向前差分代替,即。帶入微分方程,可得因此,其中。當給定x0, y0和步長h后,即可按下面步驟求得數(shù)值解:請按上述方法編寫程序用Euler法求解微分方程,當x0=0時,y0=1.0。取h=0.1,試求出當xi=0.1,0.2,0.3,0.4.,1.0時的yi值。program main implicit none real x(0:10) real y(0:10) real p(0:10) integer(2) i,j y(0)=1.0; x(0)=0.0 p(0)=f(x(0),y(0) do i=1,10 x(i)=x(i-1)+0.1 end do do j=1,10 y(j)=y(j-1)+0.1*p(j-1) p(j)=f(x(j),y(j) print*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023三年級英語下冊 Unit 1 Animals on the farm Lesson 3 Fish and Birds說課稿 冀教版(三起)
- 2023二年級數(shù)學上冊 一 加與減第1課時 誰的得分高配套說課稿 北師大版
- 2025蓄電池產(chǎn)品及零部件檢驗合同書
- 《5 奇形怪狀的熱帶魚(圖形工具)》說課稿-2023-2024學年清華版(2012)信息技術一年級上冊
- 2024秋五年級英語上冊 Module 2 Unit 1 What did you buy說課稿 外研版(三起)
- 2024年學年八年級語文上冊 第三單元 宋詞集粹(下)第9課《訴衷情》說課稿1 滬教版五四制
- Unit 3 A healthy diet (Story time)(說課稿)-2023-2024學年譯林版(三起)英語六年級下冊001
- 減肥店減肥合同范例
- 區(qū)塊鏈服務合同范例
- 冷庫保管合同范例
- 充電樁知識培訓課件
- 2025年七年級下冊道德與法治主要知識點
- 2025年交通運輸部長江口航道管理局招聘4人歷年高頻重點提升(共500題)附帶答案詳解
- 長期處方管理規(guī)范
- 汽車電氣設備檢測與維修中職全套教學課件
- 幼兒園大班數(shù)學PPT課件2、3、4的分解與組成
- API682機械密封沖洗方案(中文)課件
- 七年級上冊英語完形填空、閱讀理解綜合訓練100題(含參考答案)
- DB35T 1345-2013蘭壽系列金魚養(yǎng)殖技術規(guī)范
- 祛痘產(chǎn)品原料配方與消費者祛痘方案選擇建議
- 年產(chǎn)一萬噸蓖麻項目可行性論證報告
評論
0/150
提交評論