Input dati [fortran]
ciao a tutti
ho dei dati strutturati in questo modo
858,100858,19510101, 73, 0
858,100858,19510102, 84, 0
858,100858,19510103, 122, 0
858,100858,19510104, 116, 0
858,100858,19510105, 120, 0
858,100858,19510106, 115, 0
858,100858,19510107, 108, 0
858,100858,19510108, 105, 0
858,100858,19510109, 93, 0
858,100858,19510110, 128, 0
858,100858,19510111, 128, 0
858,100858,19510112, 110, 0
858,100858,19510113, 136, 0
eccetera.....
vorrei inserirli in una matrice N x 5
con il comando read però leggo solo la prima
colonna
per l'acquisizione ho scritto questo codice
dove sbaglio?
grazie
ho dei dati strutturati in questo modo
858,100858,19510101, 73, 0
858,100858,19510102, 84, 0
858,100858,19510103, 122, 0
858,100858,19510104, 116, 0
858,100858,19510105, 120, 0
858,100858,19510106, 115, 0
858,100858,19510107, 108, 0
858,100858,19510108, 105, 0
858,100858,19510109, 93, 0
858,100858,19510110, 128, 0
858,100858,19510111, 128, 0
858,100858,19510112, 110, 0
858,100858,19510113, 136, 0
eccetera.....
vorrei inserirli in una matrice N x 5
con il comando read però leggo solo la prima
colonna
per l'acquisizione ho scritto questo codice
program mediatemp implicit none !parameter(N=25000) integer, dimension(23000,2) :: br integer ::i,k,j open(1, FILE='br19512009.txt', STATUS='old') do i=1,1000 do j=1,6 read(1,*) br(i,j) enddo enddo do i=1,10 write(*,*) br(i,3) enddo close(1) end program mediatemp
dove sbaglio?
grazie
Risposte
Ho "quasi" risolto il problema
mi è bastato fare
do=1,n
read(1,*) br(i,1),br(i,2),br(i,3),br(i,4),br(i,5)
enddo
Vorrei migliorare la procedura di lettura perché
in genere non so da quante righe è composto il file.
c'è un modo per far leggere i dati finché il codice
non incontra una riga vuota nel file dei dati?
mi è bastato fare
do=1,n
read(1,*) br(i,1),br(i,2),br(i,3),br(i,4),br(i,5)
enddo
Vorrei migliorare la procedura di lettura perché
in genere non so da quante righe è composto il file.
c'è un modo per far leggere i dati finché il codice
non incontra una riga vuota nel file dei dati?