STATEMENT FORMAT, DATA, PARAMETER, SPESIFIKASI DAN PENGERJAAN Kuliah ke-3 1 PROGRAM FORTRAN STATEMENT FORMAT Bentuk umum penulisan statement FORMAT adalah ; < label statement > FORMAT <format-spec > Penjelasan : < label statement > : merupakan nomor label yang akan dirujuk /digunakan. < format-spec > : bentuk informasi spesifikasi data (edit descriptor) 2
Repeatable edit descriptor a.1 Edit descriptor I Digunakan untuk format bilangan integer. Bentuk umum : < n > I < w >. < d > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) - < d > : banyaknya angka nol dimuka sebagai blank. write (*,10) iterasi 10 format (3x, Jumlah iterasi =, I5) 3 Repeatable edit descriptor a.2 Edit descriptor F Digunakan untuk format bilangan real. Bentuk umum : < n > F < w >. < d > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) - < d > : banyaknya digit dibelakang koma / desimal. write (*,10) V format (3x, Kecepatan aliran =, F7.3) 4
Repeatable edit descriptor a.3 Edit descriptor E Digunakan untuk format bilangan real single precision. Bentuk umum : < n > E < w >. < d > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) - < d > : banyaknya digit dibelakang koma / desimal. write (*,10) Slope format (3x, Kemiringan Saluran =, E9.6) 5 Repeatable edit descriptor a.4 Edit descriptor D Digunakan untuk format bilangan real double precision. Bentuk umum : < n > D < w >. < d > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) - < d > : banyaknya digit dibelakang koma / desimal. write (*,11) Vs format (3x, Kec. Sekunder aliran =, D12.6) 6
Repeatable edit descriptor a.5 Edit descriptor A Digunakan untuk format data tipe alphanumerik /karakter. Bentuk umum : < n > A < w > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) aliran1 = sub-kritis aliran2 = superkritis write (*,20) aliran1,aliran2 format (3x,2A10) 7 Repeatable edit descriptor a.6 Edit descriptor L Digunakan untuk format data tipe logika. Bentuk umum : < n > L < w > - < n > : menunjukkan banyaknya pengulangan - < w > : menunjukkan banyak digit seluruh data (w >0) benar =.TRUE. salah =.FALSE. write (*,30) benar,salah format (3x,2L10) 8
Non repeatable edit descriptor b.1 Edit descriptor X Digunakan untuk mengatur posisi / blank. Bentuk umum : < n > X - < n > : menunjukkan banyaknya spasi /blank. write (*,10) Vs format (10X, Kec. Sekunder aliran =, D12.6) 9 Non repeatable edit descriptor b.2 Edit descriptor / Digunakan untuk memberikan jarak spasi antar baris. Bentuk umum : / write (*,10) V write (*,20) Vs format (10X, Kec. Primer aliran =, D12.6,/) format (10X, Kec. Sekunder aliran =, D12.6,//) 10
Non repeatable edit descriptor b.3 Edit descriptor \ Digunakan untuk menyatakan bahwa tampilan selanjutnya masih ditulis dalam baris yang sama. Bentuk umum : \ write (*,10) write (*,20) format (10X, Kec. Primer aliran =, D12.6,\) format (10X, Kec. Sekunder aliran =, D12.6) 11 Non repeatable edit descriptor b.4 Edit descriptor H Digunakan untuk menampilkan sejumlah tertentu (n) karakter ke alat output dengan blank dianggap sebagai karakter yang signifikan. Bentuk umum : < n > H - < n > : menunjukkan banyaknya karakter. write (*,10) 10 format (10X,19H TEKNIK PENGAIRAN) 12
Non repeatable edit descriptor b.5 Edit descriptor BN dan BZ Digunakan untuk interprestasi data numerik ke dalam input. Bentuk umum : BN : adalah blank null yaitu blank diabaikan / kosong. BZ : adalah blank zero yaitu blank dianggap sebagai nol. read (*,10) I write (*,10) I format (BZ, I8) 13 STATEMENT DATA 1. statement pengerjaan contoh : Vs = 12.5 memberikan nilai 12.5 ke variabel Vs 2. statement READ contoh : read (*,10) Vs format (3x, Nilai Vs =,F6.3) 14
STATEMENT DATA 3. statement DATA digunakan bila datanya bersifat konstan dalam setiap proses perhitungan program. contoh : Character Nama*15 Data A/10.0/B/1.05/Nama/ dian sisinggih / memberikan nilai A=10.0, B=1.05 dan Nama=dian sisinggih 15 STATEMENT DATA 4. statement PARAMETER digunakan untuk memberikan nilai konstanta dalam program. Bentuk umum : PARAMETER < name > = constant [[,] < name > = constant] < name > : adalah nama variabel < constant >: adalah nilai konstanta yang tipenya harus sama dengan tipe variabelnya. 16
STATEMENT SPESIFIKASI STATEMENT DIMENSION Digunakan untuk mendifinisikan variabel array / larik untuk data yang berbentuk matrik. Bentuk Umum : DIMENSION <nama_array [dimensi] < nama_array > : nama variabel array / larik. < dimensi > : ukuran array /larik. 17 STATEMENT SPESIFIKASI DIMENSION A[10,10], B[10] menyatakan variabel A adalah matrik 10x10 dan B=10x1 18
STATEMENT SPESIFIKASI STATEMENT IMPLICIT Digunakan untuk mendifinisikan tipe default dari nama variabel yang dibuat oleh programer. Bentuk umum : IMPLICIT < type > (nama) < type > : merupakan tipe data yang akan digunakan. nama : nama variabel yang didefinisikan IMPLICIT integer (v) mendifinisikan semua variabel yang diawali huruf v akan bernilai integer (default-nya akan bernilai real). 19 STATEMENT SPESIFIKASI STATEMENT COMMON Digunakan untuk dapat menggunakan bersama-sama sejumlah variabel memori diantara dua atau lebih unit program. Bentuk Umum : COMMON < nama > < nlist > < nama > : nama blok COMMON < nlist > : kumpulan nama variabel COMMON x,y 20
STATEMENT SPESIFIKASI STATEMENT INTRINSIC Digunakan untuk mendeklarasikan bahwa fungsi tersebut adalah fungsi intrinsic. Bentuk Umum : INTRINSIC < nama > < nama > : nama fungsi intrinsic/pustaka/standar yang sudah disediakan oleh FORTRAN. INTRINSIC SQRT 21 STATEMENT SPESIFIKASI STATEMENT EXTERNAL Digunakan untuk mendeklarasikan bahwa fungsi tersebut adalah fungsi eksternal. Bentuk Umum : EXTERNAL < nama > < nama > : nama fungsi eksternal yang dibuat oleh user. 22
STATEMENT SPESIFIKASI STATEMENT PENGERJAAN Bentuk Umum : < variabel > = < ekspresi > keterangan : < variabel > : nama variabel < ekspresi > : ungkapan yang hasilnya akan disimpan dalam variabel. A=B*C kata= tsa_97 nama = kata 23 STATEMENT SPESIFIKASI STATEMENT ASSIGN Digunakan untuk memasukan nilai dari suatu label ke suatu variabel bertipe integer. Bentuk umum : ASSIGN < nomor > TO < variabel > < nomor > : adalah label dari suatu statement. < variabel > : variabel bertipe integer ASSIGN 5 to LABEL1 ASSIGN 10 to LABEL2 24
STATEMENT SPESIFIKASI STATEMENT PROGRAM Digunakan menyatakan bahwa unit program tersebut adalah program utama dan sekaligus memberi nama program. Bentuk umum : PROGRAM < nama > < nama > : nama program utama. 25 STATEMENT SPESIFIKASI STATEMENT CALL Digunakan memanggil dan mengeksekusi sub-program (subroutine). Bentuk umum : CALL < nama > [([< argumen >])] < nama > : nama subroutine. < argumen > : argumen subroutine. CALL TRAP (N,Y,F,XINT) 26
STATEMENT SPESIFIKASI STATEMENT RETURN Digunakan mengembalikan proses kontrol dari unit program yang dipanggil (called program) ke program pemanggil (calling program). C SUBROUTINE TRAP SUBROUTINE TRAP(N,Y,F,SUM) DIMENSION Y(20),F(20) SUM=0.0 DO 10 I=1,N-1 DY=Y(I+1)-Y(I) SUM=SUM+0.5*DY*(F(I+1)+F(I)) 10 CONTINUE RETURN END 27