[問題] 程式問題

看板Fortran作者 (抓頭髮)時間14年前 (2010/06/02 02:31), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串2/2 (看更多)
這是一個踩地雷的程式 當遇到1時 以*向上下左右炸開 0000 0*00 0100 ---> ***0 0000 0*00 character*30 a(5,10) character*30 aa(5,10) read(*,'(a)') a(5,10),aa(5,10) if(a(1,1).eq.'1') then aa(1,1)='*' aa(2,1)='*' aa(1,2)='*' end if if(a(5,1).eq.'1') then aa(5,1)='*' aa(5,2)='*' aa(4,1)='*' end if if(a(1,10).eq.'1') then aa(1,10)='*' aa(1,9)='*' aa(2,10)='*' end if if(a(5,10).eq.'1') then aa(5,10)='*' aa(5,9)='*' aa(4,9)='*' end if do 11 j=2,9 if (a(1,j).eq.'1') then aa(i,j)='*' aa(i,j-1)='*' aa(i+1,j)='*' aa(i,j+1)='*' end if 11 continue do 22 j=2,9 if (a(5,j).eq.'1') then aa(i,j)='*' aa(i-1,j)='*' aa(i,j+1)='*' aa(i,j-1)='*' end if 22 continue do 33 i=2,4 if (a(i,1).eq.'1') then aa(i,j)='*' aa(i,j+1)='*' aa(i-1,j)='*' aa(i+1,j)='*' end if 33 continue do 44 i=2,4 if (a(i,10).eq.'1') then aa(i,j)='*' aa(i+1,j)='*' aa(i-1,j)='*' aa(i,j-1)='*' end if 44 continue do 50 i=2,4 do 60 j=2,9 if(a(i,j).eq.'1') then aa(i,j)='*' aa(i+1,j)='*' aa(i-1,j)='*' aa(i,j+1)='*' aa(i,j-1)='*' end if 60 continue 50 continue end 有點長... 我的問題是 input 一個檔案 但我output都沒東西... 不知問題在哪.. 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.118.244 ※ 編輯: gastby 來自: 122.117.118.244 (06/02 02:31)

06/02 10:35, , 1F
你好像沒有叫程式把aa輸出
06/02 10:35, 1F

06/02 15:05, , 2F
有可能喔~ 而且你把他令作"30"長度 有點長?
06/02 15:05, 2F

06/03 00:12, , 3F
可以輸出了 但是..結果是錯的 不知哪裡有問題..y
06/03 00:12, 3F

06/03 19:49, , 4F
所以你有讀入檔案?然後你說結果出錯是怎麼個錯法呢?
06/03 19:49, 4F
文章代碼(AID): #1C1L7lnW (Fortran)
討論串 (同標題文章)
文章代碼(AID): #1C1L7lnW (Fortran)