* Önsöz
* Fortran'a Giriş
* Fortran'nın Temelleri
* Basit ve Formatlı Okuma/Yazma
* Temel Kütüphane Fonksiyonları
* Karşılaştırma Deyimleri
* Döngüler
* Alt Programlar I
* Alt Programlar II
* Diziler
* Dinamik Diziler
* Gösterici (Pointer) Kavramı
* Katarlar (Stringler)
* Yapısal Veri Tipleri
* Dosya Yönetimi
* Modül Kavramı
* Sayısal Tipler (KINDs)
* Bit Düzeyinde Çalışmak
* Kütüphane Fonksiyonları Listesi
* Yararlanılan Kaynaklar
* - - -
* Karmaşık Sayılar
* Tarih-Saat Fonksiyonları
* Rastgele Sayılar
* Katar - Sayı Dönüşümleri
* Komut Satırı İşlemleri
* Co-Array Fortran
* Derleme Seçenekleri
* Fortran ve C
* Sayılar Kuramı
* Analiz
* Lineer Cebir
Fortran 90/95 Derleyicileri
|
* Salford (silversoft FTN95)
* G95
* GFORTRAN
* programlama.com
* Fortran (wikipedia)
* fortran.gantep.edu.tr
* g95.org
* Hot scripts
* E-posta
|
|
Bölüm 1: Fortran'a Giriş
###################- (%95)
|
Giriş
Bu ilk derste, bir Fortran programın nasıl derlenip çalıştırılacağı ve Internet'te bulabileceğiz
derleyicilerden bahsedilecektir. En basit Fortran programının derleyip çalıştırdıktan sonra,
geriye kalan sadece Fortran Programlama Dili'nin kurallarını, yapısını ve deyimlerini öğrenmekten ibarettir.
1.1 Tarihçe
1953 yılının sonlarında, IBM'de çalışan John W. Backus ve ekibi assembly diline alternatif olarak
IBM 704 ana-bilgisayarında daha verimli çalıbilecek bir programlama dili önermiştir.
İlk taslak "The IBM Mathematical FORmula TRANSslating System" adlı altında 1954'de tamamlanıp
1957'de 32 deyim içeren ilk Fortran derleyicisi dağıtımı yapılmıştır.
Takip eden yıllarda her yeni sürümde gelişerek,
1958'de FORTRAN II ve FORTRAN III, 1961'de FORTRAN IV, 1966'da FORTRAN 66
1977'de FORTRAN 77 derleyicileri kullanıma sunulmuştur.
Uzun bir süre sonra, önemli değişiklikler yapılmış ve ANSI 1992 standardı ile tescillenmiş hali ile
Fortran 90 sürümü oluşturulmuştur. Hemen ardından, birkaç küçük değişiklikle Fortran 95 geliştirilmiştir.
Fortran ilk olarak 90/95 sürümlerinde nesne tabanlı özellik kazanmıştır. Son olarak nesneye dayalı (object-oriented)
ve genel programlama (generic-programming) özellikleri eklenerek Fortran 2003 standardı belirlenmiştir.
Yeni Fortran, 2008 yılında ki "Co-Array Fortran" özelliği ile paralel işlem (parallel processing) yeteneği kazanmıştır.
Derslerimzde ağırlıklı olarak Fortran 90 konu edilecektir. Yer yer Fortran 95/2003 yenilikleri de işlenecektir.
1.2 Neden Fortran?
Fortan Programlama Dili'ni tercihli kılan önemli nedenler aşağıda listelenmiştir:
- Fortran, sayısal hesaplamada güçlü ve yeterince esnek bir dildir.
- Fortran, tanımlayıcı adları küçük-harf büyük-harf ayrımı yapmaz (case insensitive).
Yani Tablo veya tablo veya TABLO değişken adları aynı değişkeni temsil eder.
- Fortran, basit bir yapısı olduğu için, programlama giriş için iyi bir dildir.
- Fortran, farklı platformlada derleyicilere sahiptir.
- Fortran, özel veri tipi tanımlamasına izin verir.
- Fortran, taşınabilir bir dildir.
- Fortran, diğer dillerde olamayan, bazı esnek kütüphane fonksiyonlarına sahiptir.
- Fortran, yapısal bir dildir.
- Fortran, sayısal hesaplamada C/C++, Java ve görsel programlama dillerinden daha güçlü ve hızlıdır.
1.3 İlk Fortran Programı
Program 1.1 de verilen Fortran programı yarıçapı girilen bir çemberin çevresini ve alanını hesaplar.
Satır başlarına yerleştirilen 1:, 2: 3: ... rakamlarının yazılmasına gerek yoktur.
Bu rakamlar sadece daha sonra program ile ilgili açıklama yapılırken, ilgili
satırda bulunan kodlar izah edilirken kullanılacaktır.
Bu programın bilgisayarda ilk.f95 adı ile kaydedilmiştir.
Program 1.1: Bir çemberin alanını ve çevresini hesaplar
01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
|
! ilk.f95: ilk Fortran 95 programı
! Bir çemberin alanını ve çevresini hesaplar
PROGRAM Cember
IMPLICIT NONE
REAL :: R, Alan, Cevre
REAL, PARAMETER :: PI = 3.141593
PRINT *,"Cemberin yaricapini girin: "
READ *,R
Alan = Pi * R**2
Cevre = 2 * Pi *R
PRINT *,"Alan = ",Alan
PRINT *,"Cevre = ",Cevre
END PROGRAM |
- ! ilk.f95: ilk Fortran 95 programı
- Programda, 1. ve 2. satırda ! sembolleri ile başlanmıştır.
Bu sembolün kullanılması zorunlu değildir. Ancak, !'den sonra yazılan herhangi bir metin, işlem vb. satırlar,
derleyici tarafından işlenmez (değerlendirilmez). Yani ! açıklama operatörüdür.
NOT
Açıklama operatörü olarak Fortran 77 'de C sembolü kullanılmaktaydı.
C Bu satırlar derleyici tarafından
C değerlendirilmez. Ayrıca programın Fortran 77
C çalışma hızını da değiştirmez.
! Bu satırlar derleyici tarafından
! değerlendirilmez. Ayrıca programın Fortran 90/95/2003
! çalışma hızını da değiştirmez.
|
- PROGRAM
- deyimi ana programın başladığnı gösterir. Programın adı Cember olarak verilmiş.
- IMPLICIT NONE
- deyimi program içinde kullanılacak değişken ve sabitlerin hepsini tanımlamaya zorlar. Aksi halde, ilk harfi
I,J,K,L,M,N ile başlayan değişkenler tamsayı diğerleri ise gerçel sayı kabul edilir.
- REAL :: R, Alan, Cevre
- Program içersinde kullanılan R, Alan ve Cevre değişkenlerinin veri tipi gerçel sayı tipi (real) olarak bildirimiştir.
- PARAMETER
- Program çalıştığı sürece içeriği değişmeyecek olan sabitlerin bildirimi için kullanılan bir deyimdir.
- PRINT
- Ekrana sabit veya değişkenleri yazdırmak için kullanılır.
- READ
- Klavyeden veri okumak için kullanılan bir deyimdir.
- * ve **
- * çarpma işlemi için, ** kuvvet alma işlemi için kullanılan aritmetik operatörlerdir.
- END PROGRAM
- Ana programın bittiği yeri işaret eder.
1.4 Programın Derlenmesi ve Çalıştırılması
Fortran programları veya kaynak kodları (source code) uzantısı .f, .f90 veya .f95 olan dosyalarda saklanır.
Kaynak kod, bir Fortran derleyicisi (Fortran compiler) ile nesne koduna (object code) daha sonra uygun bir bağlayıcı
(linker) program ile işletim sistemininde çalıştırılabilen (executable) bir koda dönüştürülür. Derleme işlemi ayrıntılı olarak
Bölüm xx'de anlatılmıştır.
Ücretsiz (FTN95, G95, GFORTRAN gibi) Fortran derleyicileri
Bölüm: Derleyiciler kısmında anlatılmıştır.
Burada g95 ile derleme ve çalıştırma adımları gösterilmiştir.
ilk.f95 adlı dosya c:\users\bingul\desktop\fortran90 adlı disiznde bulunduğu varsayılırsa,
g95 ile derleme ve çalıştırma işlemleri (bir DOS penceresi açıldıktan sonra) aşağıdaki gibi yapılılır:
1.5 Kod Yazımı için Tavsiyeler
Aşağıdaki kurallar genel olarak uzman Fortran 90 programcıları tarafından tercih edilir.
- Program açıklamalarını ve döküman hazırlama işini program yazıldıkça yapın! Bu unutulmaması gereken çok önemli husustur.
- IMPLICIT NONE deyimi program başında mutlaka kullanılmalıdır.
- Fortran kodların büyük harf küçük harf ayrımı yapmasa da, anahtar kelimeler (PROGRAM, PRINT, READ, PARAMETER, ...) büyük
harflerle yazılır.
- Tanımlayıcıların (değişken, sabit, fonksiyon, ... adları) ilk harfi büyük sonrakiler küçük olamlıdır. Örneğin:
Sicaklik
Asal
Son_Alinan_Bit
Isik_Hizi
- Her alt yapıya girerken birkaç boşluk veya TAB tuşunu kullanın. Bu okunabilirliği arttıracaktır. Örneğin:
PROGRAM Ortalama
!-------------------------------------------------
! 10 tamsayının ortlamasını hesaplar.
!-------------------------------------------------
IMPLICIT NONE
INTEGER :: I, X, Toplam = 0.0
REAL :: Ort
DO I = 1, 10
READ *,X ! sayıları oku
Toplam = Toplam + X ! toplamını hesapla
END DO
Ort = Toplam / 10.0
PRINT *, "Ortalama = ",Ort
END PROGRAM Ortalama
|