1

そのため、正方行列をそれ自体で乗算するコードを Fortran で書いています。しかし、乗算する必要がある行列はファイルにあり、プログラムに読み込む際に問題が発生しています。サンプルデータが次の形式になっているためだと思います。

3

101

010

101

最初の行はマトリックスの次元で、各行はマトリックス内の現在ですが、エントリ間にスペースはありません。だから私の質問は、それらの行を2次元配列に読み込むときにどのようにそれらの行を分割するのですか?

4

2 に答える 2

1

最初の数値 as を読み込み、Nそれを使用して次元 N x N の配列を割り当てます。次に、この配列の行を一度に読み取りますarray (i, 1:N))。i=1 から Nの場合です。使用するフォーマット。

于 2013-02-21T23:29:41.237 に答える
0

形式を使用して読み取る

read (1,*) n
allocate(A(n,n))
do i=1,n
  read (1,'(1000i1)'),A(i,:)
enddo

実際に必要以上に「i1」を宣言するかどうかは問題ではありません

于 2013-02-25T12:39:06.700 に答える