fortran 找出正方形矩阵两个对角线上最小的元素所在的位置
时间: 2024-02-22 19:57:52 浏览: 17
以下是Fortran代码,可以找出正方形矩阵两个对角线上最小的元素所在的位置:
```
program find_min_diagonal_element_position
implicit none
integer :: n, i, j, min_pos_i, min_pos_j
real :: a(100, 100), min_val
! 获取矩阵的大小
print *, "请输入矩阵的大小:"
read *, n
! 获取矩阵的元素
print *, "请输入矩阵的元素:"
do i = 1, n
do j = 1, n
read *, a(i, j)
end do
end do
! 找出第一条对角线上最小的元素
min_val = a(1, 1)
min_pos_i = 1
min_pos_j = 1
do i = 2, n
if (a(i, i) < min_val) then
min_val = a(i, i)
min_pos_i = i
min_pos_j = i
end if
end do
! 找出第二条对角线上最小的元素
do i = 1, n
j = n - i + 1
if (a(i, j) < min_val) then
min_val = a(i, j)
min_pos_i = i
min_pos_j = j
end if
end do
! 输出结果
print *, "两个对角线上最小的元素为:", min_val
print *, "最小元素所在的位置为:", min_pos_i, min_pos_j
end program find_min_diagonal_element_position
```
这个代码中,我们首先获取矩阵的大小和元素,然后分别找出第一条和第二条对角线上最小的元素,最后输出结果。注意,这个代码中假设矩阵大小不超过100,如果需要处理更大的矩阵,需要修改代码中的数组大小。