[問題] 有關於迴圈格式輸出的問題

作者: zmack0905 (降太)   2013-07-03 21:02:13
1.我要輸出的資料每筆都有點長
分別有座標(X,Y)跟24個測量值,需要寫在同一行方便我後面作業
雖然都寫在同一次WRITE裡面
用vi開來看發現仍然超過76格會強迫換行
請問這是只能用自訂格式去克服嗎?還是可以取消強迫換行?
(ADVANCE='no'應該是針對每次write不是單次write吧?)
2.
當我把資料原本的方式輸出
DO i=1,24
WRITE(11,*)i
READ(10,100)date,time,date,time
READ(10,*)spec
DO j=1,L
READ(10,*)s1(j,i),s1(j+1,i),s1(j+2,i),s1(j+3,i),s1(j+4,i)
WRITE(11,*)s1(j,i),s1(j+1,i),s1(j+2,i),s1(j+3,i),s1(j+4,i)
END DO
IF(F2==1) THEN
READ(10,*)s1(L*5+1,i)
END IF
IF(F2==2) THEN
READ(10,*)s1(L*5+1,i),s1(L*5+2,i)
END IF
IF(F2==3) THEN
READ(10,*)s1(L*5+1,i),s1(L*5+2,i),s1(L*5+3,i)
WRITE(11,*)s1(L*5+1,i),s1(L*5+2,i),s1(L*5+3,i)
END IF
IF(F2==4) THEN
READ(10,*)s1(L*5+1,i),s1(L*5+2,i),s1(L*5+3,i),s1(L*5+4,i)
END IF
END DO
都可以把我約五萬筆的資料輸出
但為了加上座標 把上面的WRITE都拿掉
改用這樣
!i=1
!DO UTM_N=1,LONG
! DO UTM_E=1,WIDE
! WRITE(11,*)UTM_N,UTM_E,i,s1(i,1:24)
! i=i+1
! END DO
! END DO
!
!
!DEALLOCATE(s1)
(請當作沒看到驚嘆號囧....)
大約第415組的座標(約第9960筆測量值)後的測值全部都變成了-4.3160208E+08...
這是發生什麼悲劇了QAQ.....?
作者: charlesdc (MoOn)   2013-07-03 22:16:00
1.自訂格式也有上限2XX忘了 2.自己的format只有自己懂所以你先弄個format來看看是不是資料讀錯了吧不然大概就是read近來的時候型態不符
作者: Cypresslin (啊哈哈~~)   2013-07-03 23:56:00
是不是你的i爆了
作者: charlesdc (MoOn)   2013-07-04 13:07:00
default的format可能不那麼可靠你檢查看看座標後面的帶的資料是否正確deafult的判斷資料斷點好像是space 還是tab or , 忘了所以順便檢查一下你的input data面有沒有整串的空白或是會被認為是斷點的符號
作者: pillbox1989 (如履薄冰)   2013-07-04 19:38:00
我常用default 確定斷點符號可以是space也可以是,
作者: Cypresslin (啊哈哈~~)   2013-07-04 23:10:00
Q1: 要知道資料是不是在同一行請看右下角數字 如果沒有數字請在vim中:set ruler 有時只是不夠顯示所以換行

Links booklink

Contact Us: admin [ a t ] ucptt.com