Bahasa Pemrograman : FORTRAN

(1)

Bahasa Pemrograman : FORTRAN

FORTRAN

1.

Sejarah FORTRAN

FORTRAN merupakan salah satu bahasa pemrograman tingkat tinggi (high level language) yang berorientasi kepada suatu masalah tertentu, khususnya masalah yang berkaitan dengan bidang matematika dan teknik. FORTRAN merupakan bahasa tingkat tinggi tertua dan yang pertama. Sebelum hadir FORTRAN, bila seseorang akan memprogram komputer, maka ia harrus menggunakan bahasa mesin yang rumit.

Pada tahun 1950, seorang ahli dari pabrik komputer IBM (International Bussiness Machine) bernama John Backus berhasil mengmbangkan suatu bahasa computer yang mudah dipakai, bahkan oleh orang yang awam computer sekalipun. Bahasa itu disebutnya FORTRAN (Formula Translation). Bahasa ini cukup mudah dipahami dan efektif untuk digunakan.

Sehingga, bukan hal yang aneh apabila dengan cepat, bahasa ini berkembang di masyarakat. Bahasa FORTRAN ditujukan terutama sebagai aplikasi di bidang sains dan teknik. Namun saat ini, bahasa FORTRAN harus bersaing dengan bahasa-bahasa pemrograman lain secara

kompetitif.

Menggunakan bahasa FORTRAN tidak terlalu sulit, karena para ahli telah menyusun kamus dalam FORTRAN untuk menterjemahkan bahasa FORTRAN ke dalam bahasa mesin. Nama lain kamus ini adalah ”Compiler”. Tentang generasi- generasi bahasa FORTRAN sampai sejauh ini dikenal FORTRAN, FORTRAN II, FORTRAN III, dan FORTRAN IV. Keistimewaan ada pada FORTRAN IV karena ditunjang oleh kemajuan dalam hal perangkat keras yang

berkembang pada masa itu. Bahasa FORTRAN memang cukup ampuh menangani permasalah dan pemenuhan kebutuhan di bidang bisnis dan sains.

FORTRAN untuk pertama kalinya digunakan pada tahun 1954 oleh Programmer Research Group IBM pada komputer IBM 704. Tidak membutuhkan waktu lama untuk

pengembangan bahasa FORTRAN sampai pada edisi yang paling akhir yaitu FORTRAN 77 dan Waterloo FORTRAN.


(2)

1. Fortran I

F o r t r a n v e r s i p e r t a m a y a n g d i r i l i s u n t u k I B M 7 0 4 m e m i l i k i p a l i n g t i d a k 3 2 pernyataan,

2. Fortran II

Fortran II milik IBM muncul pada tahun 1958. Peningkatan yang dimiliki versi IIini daripada versi sebelumnya adalah mendukung pemrograman prosedural, yangmana memberikan kesempatan kepada pengguna untuk menuliskan perintah – perintah yang mengandung fungsi dan subroutine. Enam pernyataan baru dirilis pada versi terbaru ini,

3. Fortran III

Walaupun IBM terus mengembangkan Fortran selama tahun 1958, namun Fortranversi III ini tidak sampai dirilis resmi. Sama seperti Fortran 704 (Fortran I) danFortran II, Fortran III pun memiliki kelemahan, yaitu ada beberapa feature yangharus

mengikuti mesin induk nya. Sehingga kode – kode yang dituliskan tidak dapat dipindahkan begitu saja antara mesin satu dengan yang lainnya.

4. Fortran IV

Sejak tahun 1961, IBM pun memulai pengembangan Versi terbaru, yaitu FortranI V s e b a g a i a k i b a t p e r m i n t a a n k o n s u m e n . K e k u r a n g a n F o r t r a n v e r s i –

v e r s i sebelumnya, yaitu feature yang memiliki ketergantungan terhadap mesin induk pun dihilangkan.

5. Fortran 66

Barangkali perkembangan Fortran yang paling signifikan adalah ketika Asosiasi S t a n d a r A m e r i k a ( A N S I ) 1 m e m u t u s k a n m e m b e n t u k k o m i t e u n t u k mengembangkan Fortran Standar Baku Amerika (American Standard Fortran).Pada bulan Maret tahun 1966, dua standar ini pun dikeluarkan. Pertama adalahF O R T R A N s e d a n g y a n g k e d u a a d a l a h F O R T R A N D a s a r ( Basic FORTRAN).Fortran standar pertama akhirnya dikenal dengan Fortran 66

6. Fortran 77

