【文档说明】计算机程式Fortran77语言课件.ppt,共(44)页,158.553 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-77304.html
以下为本文档部分文字说明:
计算机程式Fortran77语言课件目錄計算機程式課程實施方式四化一甲乙計算機程式課程概述規劃學習項目Fortran程式語言講義Fortran程式範例課程實施方式學習態度追求知識的理性需求與欣然為之的感性態度。學習策略
範例演練中精奠實基,深邃思考中創造新機。課程實施方式課程實施老師規劃應用實境,鋪陳學習軌域;勾勒思維方向,誘發學習渴望。學生輸入和輸出,建立資訊傳輸的管道;加減和乘除,完成科學工程的計算;迴圈的應用,處理科學研究的資料;邏輯的引導,提供計算策略的引用
;標示和說明,傳承計算程式的生命。課程實施方式課程成果學生熟悉書寫電腦的高階語言,了解邏輯判別的應用技巧;善用矩陣迴圈的強勁功能,設計工程計算的應用程式。老師?!%#※$¥!?。課程實施方式課堂實施方式每週之單節課程在指定教
室上課,每週之雙節課於電子計算機中心電腦教室上機操作;『上自天文,下至地理;大自天體,小至次原子粒子。』任何問題皆可提出。課程概述主要課程內容包含電腦基本常識、程式設計簡介、資料型態、流程控制、函式、副程式、陣列與字串、檔案與應用程式設計。Anintroduction
tobasiccomputerconcept,programming,datatypes,flowofcontrol,functions,subroutine,arrays,strings,files,andapplications規劃學習項目在Windo
ws視窗作業模式與MS-DOS作業模式間切換MS-DOS作業模式下常用10個操作指令:dir、doskey、exitcd、md、rdtype、del、copy、ren規劃學習項目用notep
ad編輯程式用GNUCompiler編譯程式用pe2編輯程式用MS-FORTRAN編譯程式規劃學習項目各個範例程式輸入與執行,了解各該程式的計算目的,以及設計邏輯,共6類。(1).8(語言指令練習):t11.for~t18.for(2).4(換算應用):
t21.for~t24.for(3).3(資訊處理與排序):t31.for~t33.for(4).2(數據迴歸):fit1.for、fit2.for(5).1(一元二次方程式求解):squ.for(6).9(矩陣運算):mat1.for~mat9.for規劃學習項目相關數學解析
法與作業線性迴歸–最小二平方法:檢量線(校正曲線)的製作聯立方程式解析–矩陣解析法作業牛頓法求解(作業):vdWEOS之體積求解半間距法求解(作業):vdWEOS之體積求解疊代法求解(作業):vdWEOS之
體積求解數值微分運算(作業)數值積分運算(作業)微分方程式求解(作業)電腦與FORTRAN語言電腦中央處理單元CPU(centralprocessingunit)主記憶體Mainmemory:電源關閉資料不復記憶次記憶體
Secondarymemory:電源關閉資料可記憶著,硬式磁碟機…等輸入與輸出裝置input/outputdevices:Keyboard;CRTscreensandPrinters電腦中數據與資訊
的表示電腦中數據與資訊的表示比特bit:電腦記憶體由無數個開或關(1或0)稱為一個bit拜特byte:一群八個bit來表示一二進位數字稱為一個byte字元word:在電腦中另一更大群的bit組合稱為word二進位制binarynumbersys
tem與十進位制decimalnumbersystem字元數據characterdata、整數數據integerdata、實數數據realdata電腦語言的一面觀電腦可執行之運算載入load、儲
存store、加add、減subtract、乘multiply、除division、比較comparison。電腦語言的一面觀語言機械語言:由0與1兩種符號所組合,電腦可直接接受的語言訊號。組合語言:以對人類而言更有意義的文字與符號
書寫,用來指揮電腦。高階語言:以更接近人類的語言結構書寫,以能用來指揮電腦。•Ada、Basic、C、COBOL、Pascal、Fortran…等。電腦語言的一面觀福傳語言Fortranlanguage:數值分析Numericalanalysis、工程計算
Technicalcalculations;超級電腦supercomputers。編譯compile:高階語言皆須轉換成電腦可接受之機械語言。程式陳述的結構電腦語言程式主要由可執行陳述executablestatements與不可執行陳
述non-executablestatements組成。每一程式單元programunit為一完整陳述亦即為單一可分別編譯之FORTRAN碼。程式陳述的結構FORTRAN77陳述的格式可編譯為80個字元欄位註解欄1:C或*字元表
示該列陳述為註解說明不編譯陳述標號欄:1~5,1~99999之數字指定之標號(label)連續欄:6輸入任一符號上一列無法完成一程式單元陳述於本列繼續陳述陳述主體欄:7-72輸入宣告陳述、執行陳述與各個陳述等可編譯欄位識別
欄:73-80識別說明用FORTRAN程式的結構一完整電腦程式須包含有宣告declaration、可執行execution、結束termination等三部份陳述。FORTRAN程式的結構宣告部份:變數之形式字元character、整數integer、實數rea
l、邏輯logical)陣列dimension、共用common、輸入read、輸出write。FORTRAN程式的結構可執行部份,依處理之問題解析,所書寫之運算式輸入與輸出資料。(數學方法)結束部份:停止執行之陳述指令停止,stop停止,回呼叫之程式return程式終止之
陳述指令end程式的型(style)建立程式書寫設計之個人品味與風格。常數與變數整數常數與變數INTEGER,INTEGER*2,INTEGER*4實數常數與變數REAL,REAL*4,REAL*8,DOUBLEPRECISION複數常數與變數COM
PLEX,COMPLEX*8,COMPLEX*16,DOUBLECOMPLEX字元常數與變數CHARACTER[*length]邏輯常數與變數LOGICAL,LOGICAL*2,LOGICAL*4指定陳述與算術計算指定陳述-----Ex.variable-name=expression
標準運算子operatorsOperators+Addition-Subtraction*Multiplication/Division**Exponentiation整數算術-----Ex.3/4=05/4=1實數算術-----Ex.3.
/4.=0.755./4.=1.25指定陳述與算術計算運算之層次(算術計算式之計算先後次序)[1].括號;[2].指數由右至左;[3].乘除;[4].加減。(除了指數外,同層次則由左至右依序運算)混合模式算術-----Ex.1+1/4=11.+1/4=1.1+1./4=1.25混合模式算術與
指數Ex.result=y**n:(y*y*y…,ntimes);result=y**x:(y*y*y…,xtimes)指定陳述與邏輯計算關係運算子rationaloperator.EQ.Equalto相等.NE.Notequalto不相等.LT.Lessthan小於.LE
.Lessthanorequalto小於等於.GT.Greaterthan大於.GE.Greaterthanorequalto大於等於指定陳述與邏輯計算組合邏輯運算子combinationallogicopera
torL1.NOT.L2LogicalNOTL1.AND.L2LogicalANDL1.OR.L2LogicalORL1.EQV.L2LogicalequivalenceL1.NEQV.L2Logicalnon-equival
ence指定陳述與邏輯計算在程式中大部份之主要的分支(branching)或迴圈(looping)結構是由邏數值所控制。內存函數電腦是以二進位制運算,所以僅可以作四種運算加add、減subtract、乘multiply與除division之
運算冪次則是作多次相乘,指數可為小數其他函數則以泰勒展開式或其他展開式做計算,電腦內建以函數供呼叫輸入與輸出的格式輸入與輸出的格式分為兩類自由格式freeformat格式化formated自由格式輸入與輸出read(*,*)variable1,var
iable2,…write(*,*)variable1,variable2,…輸入與輸出的格式格式化的描述子(1)IrIwI輸入或輸出之資料型態為整數r重覆之次數,r=1時可不用輸入w佔據之總位數FrFw.dF輸入或輸出之資料型態為實數d小數位數E
rEw.dE輸入或輸出之資料型態為科學符號型態之含指數實數DrDw.dD倍準數之輸入或輸出輸入與輸出的格式格式化的描述子(2)XwXX輸出資料時各資料項(dataitem)與資料項間設定w空格數HwHh1..hwH輸出設定於後之
文數資料(h1h2…hw)ArAwA輸入與輸出字元資料LrLwL輸出為邏輯型態資料輸入與輸出的格式格式化的描述子(3)TTwTRwTLwT報表定位設定TRw自現在位置向右移w個位置TLw自現在位置向左移w個位置//設定跳行()r(…,…)
r重覆次數'''h1h2…hn'文數資料(h1h2…hn)直接輸出Fortran程式範例t11.fort12.fort13.fort14.fort15.fort16.fort17.fort18.fort21
.fort11.forct11.fwrite(*,*)3+4stopendt12.forct12.fa=3.b=4.write(*,*)a+bstopendt13.forct13.fa=3.b=4.sum=a+bwrite(*
,*)'sumofaandbequalto',sumstopendt14.forct14.fa=3.b=4.sum=a+bwrite(*,1000)sum1000format(5x,'sumofaandbequalto
',f10.2)stopendt15.forct15.fwrite(*,*)'inputaandbvalue'read(*,*)a,bsum=a+bwrite(*,1000)sum1000format(5x,'sum
ofaandbequalto',e12.5)stopendt16.forwrite(*,*)'inputaandbvalue'write(*,*)'a='read(*,*)awrite(*,*)'b='read(*,*)bsum=
a+bwrite(*,1000)sum1000format(5x,'sumofa&andbequalto',e12.5)stopendt17.foropen(1,file='t17d.dat',status='old')
open(11,file='t17.prn',status='new')read(1,*)a,bsum=a+bwrite(11,1000)sum1000format(5x,'Sumofaandbequalto',f12.5)stopendt18.forope
n(1,file='t17d.dat',status='old')open(6,file='t18.prn',status='new')read(1,1001)a,b1001format(2f10.5)sum=a+bwrite(6,1000)sum100
0format(5x,'sumofaandbequalto',e12.5)stopendt21.for100write(*,*)'readthetemperatureindegreesoff'write(*,1
001)1001format(5x,'iff=9999thenstop',/,5x,'f=')read(*,*)fif(f.ge.9999)stopc=(f-32.)*5./9.write(*,1000)f,c1000
format(2x,'Thetemperatureof(',f6.2,')degreefisequal’,&’to(',f6.2,')degreec',//)goto100stopend您可已曉得!劇情如何發展!敬請期待!