ELEMEN DASAR PROGRAM FORTRAN

ELEMEN DASAR PROGRAM FORTRAN

  1 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

ELEMEN DASAR PROGRAM FORTRAN

  Metacommand Komentar program debug c Program FORTRAN c menghitung nilai C = A + B

  Nama Format tampilan A=1.0 B=12.0

  Verb 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

  3 PROGRAM FORTRAN

  Elemen-elemen dasar dari suatu program FORTRAN: atau kompiler direktive yang bersifat optional.

  Metacommand

  , yang berupa tulisan bebas dari

  Komentar program

  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).

  6

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

  7 PROGRAM FORTRAN Konstanta real , yaitu semua bilangan bulat dan pecahan yang

  berada dalam jangkauan :

  8.43 E-37 s/d 3.37 E+38 : bilangan positip single precision

  4.91D-307 s/d 1.67D+308 : bilangan positip double precision

  • 3.37 E+38 s/d –8.43 E-37 : bilangan negatif single precision
  • 1.67 D+308 s/d –4.19D-307 : bilangan negatif double precision

  8

  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

  9 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 Konstanta Logika

  Konstanta logika digunakan untuk memeberi suatu nilai logika, yaitu .TRUE. untuk logika benar dan . FALSE. untuk logika salah.

  10

  • **3
    • * Perkalian
    • *B

  • + Penjumlahan
    • - Pengurangan
    • - B

  If (A .GE. B ) C=A*B

  Lebih besar dari If (A .GT. B ) C=A*B .GE. Lebih besar sama dengan dari

  If (A .NE. B ) C=A*B .GT.

  Sama dengan If (A .EQ. B ) C=A*B .NE. Tidak sama dengan

  Lebih kecil sama dengan dari If (A .LE. B ) C=A*B .EQ.

  .LT. B ) C=A*B .LE.

  Lebih kecil dari If (A

  12 PROGRAM FORTRAN Operand Keterangan Contoh .LT.

  3 C = A + B

  3 C = A

  2 C = A /B

  / Pembagian

  2 C = A

  1 Y = X

  Perpangkatan

  Operand Keterangan Hirarki Contoh **

  Dalam Fortran terdapat 3 operator yaitu operator aritmatika (arithmatic operator), operator hubungan (relational operator) dan operator logika (logical operator).

  11 PROGRAM FORTRAN

  Tabel Operator Hubungan

PROGRAM FORTRAN

  Tabel Operator Logika

  Operand Keterangan Hirarki Contoh Tidak / bukan

  1 .NOT.

  If (A .NOT. 1.0) C=A*B .AND. Dan

  2 Atau

  3 .OR.

  13 PROGRAM FORTRAN EKSPRESI

  Ungkapan (ekspresi) dapat berupa ekspresi aritmatika, hubungan dan logika. aritmatika A + EKSPRESI CONTOH KETERANGAN (A+B)/C B C logika hubungan IF (A .GT. 10.0) .AND. (A .LT. 20.0) C=A*B Jika 10<A<20 maka C =A * B IF (A .NE. B) C=15.0 Jika A<>B maka C =15 IF (A .LT. B) C=5.0 Jika A<B maka C =5 B**2-4*A*C B -4AC

  2

  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 mendifinisikan variabel

  ISI menjadi 2 byte

  ISI = 275

  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 :

  7

  6 Untuk matrik N =

  maka penulisan elemen-elemen matrik N adalah sebagai berikut N(1,1) = 5 , N(2,2) = 6 dst.

  20

  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 Fungsi statement ( statement function)

  Fungsi statement didefinisikan tidak dalam bentuk unit program yang terpisah tetapi dalam sebuah statement tunggal.

  Fungsi pustaka ( intrinsic function)

  Adalah fungsi-fungsi yang sudah disediakan oleh fortran untuk membantu perhtiungan permasalahan tertentu.

  Pengguna dapat mendefinisikan sendiri suatu fungsi pustaka dengan statement INTRINSIC.

  22

  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

  Nilai hasil perhitungan oleh subroutine

  24

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

  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

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

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 (non- . executable statement)

  • executable statement :

  Non

  Statement FORMAT Statement DATA dan PARAMETER Statement spesifikasi, yaitu COMMON, DIMENSION, EQUIVALENCE, EXTERNAL, IMPLICIT,

  INTRINSIC, SAVE dan TYPE

  32 Statement PROGRAM, FUNCTION dan SUBROUTINE

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, FUNCTION Meta- Baris atau SUBROUTINE command komentar yang lain Statement IMPLICIT Statement FORMAT Statement spesifikasi lain Statement DATA Statement fungsi statement Executable Statement Statement END

  34

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

  3. Metacommand lain dapat diletakkan dimanapun, asal dibawah $DO dan $STORAGE dan diatas END.

  4. Baris komentar program dapat dilakukan dengan indikasi ‘C’ atau ‘*’ pada kolom pertama dan adapt diletakkan di manapun dalam program.

  36