Fortran: Extrair dados de uma string e armazenar em uma variável inteira

1. Fortran: Extrair dados de uma string e armazenar em uma variável inteira

Thamires Silva
412203946

(usa Outra)

Enviado em 09/06/2021 - 19:57h

Olá.

Estou fazendo um programa que lê um arquivo input.dat, e na terceira linha desse arquivo tem 2 dados que eu preciso armazená-los como dois números inteiros. A linha é: ZONE I= 93 J= 15 DATAPACKING=POINT.

Eu preciso armazenar IMAX = 93 e JMAX=15.
O máximo que consegui foi fazer com que o programa leia a terceira linha do arquivo e armazene ela como um character, mas não consigo extrair os valores 93 e 15 e armazená-los separadamente. Segue o início do arquivo completo:

TITLE = "PROJECT "
VARIABLES = "X", "Y"
ZONE I= 93 J= 15 DATAPACKING=POINT
1.00000000E+00 -0.00000000E+00
9.78260870E-01 -4.25330813E-03
9.56521739E-01 -8.31758034E-03

O modo como escrevi o programa, ele retorna IMAX = 0:

implicit none

character(len=100) :: full_line
integer(4) :: i, ndata, stat, lskip, IMAX, JMAX
real, dimension(:), allocatable :: x, y

open (unit=10, file='mesh_parabolic.dat', status='old', action='read')
ndata=0

!Skip header
do lskip = 1,3
read(10,*)
end do

backspace(10)
if (full_line .eq. 'I=') then
read(full_line,*) IMAX
end if

print*, IMAX
stop


Agradeço a ajuda.