Arama butonu
Bu konudaki kullanıcılar: 1 misafir
10
Cevap
2076
Tıklama
0
Öne Çıkarma
fortran 77
C
13 yıl
Teğmen
Konu Sahibi

Arkadaşlar, cok acil Fortran 77 de yazilmis, dosyadan sayıları okuyup, her 100 datada bir ortalama alıp, bu ortalamaları başka bir dosyaya yazacak bir fortran programı gerekiyor. Dizi kullanılarak yazılıcakmış. Yardımcı olabilecek birileri olursa cok sevinirim.



T
13 yıl
Binbaşı

sen yapabildiğin yere kadar yap takıldığın yerde yardımcı olan bulunur.


Bu mesaja 1 cevap geldi.
C
13 yıl
Teğmen
Konu Sahibi

PROGRAM ORTALAMA
IMPLICIT NONE
REAL (A,B,TA,TB,ORTA,ORTB)
open (1, file='input.xvg')
open (2, file='ortalama.txt')
do while (.not. eof(1))
TA=0.0
TB=0.0
do i = 1,100
read(1,*) A,B
TA=TA+A
TB=TB+B
end do
ortA=TA/100
ortB=TB/100
write(2,*) ortA,ortB
end do
end



bişeyler yaptım ama hata veriyor program hatam nerde görebilen varmı??????





< Bu mesaj bu kişi tarafından değiştirildi caglarr1905 -- 9 Aralık 2010; 15:01:41 >
Bu mesaja 1 cevap geldi.
I
13 yıl
Yüzbaşı

1'den 100'e kadar olan döngün var.
Eğer, bu arada 1.dosyada başka kayıt kalmazsa sorun olur
çünkü EOF koşulu gerçekleşmiştir.
Dosya-sonu denetimini (EOF), 1..100 döngüsünün içine almalısın.


Bu mesaja 1 cevap geldi.
C
13 yıl
Teğmen
Konu Sahibi

do i = 1,100 ün hemen arkasına mı eklenmeli?
baska bisey eklemem gerekiyor mu ?


Bu mesaja 1 cevap geldi.
I
13 yıl
Yüzbaşı

Dün gece forumda bir sorun vardı sanırım gönderemedim.

2. dosya yeni oluşturulacaksa (varolan bir dosya değilse) "status" sözcüğü içermeli.
Program bitmeden önce de dosyaları close ile kapatmalısın.

Fortran yazmayalı yıllar oldu.
Biraz google ile fortran77'ye bakındım. Umarım aşağıdaki kodlar doğrudur.
 
PROGRAM ORTALAMA
IMPLICIT NONE
REAL (A,B,TA,TB,ORTA,ORTB)
open (1, file='input.xvg')
open (2, file='ortalama.txt', status='NEW')

20 TA=0.0
TB=0.0
J=0
do i = 1,100
read(1,*) A,B
if EOF(1) goto 60
J=J+1
TA=TA+A
TB=TB+B
end do

ortA=TA/100
ortB=TB/100
write(2,*) ortA,ortB
goto 20
60
if (J.EQ.0) goto 80
ortA=TA/J
ortB=TB/J
write(2,*) ortA,ortB
80
close(1)
close(2)
end


Program, diskten 100'lük (çiftler halinde) sayılar okur.
Bunların ortalamasını alıp, bir çift olarak 2.dosyaya yazar.
Eğer 1.dosyada 100'ün katlarında veri yoksa, örn. 120 tane varsa,
kalan 20 için de ortalama hesabı yapılmalı.
Kalan veri sayısı için J değişkeni kullandım.


Bu mesaja 1 cevap geldi.
C
13 yıl
Teğmen
Konu Sahibi

cok tesekkürler, bu programın üzerinde bi kac degisiklik yaparak calistirdim.. saolun


Bu mesaja 1 cevap geldi.
C
13 yıl
Teğmen
Konu Sahibi

bir sorum daha olucak, windows force 3 compiler dan f77 compiler a nasıl gecebilirim ??


Bu mesaja 2 cevap geldi.
I
13 yıl
Yüzbaşı

Fortran77, bir dil standardıdır. Bu standarda uygun birçok derleyici var (C ve Pascal'da olduğu gibi).
Bende fortran derleyicisi yok. İnternetten bulabildiğim birkaç kaynaktan
anladığım kadarıyla Force 3 Beta kullanıyorsun.
Bu bir arayüz (ide) ve arka planda da fortran77 derleyicisi var.
Yazdığın program dosyasını (.f uzantılı) bir başka F77 derleyicisi ile çalıştırabilmen lazım (windows için).
Gerekiyorsa, diğer derleyici .f uzantısı kabul etmiyorsa, dosyanın uzantısını değiştirirsin.

Bu arada, hala fortran için çalışmalar yapılması ilginç geldi.
(özellikle ilk standart fortran'ın 1960'larda ortaya çıktığı düşünülünce.)
Demek ki "modası geçti" deyip bir kenara atmıyorlar



B
13 yıl
Er

quote:

Orijinalden alıntı: caglarr1905

bir sorum daha olucak, windows force 3 compiler dan f77 compiler a nasıl gecebilirim ??


http://gcc.gnu.org/fortran/ fortran derleyici.



K
9 yıl
Er

Arkadaslar cok acil fortran force 2.0 da yazilacakbu sorunun cvbi lazimsoru : 0aninda 2 bakteri var bu bakteriler her 5 dk da bir ikiye bolunup cogaliyo 60.dk kac tane bakteri olacagini hesaplayan bir fortran programi yaziniz. Soru bu cvbini bilen varsa acil yardim ederse sevinirim yoksa okulum bir yil uzayacak



< Bu ileti mobil sürüm kullanılarak atıldı >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.