S e t e l a h d i r i l i s n y a F o r t r a n s t a n d a r v e r s i 6 6 , p a r a p a b r i k a n p e m b u a t c o m p i l e r Fortran mengumumkan adanya beberapa kemampuan Fortran standar yang belumd i k e t a h u i s e b e l u m n y a . H a l i n i m e m b u a t A N S I p a d a t a h u n 1 9 6 9


(3)

b e k e r j a k e r a s memperbaiki Fortran standar yang dirilis pada tahun 1966 itu.

Rancangan akhir revisi Fortran versi 66 sebenarnya telah diluncurkan pada tahun 1977, namun barudiakui sebagai standar baru Fortran pada bulan April tahun 1978. Standar

baruF o r t r a n y a n g d i k e n a l j u g a d e n g a n F o r t r a n 7 7 , m e m i l i k i b e b e r a p a t a m b a h a n k e m a m p u a n y a n g s a n g a t p e n t i n g s e b a g a i s a l a h s a t u p e m e c a h a n k e k u r a n g a n Fortran 66.

7. Fortran 90

Versi pengganti Fortran 77 yang paling lambat peluncurannya adalah Fortran versi90. Fortran versi 90 baru diluncurkan sebagai Standar ANSI pada tahun

1992.P e r u b a h a n y a n g m e n d a s a r p a d a v e r s i i n i t e l a h

m e n a m b a h k a n b e b e r a p a keunggulan yang mencerminkan perubahan penting dalam bahasa pemrograman praktis yang mana telah berevolusi sejak standar tahun 1978.

8. Fortran 95

Fortran 95 hanyalah merupakan versi Fortran terbaru dengan mengalami

sedikit perbaikan kecil dari Fortran versi sebelumnya. Walaupun demikian, tetap ada beberapa kemampuan tambahan jika dibandingkan Fortran 90.

3.

Kelebihan dan Kelemahan FORTRAN.

Kelebihan Bahasa Pemrograman FORTRAN adalah sebagai berikut :

· FORTRAN bisa menangani ekspresi matemática dan logika yang kompleks. Pernyataanya

cukup pendek dan sederhana.

· Program FORTRAN yang dikembangkan pada satu tipe komputer bisa dengan mudah

dimodifikasi agar bisa bekerja pada tipe yang lain.

Kekurangan Bahasa Pemrograman FORTRAN adalah sebagai berikut :

· FORTRAN tidak menangani operasi input dan output pada peralatan penyimpanan seefisien

bahasa lain yang levelnya lebih tinggi


(4)

· Tidak bisa dibaca atau dipahami semudah bahasa level tinggi yang

Terdapat beberapa hal yang menjadikan bahasa pemrograman Fortran lebih unggul dibandingkan dengan bahasa pemrograman lain yaitu,

1. proses eksekusi / kompilasi program yang cukup cepat.

2. metode penulisan program sangat fleksibel, setiap bagian blok program dapat ditulis secara tidak

berurutan.

3. mendukung teknik kompilasi secara menyeluruh (all compilation), maksudnya misalkan kita

memiliki 5 buah file Fortran yang saling berhubungan maka semua file tersebut dapat langsung dikompilasi semua dalam satu perintah dengan bantuan makefile yang kita buat, bagian ini akan dijelaskan pada bab yang akan datang.

4. memilki kompilator (compiler) yang cukup banyak berkembang.

4.

Tipe Data FORTRAN

Tipe-tipe data yang terdapat dalam FORTRAN antara lain:

a) Variable integer

Variabel integer adalah variable yang digunakan untuk menyimpan nilai numerik bulat. Bila tidak didefinisikan, maka variabel integer harus ditunjukkan oleh nama variabelnya yang diawali dengan huruf I, J, K , L, M,atau N.

Contoh :

INTEGER ISI ISI = 275

b) Variable real preposisi ganda

Adalah variable yang dibunakan untuk menyimpan nilai numeric pecahansebesar 8 byte. Nama variabelnya harus diawali dengan huruf selain I, J, K, L,M, dan N

Contoh :


(5)

NILAI = 275 Atau

DOUBLE PRECISION NILAI NILAI = 75

c) Variable real preposisi tunggal

Adalah variable yang digunakan untuk menyimpan nilai numerik pecahan sebesar 4 byte. Bila tidak didefinisikan, maka variabel integer harus ditunjukkan oleh nama variabelnya yang diawali dengan huruf I, J, K , L, M, atau N.

Contoh : REAL NILAI NILAI = 99

d) Variable karakter

Adalah variable yang digunakan untuk menyimpan nilai karakter. Default dari

