FuzzyLogic

Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Нужно считать строку целых чисел записанных в виде: n_1 n_2 .....n_k | Терпеть не могу работу со строками в фортране, если что вот готовая ерунда которую когда-то писал, по идее должно работать. Если числа вещественные, то соответственно поменять тип num и добавить точку в массив "правильных" знаков в index() Код: character(len=200) :: line integer :: ior, i, ind, prev, start, num open(1,file='input.txt') do read(1,'(A)',iostat=ior) line if (ior.ne.0) exit prev = 1 start = 1 line = adjustl(line) do i=1,len(line) ind = index('0123456789', line(i:i)) if (ind.eq.0 .and. prev.gt.0) then read(line(start:i-1), *) num print *, num else if (ind.gt.0 .and. prev.eq.0) then start = i end if prev = ind end do end do close(1) | |