|
5#

楼主 |
发表于 2018-10-8 15:27:07
|
只看该作者
谢谢您,这样就少输出了一些数据,能不能保留呢,而且这些点的值也要按要求修改的。我改了一下,又出错了,能不能帮忙看下
[Fortran] 纯文本查看 复制代码 03 | Integer , parameter :: NX = 521 , NY = 1440 , SLAND = -999 |
04 | character ( * ) , parameter :: infile = 'Depth.01' , outfile = 'Depth2.01' |
06 | integer , dimension ( NX , NY ) :: m , b |
08 | OPEN ( UNIT = 20 , FILE = infile ) |
09 | OPEN ( UNIT = 30 , FILE = outfile , status = 'replace' , action = 'write' ) |
12 | read ( 20 , '(*(I6))' , end = 99 ) m ( i , : ) |
18 | I if ( m ( i , j ) == SLAND ) then |
20 | else if ( m ( i , 1 ) /= SLAND .and. m ( i , 2 ) == SLAND ) then |
22 | else if ( m ( i , 2 ) /= SLAND .and. m ( i , 3 ) == SLAND ) then |
24 | else if ( m ( i , 3 ) /= SLAND .and. m ( i , 4 ) == SLAND ) then |
26 | else if ( m ( i , 1 ) == SLAND .and. m ( i , 2 ) /= SLAND ) then |
28 | else if ( m ( i , 2 ) == SLAND .and. m ( i , 3 ) /= SLAND ) then |
30 | else if ( m ( i , j ) < 200 ) then |
40 | if ( m ( i , j ) == SLAND ) then |
42 | else if ( m ( i , j ) /= SLAND .and. m ( i , j +1 ) == SLAND ) then |
44 | else if ( m ( i , j ) == SLAND .and. m ( i , j +1 ) /= SLAND ) then |
46 | else if ( m ( i , j ) < 200 ) then |
56 | I if ( m ( i , j ) == SLAND ) then |
58 | else if ( m ( i , NY -2 ) /= SLAND .and. m ( i , NY -1 ) == SLAND ) then |
60 | else if ( m ( i , NY -1 ) /= SLAND .and. m ( i , NY ) == SLAND ) then |
62 | else if ( m ( i , NY -3 ) == SLAND .and. m ( i , NY -3 ) /= SLAND ) then |
64 | else if ( m ( i , NY -2 ) == SLAND .and. m ( i , NY -1 ) /= SLAND ) then |
66 | else if ( m ( i , NY -1 ) == SLAND .and. m ( i , NY ) /= SLAND ) then |
68 | else if ( m ( i , j ) < 200 ) then |
80 | write ( 30 , '(*(I6))' ) b ( i , : ) |
|
|