在Fortran77中打印图形



我正试图通过创建一个2d CHARACTER数组在Fortran77中打印一个图形。x值是恒定的(我的文件中的行数),我的y值将由用户输入。我将所有值初始化为空格,但我不确定如何用我的文件中的点填充2d数组(例如-1和100,2和200),以及如何提示用户输入高度。有什么想法吗?

代码:

      SUBROUTINE PLOT(L,S)
      INTEGER*8 L
C S = the variable that the user gives for y length, user defined (not sure how to do yet)
      CHARACTER H(L,S)
C
C LOCAL VARIABLES
C
      INTEGER I
      DO 100 I=1, S
        H(I,I) = ' '
100 CONTINUE
      RETURN
      END

我的数据文件:

1     100
2     200
3     300
4     400
5     500

以下是一些基本的读写:

读入一个名为data_in的文件,其中N行,每行包含变量xyz

open(unit=10,file='data_in',status='old')
do i=1,N
  read(10,*) x(i), y(i), z(i)
end do
close(10)

将维度为N的变量xyz分别写入名为data_out:的文件

open(unit=10,file='data_out',status='unknown')
do i=1,N
  write(10,*) x(i), y(i), z(i)
end do
close(10)

xyz作为键盘输入(标准输入,*),在手前询问用户:

do i=1,N
  write(*,*) 'Please input element number ', i, ' of variables x, y and z, respectively'
  read(*,*) x(i), y(i), z(i)
end do

在这三种情况下,readwrite中的第一个选项都是输入/输出单元,要么用数字(我在打开带有该标识符的文件后使用了10)表示,要么用星号*表示,这表示"标准输入/输出",在这种情况下是终端提示。第二个选项,我在所有情况下都使用了星号*,指的是格式。*是"给定"的格式。

相关内容

  • 没有找到相关文章

最新更新