Fortran 板


LINE

※ 引述《BREAKBEAT (幾何科技)》之銘言: : 請問副程式(計畫)以CALL的方式來寫的話 : 大約架構是要如何寫?是否能提供例題說明 : 還有就是輸入是open(10,file='input.dat',statvs='123')這種的 : 它是什麼原理?statvs是代表什麼? : 要開啟的檔案如何編寫? : 以上有待高手解惑 感謝 先說明open的部分 open(10,file='input.dat',status='unknown') ^^^^^^ 這裡應該是status 首先第一個10,是把這行open指定的檔案給定一個編號 如果要對這檔案做讀、寫、查詢、改變檔案中目前的位置 就直接用這編號去指定 例如: 如果要把字串"hello"寫入到檔案中,指令如下 write(10,*)"hello" 如果要把變數寫入到檔案 write(10,*)變數名稱 第二個 file ,是指定要開啟的檔案名稱 檔案名稱可以是字串,也可以是變數 如果是字串,在字串的左右要加引號 如果是變數,變數的形態要為字串變數,左右不用加引號 例如: 檔案名稱是字串 open(10,file='test,txt') 檔案名稱是變數 character*50 filename !宣告字串變數 filename='test.txt' open(10,file=filename) 第三個status,是指定檔案的狀態,有三種 1 已存在 old 2 不存在 new (開新檔案的意思) 3 未知 unknown 在狀態的左右要加引號 例如: open(10,file='test,txt',status='unknown') ------------------------分隔線---------------------- 副程式的用法 首先,一定要有一個主程式 以下舉個例子,從螢幕輸入 再輸出到螢幕 program main_program !主程式開始 integer input read(*,*)input print*, input stop end !主程式結束 現在要加入一個副程式,在副程式裡計算輸入值的平方,再回傳給主程式 program main_program !主程式開始 integer input,answer read(*,*)input call sub_program(input,answer) print*, answer stop end !主程式結束 subroutine sub_program(input,answer) !副程式開始 integer input,answer answer=input**2 return !返回主程式 end !副程式結束 注意黃色字部分,副程式的名稱(subroutine後面的黃色字) 要跟主程式裡call後面的一樣 主程式裡call了副程式,代表主程式將紅色字的變數傳給副程式 副程式開始那行裡的紅色字的變數,就會接收主程式裡傳來的值 傳遞變數時對應的是位置 例如 call sub_program(input,answer) subroutine sub_program(input2,answer2) 雖然副程式主程式給第一個變數名稱的是input,而副程式給第一個變數名稱是input2 在傳遞變數時,副程式的input2值會等於主程式的input值 例如 call sub_program(input,answer) subroutine sub_program(answer,input) call副程式時,第一個變數是input 而副程式接收時,第一個變數是answer 此時,副程式的answer接收到的,是主程式input的值 而副程式的input接收到的是主程式的answer --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.149.127
1F:推 BREAKBEAT:感謝 06/15 10:45







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP