由网友(十字路口)分享简介:我的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...![30.python机器学习 推荐系统](https://p.xsw88.cn/allimgs/daicuo/20230903/4023.png)
我的IDE是带有MinGW 9.2.0的代码块。
我需要帮助在文本文件中逐行编写矩阵。
![30.python机器学习 推荐系统](https://p.xsw88.cn/allimgs/daicuo/20230903/4023.png)
这是我的简单代码:
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 )
基本上,括号前的数字必须是行长(列数)。如果您将*
放在那里,它将消耗整个数组。这样,每次格式找到它的所有项目时,它都会打开一个新记录。
相关推荐
最新文章