Modul 2 Elemen Dasar Fortran
Modul 2 Elemen Dasar Fortran
Kuliah ke-2
PROGRAM FORTRAN
Mengapa dengan FORTRAN ?
FORmula TRANslation
adalah bahasa pemrograman
komputer tingkat tinggi yang langsung berorientasi pada
permasalahan teknik, dan umum dipakai oleh para insinyur
teknik sejak 1950an sampai sekarang.
Banyak kode program hidraulik yang ditulis dengan
FORTRAN dan dapat kita dapatkan bebas di internet.
Sehingga akan lebih memudahkan kita untuk belajar sendiri
tentang Komputasi Hidraulika.
2
debug
c Program FORTRAN
c menghitung nilai C = A + B
Nama
Verb
Format tampilan
A=1.0
B=12.0
C=A+B
write (*,10) C
10 format (1x,'Nilai A+B = ',f6.2)
stop 'Program selesai'
end
Gambar 1. Contoh elemen elemen program Fortran
PROGRAM FORTRAN
Elemen-elemen dasar dari suatu program FORTRAN:
Metacommand atau kompiler direktive yang bersifat optional.
Komentar program, yang berupa tulisan bebas dari
keterangan sebuah program. Berfungsi sebagai
dokumentasi program.
Statement, yang merupakan sekumpulan perintah dasar
dari program.
4
PROGRAM FORTRAN
Suatu statement program dalam fortran dapat terdiri dari :
1. Konstanta
2. Operator
3. Ungkapan/ekspresi
4. Nama/identifier
5. Verb / assignment
6. Unit specifier
7. Format specifier
8. Statement
5
PROGRAM FORTRAN
Konstanta adalah nilai yang sudah pasti besarnya, dan tidak
akan berubah dalam suatu program.
Dalam bahasa FORTRAN terdapat berbagai konstanta yaitu
konstanta numerik (numeric constant), konstanta karakter
(character constant) dan konstanta logika (logic constant).
PROGRAM FORTRAN
Konstanta numerik terbagi atas :
Konstanta integer, yaitu semua bilangan bulat positip dan
negatif dalam rentang
-3267 s/d +3267
: untuk integer 2 byte
-2147483647 s/d +2147483647
: untuk integer 4 byte
PROGRAM FORTRAN
PROGRAM FORTRAN
Konstanta Karakter
Disebut juga dengan konstanta non numerik atau konstanta
string, yang berupa sekumpulan tanda ASCII yang ditulis dalam
tanda petik (apostrhope).
Contoh : Nama = ABC
Nama akan berisi ABC
PROGRAM FORTRAN
Konstanta Karakter
Disebut juga dengan konstanta non numerik atau konstanta
string, yang berupa sekumpulan tanda ASCII yang ditulis dalam
tanda petik (apostrhope).
Nama akan berisi ABC
Contoh : Nama = ABC
Konstanta Logika
Konstanta logika digunakan untuk memeberi suatu nilai logika,
yaitu .TRUE. untuk logika benar dan . FALSE. untuk logika
salah.
10
PROGRAM FORTRAN
Dalam Fortran terdapat 3 operator yaitu operator aritmatika
(arithmatic operator), operator hubungan (relational operator)
dan operator logika (logical operator).
Operand
**
*
/
+
-
Keterangan
Perpangkatan
Perkalian
Pembagian
Penjumlahan
Pengurangan
Hirarki
1
2
2
3
3
Contoh
Y = X**3
C = A*B
C = A/B
C=A+B
C=A-B
11
PROGRAM FORTRAN
Tabel Operator Hubungan
Operand
.LT.
.LE.
.EQ.
.NE.
.GT.
.GE.
Keterangan
Lebih kecil dari
Lebih kecil sama dengan dari
Sama dengan
Tidak sama dengan
Lebih besar dari
Lebih besar sama dengan dari
Contoh
If (A .LT. B ) C=A*B
If (A .LE. B ) C=A*B
If (A .EQ. B ) C=A*B
If (A .NE. B ) C=A*B
If (A .GT. B ) C=A*B
If (A .GE. B ) C=A*B
12
PROGRAM FORTRAN
Tabel Operator Logika
Operand
.NOT.
.AND.
.OR.
Keterangan
Tidak / bukan
Dan
Atau
Hirarki
1
2
3
Contoh
If (A .NOT. 1.0) C=A*B
13
PROGRAM FORTRAN
EKSPRESI
Ungkapan (ekspresi) dapat berupa ekspresi aritmatika,
hubungan dan logika.
EKSPRESI
aritmatika
hubungan
logika
CONTOH
KETERANGAN
A+B
C
(A+B)/C
B**2-4*A*C
B2-4AC
IF (A .LT. B) C=5.0
IF (A .NE. B) C=15.0
14
PROGRAM FORTRAN
NAMA / IDENTIFIER
Nama atau pengenal (identifier) dalam fortran dapat
menunjukkan suatu variabel (variable), larik (array) dan
bagian program (subroutine).
Nama didefinisikan sendiri oleh pembuat program (user
defined name). Aturan penulisan nama dalam fortran
sebagai berikut :
1. Panjang maksimum 1320 karakter
2. Karakter awal harus berupa huruf.
3. Tidak boleh ada spasi atau blank
4. Tidak boleh mengandung karakter khusus
15
PROGRAM FORTRAN
Variabel Integer
Digunakan untuk menyimpan nilai integer. Bila tidak
didefinisikan terlebih dahulu maka variabelinteger harus
ditunjukkan oleh nama variabel yang diawali dengan
huruf I,J,K,L,M dan N. Besar memory yang dibutuhkan 2
byte atau 4 byte (default).
Contoh :
INTEGER*2 ISI
menjadi 2 byte
ISI = 275
mendifinisikan variabel
ISI
16
PROGRAM FORTRAN
Variabel Real
Digunakan untuk menyimpan nilai real. Nama variabel real
adalah selain yang diawali huruf I,J,K,L,M dan N,
kecuali didefinisikan terlebih dahulu. Besar memory
adalah 4 byte (SP) dan 8 byte (DP).
Contoh :
REAL NILAI
REAL*8 NILAI
mendefinisikan dalam 8 byte
DOUBLE PRECISION NILAI mendefinisikan 8 byte (DP)
17
PROGRAM FORTRAN
Variabel Karakter
Digunakan untuk menyimpan nilai karakter. Besar memory
adalah 4 byte (default) dan dapat diubah maksimum 127
byte. Nama variabel adalah bebas diawali oleh huruf
apapun.
Contoh :
CHARACTER NAMA
CHARACTER*20 NAMA
mengalokasikan 20 byte
untuk NAMA
18
PROGRAM FORTRAN
Variabel Logika
Variabel logika digunakan untuk menyimpan nilai logika.
Default-nya membutuhkan memory 4 byte dan dapat
diubah menjadi 2 byte. Nama variabel dapat bebas
diawali huruf apapun.
Contoh :
STATUS = .TRUE.
LOGICAL STATUS
LOGICAL*2 STATUS
19
PROGRAM FORTRAN
Larik (Array)
Larik (array) atau variabel berindeks digunakan untuk
menyimpan beberapa nilai dalam satu nama larik (array).
Larik mempunyai sifat yang sama dengan variabel, yaitu
bila larik integer maka nama harus dimulai dengan huruf
I, J, K, L, M dan N (kecuali didefinisikan).
5 8
Contoh :
Untuk matrik N = 7 6
maka penulisan elemen-elemen matrik N adalah sebagai
berikut N(1,1) = 5 , N(2,2) = 6 dst.
20
10
PROGRAM FORTRAN
Fungsi
Fungsi digunakan untuk mendapatkan suatu nilai dari fungsi
tertentu. Dengan fungsi, nilai data dapat dikirimkan ke
fungsi dan fungsi akan memberikan data yang diminta.
Dalam fortran terdapat 3 macam fungsi :
Fungsi eksternal (external function)
Yaitu fungsi yang dibuat sendiri oleh pengguna, dalam
bentuk unit program yang terpisah tetapi masih dalam
satu program.
21
PROGRAM FORTRAN
11
PROGRAM FORTRAN
Sub-routine program
Sub-routine merupakan suatu unit program tersendiri,
sebagaimana fungsi eksternal. Sub-routine ini diawali
oleh kata SUBROUTINE dan diikuti dengan namanya.
Contoh :
SUBROUTINE AKAR (x,akarx)
Nama subroutine
Argumen subroutine
23
PROGRAM FORTRAN
Sub-routine program
Subroutine dapat dipanggil/diaktifkan dengan menggunakan
statement CALL.
Contoh :
CALL AKAR (nilaix,hasil)
Nilai yang dikirim
ke subroutine
24
12
PROGRAM FORTRAN
VERB
Verb adalah kata kerja perintah yang terdapat dalam
statement. Hampir semua statement FORTRAN
mempunyai verb, kecuali assignment statement, yaitu :
A= B + C
Verb ini menunjukan pekerjaan yang harus dilakukan oleh
kompiler.
Contoh :
WRITE perintah untuk mencetak
CALL perintah untuk memanggil subroutine
25
PROGRAM FORTRAN
UNIT SPECIFIER
Unit specifier atau logical unit number (LUN) merupakan
nomer unit alat logika yang akan dipergunakan dalam
operasi input/output.
Unit specifier ini digunakan pada statement I/O, yaitu
statement yang berhubungan dengan operasi input/output.
Statement yang menggunakan unit specifier yaitu statement
READ, WRITE dan OPEN
26
13
PROGRAM FORTRAN
UNIT SPECIFIER
Unit specifier dapat berupa :
atau 0, menunjukkan unit alat yang dipergunakan adalah
keyboard. Jadi kalau dipergunakan pada statement
WRITE maka akan ditampilkan hasilnya di layar.
Unit specifier ini tidak dapat digunakan oleh statement
OPEN.
Contoh :
WRITE (*,10) C
10 FORMAT (1x,'Nilai A+B = ',F6.2)
27
PROGRAM FORTRAN
Ungkapan integer, yaitu nilai integer selain 0, menunjukkan
alat yang akan dipergunakan adalah file eksternal (printer
atau file disk).
Jika dipergunakan dengan statement OPEN maka
menunjukkan sebagai berikut :
LPT1 unit alat yang digunakan adalah printer utama.
CON unit alat yang digunakan keyboard / console.
LPT2 unit alat yang digunakan adalah printer kedua.
COM unit alat yang digunakan port communication.
COM1 unit alat yang digunakan adalah COM1 dst.
Nama File unit alat yang digunakan file di disk.
28
14
PROGRAM FORTRAN
Contoh :
c menulis nilai dalam file FTCS_DIF.DAT
OPEN(5, FILE= 'four_dif.dat')
Nama file di harddisk
29
PROGRAM FORTRAN
FORMAT SPECIFIER
Format specifier menunjukkan format yang akan digunakan
oleh data input maupun data output. Kalau dipergunakan pada
statement :
READ menunjukkan format dari data yang dibaca.
WRITE menunjukkan format data yang ditampilkan.
30
15
PROGRAM FORTRAN
Format Specifier dapat berupa :
1. Label statement, menunjukkan letak dari statemen
FORMAT yang dipergunakan untuk pengaturan bentuk
datanya.
2. Nama variabel integer
3. Ungkapan karakter
4. Tanda *
Contoh :
READ(5,*) Bo,S
WRITE(6,40) Bo,S
40 FORMAT (3x, ,'lebar = ', f6.2/3x,'kemiringan =',f6.2//)
31
PROGRAM FORTRAN
STATEMENT
Statement dalam bahasa fortran dapat digolongkan ke dalam 2
bagian, yaitu statement yang dijalankan (executable
statement) dan statement yang tidak dijalankan (nonexecutable statement).
Non-executable statement :
Statement FORMAT
Statement DATA dan PARAMETER
Statement spesifikasi, yaitu COMMON, DIMENSION,
EQUIVALENCE, EXTERNAL, IMPLICIT,
INTRINSIC, SAVE dan TYPE
32
Statement PROGRAM, FUNCTION dan SUBROUTINE
16
PROGRAM FORTRAN
Sedang yang termasuk dalam statement yang dijalankan oleh
komputer (executable statement) adalah :
Statement pengerjaan (assigment) dan ASSIGN.
Statement kontrol, yang terdiri dari CALL, CONTINUE,
DO, ELSE, ELSEIF, END, ENDIF, GOTO, PAUSE, IF,
RETURN dan STOP.
Statement input/output yang terdiri dari BACKSPACE,
CLOSE, ENDFILE, OPEN, READ, REWIND, WRITE.
33
PROGRAM FORTRAN
Metacommand $DO66 atau $STORAGE
Statement PROGRAM,
atau SUBROUTINE
FUNCTION Metacommand
yang lain
Statement IMPLICIT Statement
FORMAT
Statement spesifikasi
lain
Baris
komentar
Statement DATA
Statement
statement
fungsi
Executable Statement
Statement END
34
17
PROGRAM FORTRAN
Penjelasan :
1. Metacommand harus diletakkan paling atas sendiri, dan
demikian juga untuk statement END terletak paling akhir
dari sebuah program FORTRAN.
2. Statement FORMAT dapat diletakkan di sembarang tempat
diantara statement IMPLICIT, statement spesifikasi lain,
statement DATA, statement fungsi statement dan
executable statement. Tetapi untuk statement FORMAT
harus diletakkan dibawah metacommand, statement
PROGRAM, FUNCTION, SUBROUTINE dan diatas
END.
35
PROGRAM FORTRAN
36
18