variabel ini adalah 4 byte dan dapat didefinisikan menjadi 1 byte atau n byte (maksimum 127 byte). Nama dari variabel karakter bebas ini bebas diawali dengan huruf apapun.

e) Variable logika

Adalah variable yang digunakan untuk menyimpan nilai logika. Default dari variabel ini adalah 4 byte dan dapat didefinisikan menjadi 2 byte

Contoh:


(6)

5.

Statment Input Output pada FORTRAN

A.READ

Dipergunakan untuk membaca data dari suatu media input. BU:

READ(I, L) var1, var2,… Dengan:

I : Nomor alat input, yaitu nomor yang menyatakan suatu alat input, misal: keyboard, disk dll. L : label FORMAT

Var1, var2 : Nama varabel yang datanay dibaca. Contoh :

READ (*,11)A,B,I FORMAT (2F10.2,I5)

Keterangan:

Harga-harga A, B , I dibaca memlalui alat input yang bertanda * (standar input) biasanya keyboard, dengan tata letaknya sesuai FORMAT yang berlabel 11 yaitu:

A dengan FORMAT F10.2 B dengan FORNAT F10.2 I dengan FORMAT I5

B.WRITE

Dipergunakan untuk menuliskan isi suatu variabel pada suatu media output. BU:

WRITE(I,L) var1, var2 … Dengan:

I : Nomor alat output, yaitu nomor yang menyatakan suatu alat output, misal monitor, printer,disk

L : Label FORMAT

Var1, var2 : Nama variabel yang datany dituliskan.


(7)

WRITE (*,10) A,B,C FORMAT(3F20.8)

Keterangan:

Harga-harga A,B,C dituliskan pada alat aoutput yang bertanda * ( standar output) biasnya monitor (console). Dengan tata letaknya sesuai FORMAT.

C. FORMAT

Dipergunakan untuk menentukan tata letak suatu data masukan pada media input maupun data keluaran pada media output. Ada tiga jenis format untuk menyatakan data numeris yatiu: tipe I, tipe F dan tipe E.

Format Tipe I

Tipe I dipakai untuk membaca atau menuliskan data INTEGER. BU : nIw

Keterangan:

n = Cacah format I

w = Banyak kolom yang dipakai oleh data. Contoh:

READ(*,100) IDATA, IHASIL FORMAT(I5,I5)

Atau

FORMAT(2I5)

Format Tipe F

Tipe F dipakai untuk membaa atau menuliskan data-data REAL. BU: nFw.d

Keterangan: n = cacah format F


(8)

d = cacah digit di belakang titik desimal. Contoh:

READ(*,100) X1, X2 FORMAT(F4.2,F4.2)

Atau

FORMAT(2F4.2) Format Tipe E

Tipe E dipakai untuk membaca atau menuliskan data-data REAL dengan cara EXPONENT. BU: nEw.d

Keterangan:

n = cacah format E

w = banyak kolom yang dipakai oleh data d = cacah digit di belakang titik desimal. Contoh:

READ(*,100) X1, X2 FORMAT(E4.2,E4.2) Atau

FORMAT(2E4.2)

Format Tipe X

Tipe X ini bukan untuk membaca atau menulis, melainkan hanya untuk memberitahu banyak ruang kosong (spasi) antar data-data yang dibaca atau ditulis.

BU: nX dengan n: jumlah ruang kosong. Contoh:

READ(*,100) PDAT,NILAI FORMAT(F5.1,3X,I5)

Format Literal

Untuk menuliskan data literal langsung dari program ke media output. BU: ‘ xxxxxxxxxx’

Contoh:


(9)

(1)

· Tidak bisa dibaca atau dipahami semudah bahasa level tinggi yang

Terdapat beberapa hal yang menjadikan bahasa pemrograman Fortran lebih unggul dibandingkan dengan bahasa pemrograman lain yaitu,

1. proses eksekusi / kompilasi program yang cukup cepat.

2. metode penulisan program sangat fleksibel, setiap bagian blok program dapat ditulis secara tidak berurutan.

3. mendukung teknik kompilasi secara menyeluruh (all compilation), maksudnya misalkan kita memiliki 5 buah file Fortran yang saling berhubungan maka semua file tersebut dapat langsung dikompilasi semua dalam satu perintah dengan bantuan makefile yang kita buat, bagian ini akan dijelaskan pada bab yang akan datang.

4. memilki kompilator (compiler) yang cukup banyak berkembang.

4.

Tipe Data FORTRAN

Tipe-tipe data yang terdapat dalam FORTRAN antara lain:

a) Variable integer

