Yahoo奇摩知識+將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+服務將會轉為唯讀模式。其他Yahoo奇摩產品與服務或您的Yahoo奇摩帳號都不會受影響。如需關於Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。
fortran輸出格式問題
請高手幫我解答下列程式碼
write(*,"9(2x,i1,a1,i1,a1,i2))")i,"*",1,"=",i,i,"*",2,"=",i*2,i,"*",3,"=",i*3,i,"*",4,"=",i*4,i,&
"*",5,"=",i*5,i,"*",6,"=",i*6,i,"*",7,"=",i*7,i,"*",8,"=",i*8,i,"*",9,"=",i*9
小弟不懂他write程式碼後面的指定輸出格式 的意涵
為什麼會設定六個格式? 分別掌控了螢幕上哪些控制?
1 個解答
- JackLv 51 0 年前最佳解答
首先,我對你的題目有兩個疑問:
1. 這段程式碼有 Syntax error,右括號比左括號多了一個。
2. 六個格式?? 你是說 9 個格式嗎?
這段程式碼看似複雜,其實只是單純的輸出一行文數字而已,並不含任何螢幕控制碼。格式中的第一個 a1 是給 “*” 這個文字用的,第二個 a1 是給 “=” 這個文字用的。
當 i=1 時,這段程式碼會輸出下面這一行文數字:
1*1= 1 1*2= 2 1*3= 3 1*4= 4 1*5= 5 1*6= 6 1*7= 7 1*8= 8 1*9= 9
當 i=2 時,這段程式碼會輸出下面這一行文數字:
2*1= 2 2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18
依此類推。
從這裡也可以看出格式中的 “9(2x,i1,a1,i1,a1,i2)” 為何要重複 9 次。
2009-04-01 22:09:48 補充:
2x 是空兩格,第一個 i1 是給第一個數字(在 “*” 之前)用的,第二個 i1 是給第二個數字(在 “=” 之前)用的,i2是給兩個數字的乘積(在 “=” 之後)用的,它可能會有兩位數,因此要用 i2。這段程式碼應該是九九乘法表的 DO LOOP 中的一個片段。
參考資料: 自己