Dersizle Forumları

Full Versiyon: Visual Fortran90
Şu anda tam olmayan bir veriyonu görüntülüyorsunuz. Tam versiyonu görmek için, buraya tıklayın
İkinci derece denklem Çözümü için Sabit Nokta Kuramı İçin...

Kod:
PROGRAM sabitnokta
IMPLICIT NONE
REAL::X,BETA,X0
INTEGER::N,I
WRITE(*,*)"KÖK İÇİN İLK TAHMİN DEĞERİNİ GİRİN"
READ(*,*)X0
WRITE(*,*)"HATA ÜST SINIRINI GİR"
READ(*,*)BETA
WRITE(*,*)"MAKSİMUM İTERASYON SAYISINI GİR"
READ(*,*)N
DO I=1,N
X=G(X0)
X0=X
WRITE(*,*)X
IF(ABS(X-X0).LE.BETA)THEN
WRITE(*,*)"KÖK=",X
STOP
END IF
X0=X
END DO
WRITE(*,*)"KÖK YAKINSAMIYOR"
STOP
CONTAINS
FUNCTION G(X)
REAL::G
REAL,INTENT(IN)::X
G=(X**2+2)/3
RETURN
END FUNCTION G
END PROGRAM sabitnokta



ikinci dereceden denklem çözümü için...

denklem: (x**2+2)/3 için yapılmıstır program G=(X**2+2)/3 Burayı değiştirerek programı farklı denklemler için kullanabilirsiniz...


Fortran 90 Bölümü yoktu Konu Uygun yere taşınabilir....
f(x)=3x**2-12x+11 fonksiyonu için newton raphson metodu na ait fortran90 programı...

Kod:
PROGRAM newtonraphson
IMPLICIT NONE
REAL::X,BETA,X0,FUS
INTEGER::N,I
WRITE(*,*)"Kök için ilk tahmin değerini giriniz..."
read(*,*)X0
WRITE(*,*)"Hata üst sınırını giriniz..."
READ(*,*)BETA
WRITE(*,*)"Maksimum iterasyon sayısını giriniz..."
READ(*,*)N
DO I=1,N
FUS=FT(X0)
IF(FUS==0)THEN
WRITE(*,*)"Türev Süreksiz..."
STOP
ELSE
X=X0-F(X0)/FUS
WRITE(*,*)"X=",X
IF(ABS(X-X0).LE.BETA)THEN
WRITE(*,*)"Kök=",X
STOP
END IF
END IF
X0=X
END DO
WRITE(*,*)"Yöntem yakınsamıyor..."
STOP
CONTAINS
FUNCTION F(X)
REAL::F
REAL,INTENT(IN)::X
F=X**3-6*X**2+11*X-6
RETURN
END FUNCTION F
FUNCTION FT(X)
REAL::FT
REAL,INTENT(IN)::X
FT=3*X**2-12*X+11
RETURN
END FUNCTION FT
END PROGRAM newtonraphson

Referans URL