如何用隐含的DO循环逐行写矩阵?矩阵、如何用、DO、逐行写

由网友(十字路口)分享简介:我的IDE是带有MinGW 9.2.0的代码块。我需要帮助在文本文件中逐行编写矩阵。这是我的简单代码:program matrixinteger :: i, j integer, dimension(2,2) :: a_matforall( i = 1 : 2, j = 1, 2 )a_mat(i,j) = i...

我的IDE是带有MinGW 9.2.0的代码块。

我需要帮助在文本文件中逐行编写矩阵。

30.python机器学习 推荐系统

这是我的简单代码:

program matrix
 
 integer :: i, j 
 integer, dimension(2,2) :: a_mat
 
 forall( i = 1 : 2, j = 1, 2 )
    
   a_mat(i,j) = i + j

 end forall 
 
 open( unit = 15, file = 'matrix_utput.txt', action = 'write' )
  
   write(15,'(*(i2.2,1x))') ( ( a_mat(i,j), j = 1, 2 ), i = 1, 2 )
 
 close( unit = 15 )

end program matrix
在我的.txt文件中,我获得了以下内容: 02 03 03 04 如何更改格式以获得此结果:

02 03

03 04

推荐答案

正常方法是逐行循环DO循环,如Write matrix with Fortran

所示

但也可以使用格式还原在隐式循环中执行此操作。

 write(15,'(2(i2.2,1x))') ( ( a_mat(i,j), j = 1, 2 ), i = 1, 2 )

基本上,括号前的数字必须是行长(列数)。如果您将*放在那里,它将消耗整个数组。这样,每次格式找到它的所有项目时,它都会打开一个新记录。

阅读全文

相关推荐

最新文章