看板 Fortran 關於我們 聯絡資訊
在寫程式時,因為要使用tecplot輸出檔 但在寫順序時出錯 以下是我的程式部份 character*1 namet character*3 tx,tr integer*2 kout data kout/1/ equivalence (namet,tx) namet='v' tx=tr(kout) open(17,file='v'//tx//'.plt') kout=kout+1 return end 重點在後面這邊 character *2 function tr(nop) integer*2 nop,in,iten iten=10 in=ichar('0') tr=char(in+int(nop/100))//char(in+int(nop/10))//char(in+mod(nop,iten)) return end 當跑前99個輸出檔沒問題 但當開始第100輸出檔後有問題 因為當nop=100時 十位數字char(in+int(nop/10))中間值會直接跳到110之後 不會從100 101 102開始 我的程式就當掉了 能否請在版上的高手 能提點我 教我如何改善此問題! 在此先說聲謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.13.137.38
perturb:nop/10 -> mod(nop,100)/10 不過為什麼要用這麼古老的寫法 05/20 12:05