Variabel integer adalah variable yang digunakan untuk menyimpan nilai numerik bulat. Bila tidak didefinisikan, maka variabel integer harus ditunjukkan oleh nama variabelnya yang diawali dengan huruf I, J, K , L, M,atau N.

Contoh :

INTEGER ISI ISI = 275

b) Variable real preposisi ganda

Adalah variable yang dibunakan untuk menyimpan nilai numeric pecahansebesar 8 byte. Nama variabelnya harus diawali dengan huruf selain I, J, K, L,M, dan N

Contoh :


(2)

NILAI = 275 Atau

DOUBLE PRECISION NILAI NILAI = 75

c) Variable real preposisi tunggal

Adalah variable yang digunakan untuk menyimpan nilai numerik pecahan sebesar 4 byte. Bila tidak didefinisikan, maka variabel integer harus ditunjukkan oleh nama variabelnya yang diawali dengan huruf I, J, K , L, M, atau N.

Contoh : REAL NILAI NILAI = 99

d) Variable karakter

Adalah variable yang digunakan untuk menyimpan nilai karakter. Default dari

variabel ini adalah 4 byte dan dapat didefinisikan menjadi 1 byte atau n byte (maksimum 127 byte). Nama dari variabel karakter bebas ini bebas diawali dengan huruf apapun.

e) Variable logika

Adalah variable yang digunakan untuk menyimpan nilai logika. Default dari variabel ini adalah 4 byte dan dapat didefinisikan menjadi 2 byte

Contoh:


(3)

5.

Statment Input Output pada FORTRAN

A.READ

Dipergunakan untuk membaca data dari suatu media input. BU:

READ(I, L) var1, var2,… Dengan:

I : Nomor alat input, yaitu nomor yang menyatakan suatu alat input, misal: keyboard, disk dll. L : label FORMAT

Var1, var2 : Nama varabel yang datanay dibaca. Contoh :

READ (*,11)A,B,I FORMAT (2F10.2,I5)

Keterangan:

Harga-harga A, B , I dibaca memlalui alat input yang bertanda * (standar input) biasanya keyboard, dengan tata letaknya sesuai FORMAT yang berlabel 11 yaitu:

A dengan FORMAT F10.2 B dengan FORNAT F10.2 I dengan FORMAT I5 B.WRITE

Dipergunakan untuk menuliskan isi suatu variabel pada suatu media output. BU:

WRITE(I,L) var1, var2 … Dengan:

I : Nomor alat output, yaitu nomor yang menyatakan suatu alat output, misal monitor, printer,disk

L : Label FORMAT

Var1, var2 : Nama variabel yang datany dituliskan.


(4)

WRITE (*,10) A,B,C FORMAT(3F20.8)

Keterangan:

Harga-harga A,B,C dituliskan pada alat aoutput yang bertanda * ( standar output) biasnya monitor (console). Dengan tata letaknya sesuai FORMAT.

C. FORMAT

Dipergunakan untuk menentukan tata letak suatu data masukan pada media input maupun data keluaran pada media output. Ada tiga jenis format untuk menyatakan data numeris yatiu: tipe I, tipe F dan tipe E.

Format Tipe I

Tipe I dipakai untuk membaca atau menuliskan data INTEGER. BU : nIw

Keterangan:

n = Cacah format I

w = Banyak kolom yang dipakai oleh data. Contoh:

READ(*,100) IDATA, IHASIL FORMAT(I5,I5)

Atau

FORMAT(2I5)

Format Tipe F

Tipe F dipakai untuk membaa atau menuliskan data-data REAL. BU: nFw.d

Keterangan: n = cacah format F


(5)

d = cacah digit di belakang titik desimal. Contoh:

READ(*,100) X1, X2 FORMAT(F4.2,F4.2)

Atau

FORMAT(2F4.2) Format Tipe E

Tipe E dipakai untuk membaca atau menuliskan data-data REAL dengan cara EXPONENT. BU: nEw.d

Keterangan:

n = cacah format E

w = banyak kolom yang dipakai oleh data d = cacah digit di belakang titik desimal. Contoh:

READ(*,100) X1, X2 FORMAT(E4.2,E4.2) Atau

FORMAT(2E4.2)

Format Tipe X

Tipe X ini bukan untuk membaca atau menulis, melainkan hanya untuk memberitahu banyak ruang kosong (spasi) antar data-data yang dibaca atau ditulis.

BU: nX dengan n: jumlah ruang kosong. Contoh:

READ(*,100) PDAT,NILAI FORMAT(F5.1,3X,I5)

Format Literal

Untuk menuliskan data literal langsung dari program ke media output.

BU: ‘ xxxxxxxxxx’

Contoh:


(6)