У меня есть текстовый файл со следующим форматом (11 столбцов и 8 строк)место несоответствие в ссылке на массив при чтении данных из таблицы
Name Chris Kyle Peter Luke Sally (...)
age xxxx xxxx xxxx xxxx xxxx
height xxxx xxxx xxxx xxxx
weight xxxx xxxx xxxx xxxx
class xxxx xxxx xxxx xxxx
В первой колонке (Chris) имеет только данные в первой строке ,
Мне нужно создать программу, чтобы прочитать эту таблицу, это то, что я до сих пор, но я не могу заставить его работать ...
program readtable
implicit none
integer :: i, j, num_col, num_row
double precision, dimension (2) :: a
character(14), dimension (1) :: variable
num_col = 11
num_row = 8
open(100,file='SSL.dat',status='old')
do j=1, num_row
read(100,*) variable(j), (a(i,j), i=1,num_col)
print*, variable(j), a(i,j)
end do
end program
Когда я запускаю этот кусок кода я получаю несоответствие ранга.
Я хочу прочитать данные в этой таблице, чтобы затем я мог присвоить данные конкретным переменным. Например, если я хочу кое-что сделать с кайлом и Петром, я знаю, что для Кайла а (:, 2) и для Питера а (:, 3)
Вот ошибка, которую я получаю при компиляции с gfortran as 90 код Fortran
read(100,*) variable(j), (a(i,j),i=1,num_col))
1
Error: Rank mismatch in array reference at (1) (2/1)
Пожалуйста, сообщите нам точные сообщения об ошибках, которые вы получаете, и команду, которая их вызывает. –
Скопируйте его в виде текста. Он должен быть доступен для других людей. Вот почему вы не можете поставить изображение прямо в вопрос. Я не буду редактировать его, чтобы сделать изображение видимым, хотя я могу. Вместо этого разместите здесь текст. См. Http://meta.stackoverflow.com/questions/303812/discourage-screenshots-of-code-and-or-errors –
Является ли эта версия ок? –