Download - Fortran PROGRAMLAMA DİLİ
Fortran PROGRAMLAMA DİLİ
Programlama Dili ile ilgili Uygulamalarda Fiz172 Bilgisayara Giriş II dersinin PROGRAMLAMAYA
GİRİŞ VE ALGORİTMA OLUŞTURULMASI
bölümünde çözülmüş olan örneklerden yararlanılacaktır.
Bu nedenle ders materyallerinin yanınızda bulunması önem arz etmektedir.
FORTRAN’ DA BİLGİ TÜRLERİ (1)
SAYISAL BİLGİLER geçerli örnek geçersiz örnek
tamsayı 0-9 arasındaki sayılar +, - işareti içeriri
-175 +99 1998
12.75 1E05
tek duyarlı gerçel sayı
0-9 arasındaki sayılar ‘+’, ‘-‘ işareti, ‘.’ içeriri ve ‘E’ içerebili duyarlılığı . dan sonra 7 basamaktır
-1.74 0.7E-05
2.956E02
12 1.54E2.5
1.123456789 çift duyarlı gerçel sayı
0-9 arasındaki sayılar ‘+’, ‘-‘ işareti, ‘.’ içeriri ve ‘D’ içerebili duyarlılığı . dan sonra 16 basamaktır
1.56 1.6D06 -15.634
116 1.E07
14.6D3.7 karmaşık sayı a+ib≡(a,b) mat fortran
0-9 arasındaki sayılar ‘+’, ‘-‘ işareti, ‘.’ içeriri ‘E veya D’ içerebili
(3.7,5.) (.7,-2.E03)
(6.3,0.)
3.6,9.5 (3,-15.9)
(5.)
FORTRAN’ DA BİLGİ TÜRLERİ (2)
MANTIKSAL BİLGİLER Karar verme sırasında kullanılan bilgi türleridir.
.TRUE. .FALSE.
ALFASAYISAL BİLGİLER
İsim,şehir, ad soyadı gibi bilgi türlerini tanımlamak için kullanılır ve tırnak işareti içinde gösterilir. Türkçe karakter
dışında her karakter kullanılabilir.
‘ayse’ 4Hayse
‘2009310301001’ 13H2009310301001
FORTRAN’ DA TÜR TANIMLAMA DEYİMLERİ (1)
Değişken Türü Deyimin genel biçimi ÖRNEK tamsayı integer deq1, deg2, …….. INTEGER sayi, top, tbs(100) tek duyarlı gerçel sayı
real deq1, deg2, …….. REAL maas, kalan
çift duyarlı gerçel sayı
double precision deq1, deg2, …….. DOUBLE PRECISION A, bolum
karmaşık sayı a+ib≡(a,b) mat fortran
compex deq1, deg2, …….. COMPLEX min, max, karma
alfasayısal character *n deq1, deg2, …….. character ad, soyadı, no(100)
mantıksal logical deq1, deg2, …….. logical dogru, yanlis, denetle(100) DIMENSION: dizi değişkenlerini tanımlamak için kullanılan FORTRAN DEYİMİDİR. GENEL FORMU integer real double precision dimension complex deg1(büyüklük1),deg2( büyüklük2),……. character logical
örnekDIMENSION: dizi değişkenlerini tanımlamak için kullanılan FORTRAN DEYİMİDİR. GENEL FORMU integer real double precision dimension complex deg1(büyüklük1),deg2( büyüklük2),……. character logical
örnek
FORTRAN’ DA TÜR TANIMLAMA DEYİMLERİ (2)
IMPLICIT deyimi: belirtilen harf veya harf aralığında tanımlanan değişkenlerin aynı türde değişken olarak belirlenmesinde kullanılır. Böylece örneğin a, b, c harflerinden herhangi biri ile başlayan tüm değişkenler mantıksal değişken olsun diyebiliriz. GENEL FORMU INTEGER REAL IMPLICIT DOUBLE PRECISION ( harf listesi veya aralığı) COMPLEX CHARACTER LOGICAL ÖRNEKLER implicit integer (a, r, o) implicit real (A-L), logical B
IMPLICIT deyimi: belirtilen harf veya harf aralığında tanımlanan değişkenlerin aynı türde değişken olarak belirlenmesinde kullanılır. Böylece örneğin a, b, c harflerinden herhangi biri ile başlayan tüm değişkenler mantıksal değişken olsun diyebiliriz. GENEL FORMU INTEGER REAL IMPLICIT DOUBLE PRECISION ( harf listesi veya aralığı) COMPLEX CHARACTER LOGICAL ÖRNEKLER implicit integer (a, r, o) implicit real (A-L), logical B
FORTRAN’ DA İŞLEMCİLER
AKTARMA DEYİMİ: “ = “ solda bulunan değişkene sağdaki değişkenin veya işlemin sonucunda elde edilen değeri aktarır.
Örnek: “=“ deyiminden önce sayac ın değeri 5 ise
sayac=sayac+1
ilşeminden sonra sayac 6 değerini alır.
değişken1 = değişken2 veya işlem sonucu
aktarıyor
“=“ FORTRAN’ da eşitlik anlamında kullanılmamaktadır.
FORTRAN KOMUTLARI (1)
FORTRAN KOMUTLARI (2)
KONTROL DEYİMLERİ gotoProgram akışının yönünü değiştirmek söz konusu olduğunda kullanılan FORTRAN DEYİMLERİDİR
KONTROL DEYİMLERİ if
IF :mantıksal veya aritmetiksel bir işlemin sonucuna bağlı olarak programın akışına karar vermek için kullanılan FORTRAN DEYİMİ.
GENEL FORMU (a) mantıksal if if (koşul ) yalnızca bir fortran deyimi- read/write/aritmetik işlem/aktarm/goto
(b) aritmetik if if (aritmetik işlem/değişken ) N1, S1 , P1 işlem sonucu <0 =0 >0 (c )blok if
if (koşul)then if (koşul)then
---------------- ---------------- ---------------- ---------------- endif else ---------------- ---------------- ---------------- ---------------- endif ---------------- ----------------
evet
hayır
hayır
evet
evet
hayır
hayır
evet
KONTROL DEYİMLERİ örnek(1) – if Aşağıda fortran kodu blok if in nasıl çalıştığını gösteren örnek programı inceleyelim.
Örnek Fortean77, Cezmi Orkun, 1994 kitabında verilen akıştan yararlanılarak tasarlanmıştır.
KONTROL DEYİMLERİ örnek(2) - ifAşağıda fortran kodu blok if in nasıl çalıştığını gösteren örnek programı inceleyelim.
Örnek Fortean77, Cezmi Orkun, 1994 kitabında verilen akıştan yararlanılarak tasarlanmıştır.
KONTROL DEYİMLERİ do-continue/enddo
do-continue/ do-enddo: özellikle herhangi bir işlemin pek çok kere tekrarlanmasının söz konusu olduğu durumlarda kullanılan FORTRAN DEYİMİ.
GENEL FORMU (a) do- continue do satır no döngü değişkeni=ilk değer,son değer, artış son değer sayısı kadar tekrarlanan işlem satır no continue
(b) do- enddo do döngü değişkeni=ilk değer,son değer, artış son değer sayısı kadar tekrarlanan işlem enddo
KONTROL DEYİMLERİ örnek---do-continue/enddodo-continue/ do-enddo: özellikle herhangi bir işlemin pek çok kere tekrarlanmasının söz konusu
olduğu durumlarda kullanılan FORTRAN DEYİMİ.
KONTROL DEYİMLERİ hesaplanmış goto
hesaplanmış goto: bir değişkenin almış olduğu değere bağlı olarak birden fazla farklı satır numaralarına programın akışı söz konusu olduğunda kullanılan FORTRAN DEYİMİ.
GENEL FORMU goto (Sno1, Sno2, Sno3,…,SnoN) değişken
örnek
KONTROL DEYİMLERİ –örnek hesaplanmış goto (1)Aşağıda menülü bir programın hesaplanmış goto deyimi kullanılarak nasıl hazırlandığı gösterilmiştir. Bu
programda seçiminizin aldığı 1, 2, 3, 4 değerine göre ANA MENÜ de belirtilen işlemler yapılmaktadır.
KONTROL DEYİMLERİ –örnek hesaplanmış goto (2)
ALT PROGRAMLAR function
function altprogram: ana programın parçası gibi davranan altprogramdır.
GENEL FORMU
integer real double precision complex FUNCTION adı(parametre listesi) character ----------------------------- logical ----------------------------- ----------------------------- RETURN END
Bir ya da daha fazla değişkene bağlı olarak programın akışı sırasında birden fazla tekrarlanan ve başlangıç-bitiş sınırları da kesin olacak şekilde ayrıca tanımlanabilen işlemlerden oluşan
program parçasına ALTPROGRAM denir.
Bir veya birden fazla veri FUNCTION programına gidebilir. Ancak dönüşünde sadece bir değer ana programa döner. ANA programda verilen parametrelerin türü ve sayısı function daki ile aynı sayıda
ve aynı türde olmalıdır.
ÖrnekÖrnek
ALT PROGRAMLAR örnek(1)-function
Programın hazırlanmasında Fortean77, Cezmi Orkun, 1994 kitabından yararlanılmıştır.
ALT PROGRAMLAR örnek(2)-functionAşağıda verilen programı ve çalıştırıldığında elde edilen çıktıyı inceleyerek ne iş yaptığını bulabilir
misiniz? (çözüm için sayfa ….. ya bakınız)
ALT PROGRAMLAR subroutinesubroutine altprogram: kendisi de başlı başına bir program olan ve aynı zamanda ihtiyaca bağlı
olarak bir ana program tarafında veya bir başka alt program tarafından kullanılan bir altprogramdır.
GENEL FORMU SUBROUTINE adı(giren-çıkan parametre listesi) ----------------------------- ----------------------------- ----------------------------- RETURN END
İstenilen sayıda veri SUBROUTINE programına gelebilir ve ana programa dönebilir. Giren ve çıkan verilerin sayısı ve türlerinin özdeş olması gereklidir.
ÖrnekÖrnek
ALT PROGRAMLAR örnek(1)-subroutineAşağıdaki programı alt program ile ana program arasında geçen veri alış verişinin nasıl
gerçekleştiğini anlamaya örnek bir program ve ekran çıktısı.
Örnek Fortean77, Cezmi Orkun, 1994 kitabında verilen akıştan yararlanılarak tasarlanmıştır.
ALT PROGRAMLAR örnek(2)-subroutineAşağıdaki programı alt program ile ana program arasında geçen veri alış verişinin nasıl
gerçekleştiğini anlamaya örnek bir program ve ekran çıktısı.
Örnek Fortean77, Cezmi Orkun, 1994 kitabında verilen akıştan yararlanılarak tasarlanmıştır.
ALT PROGRAMLAR örnek(2)-subroutine
ALT PROGRAMLAR örnek(2)-subroutine
DOSYA İŞLEMLERİ Bir fortran programına veri giriş ve çıkışının bilgisayar ortamındaki bir dosyadan veya dosyaya
yapılabilmesi için dosyanın tanımlanması gerekir. Bu işlemlerin bütününe DOSYA İŞLEMLERİ denir.
GENEL FORMU OPEN ( UNIT= dosya no, FILE= dosya adı, STATUS= , FORM= )
OPEN: dosya açmak için kullanılan FORTRAN DEYİMİDİR
‘new’
‘old’
‘formatted’
‘unformatted’
örnek
GENEL FORMU CLOSE (dosya no)
CLOSE: dosya kapatmak için kullanılan FORTRAN DEYİMİDİR
ÖRNEK PROGRAMLAR Bu kesimde amaç verilen örnek programların ne iş yaptıklarını incelemek, program analizini yapmaktır.
ÖRNEK PROGRAMLAR Bu kesimde amaç verilen örnek programların ne iş yaptıklarını incelemek, program analizi yapmaktır.
ÖRNEK PROGRAMLAR Bu kesimde amaç verilen örnek programların ne iş yaptıklarını incelemek, program analizi yapmaktır.
ÖRNEK PROGRAMLAR Bu kesimde amaç verilen örnek programların ne iş yaptıklarını incelemek, program analizi yapmaktır.