PDA

View Full Version : help me in fortran90


ne_237
Aug3-11, 02:53 AM
Hi All
I have a problem in the work with Fortran90. I have a file that don't have any idea for read it. It consiste of number and character.For example it includes as below
1 15193r 8 9r 4 6 74r,...
I want to write these numbers in 2 columns. For example
1 15193
8 9
4 0
6 74
terms with r show the number of iteratin and number ( that after it dosen't exist term with r) shows that this number has no iteration. Please help me.

Thanks a lot.

uart
Aug3-11, 02:15 PM
Honestly Fortran is one of the worst languages for that type of problem. It would probably be quicker to do it in Python, even if you had to teach yourself the basics of Python first.

Do you have any other languages available?

ne_237
Aug3-11, 10:26 PM
Thanks Uart.But I had to solve this problem with Fortran90.

ne_237
Aug3-11, 11:25 PM
I have a problem in write arrays also.How I do write rows and columns in file as matrix.
For example I use this program:
do i=1,10
write(12,*)(x(i,j),j=1,20)
end do
but in file only 4columns are showed and 20columns are breaked.Can anyone help me?
Thanks a lot.

uart
Aug4-11, 02:27 AM
Hi ne 237

If the matrix only has 20 columns then try using to following

write(12,*) x(i,:)

If it's got more than 20 (but you only want to output the first 20) try

write(12,*) x(i,1:20)

ne_237
Aug4-11, 04:05 AM
Thanks a lot Uart for reply
But I want to the output will be as below:
1 2 2 3 2 3 4 3 5 3 5 3 6 4 5 8 9 45 65 14
...
...
...
that is 20columns (or more in other program)write in different rows.

uart
Aug4-11, 06:58 AM
Yeah that's how it works for me (you still need the outer for loop of course).

do i=1,10
write(12,*) x(i,:)
end do

I'm using the freeware gnu fortran compiler "g95" and the above code correctly writes the matrix, whole row per line, to an output text file.

ne_237
Aug5-11, 07:37 AM
Thank you very much.