Top Banner
STANDAR KOMPETENSI Setelah menyelesaikan mata kuliah Komputer mahasiswa mampu mengembangkan paket program aplikasi mandiri untuk menyelesaikan masalah keteknikan khususnya Teknik Mesin dengan bahasa FORTRAN KOMPETENSI DASAR Mahasiswa dapat mengaplikasikan dasar-dasar pemrograman yang dimiliki dalam bentuk program aplikasi komputer sederhana INDIKATOR 1. Mahasiswa dapat menuliskan kode sumber (Source Program) program aplikasi sederhana sesuai dengan organisasi Fortran 2. Mahasiswa dapat menggunakan elemen-elemen dasar program Fortran dalam menulis program aplikasi sederhana. 18
33

90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Jun 30, 2015

Download

Documents

mocoz
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

STANDAR KOMPETENSI

Setelah menyelesaikan mata kuliah Komputer mahasiswa mampu mengembangkan paket program aplikasi mandiri untuk menyelesaikan masalah keteknikan khususnya Teknik Mesin

dengan bahasa FORTRAN

KOMPETENSI DASAR

Mahasiswa dapat mengaplikasikan dasar-dasar pemrograman yang dimiliki dalam bentuk program aplikasi

komputer sederhana

INDIKATOR

1. Mahasiswa dapat menuliskan kode sumber (Source Program) program aplikasi sederhana sesuai dengan organisasi Fortran

2. Mahasiswa dapat menggunakan elemen-elemen dasar program Fortran dalam menulis program aplikasi sederhana.

3. Mahasiswa dapat memilih tipe-tipe data yang sesuai untuk setiap data yang digunakan di dalam program aplikasi yang dibuat.

4. Mahasiswa dapat menggunakan statemen read/write dalam memanipulasi tampilan pemasukkan data dan tampilkan hasil eksekusi

18

Page 2: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

program sehingga program yang dihasilkan lebih interaktif.

2.1 STRUKTUR PROGRAM FORTRAN

Salah satu konsep dasar yang paling penting dan perlu diketahui oleh mereka yang ingin mempelajari suatu bahasa komputer adalah struktur dari program yang akan ditulis dengan bahasa tersebut. Tanpa mengetahui strukturnya dengan tepat, maka seseorang tidak akan dapat menulis suatu program FORTRAN dengan benar. Yang lebih parah lagi, anda tidak akan tahu bagaimana harus memulai menulisnya.

Struktur dari program FORTRAN dibagi menjadi 5 bagian kolom dan tiap-tiap baris didalam program dapat berisi :

MetacommandMetacommand atau compiler directive sifatnya adalah opsional di dalam program FORTRAN, artinya tidak harus ada. Metacommand digunakan apabila ingin berkomunikasi dengan compiler mengenai informasi-informasi tertentu.KomentarKomentar (comment) dapat berupa tulisan bebas apapun yang berguna untuk memberikan keterangan pada program, sehingga memudahkan untuk membaca program tersebut. Komentar tidak diproses oleh program.StatemenStatemen (statement) merupakan inti dari program yang berupa instruksi-instruksi kepada komputer. Logika program dituangkan dalam bentuk statemen kepada compiler untuk diproses.Sambungan dari statemen baris sebelumnya.

Untuk memudahkan seorang programmer menuliskan program FORTRAN, disediakan formulir khusus yang disebut Formulir Kode Fortran (Fortran Coding Form). Bentuk formulir ini dengan contoh program FORTRAN ditunjukkan dalam gambar 2.1. Tiap statemen FORTRAN harus mulai dari baris baru, sedangkan statemen tersebut dapat menggunakan satu atau beberapa baris pada formulir ini. Tiap baris berisi 80 spasi dan tiap spasi hanya dapat diisi oleh satu karakter yang dikenal dalam FORTRAN. Aturan yang harus diikuti dalam menulis program FORTRAN adalah sebagai berikut :1. Kolom ke 1 digunakan untuk indikasi bahwa baris yang digunakan

adalah berisi komentar atau berisi metacommand. Karakter “C” atau “c” atau “*” (asterik) menunjukkan

kolom tersebut berisi komentar yang tidak akan diproses oleh komputer. Karakter “$” (dollar) menunjukkan bahwa baris tersebut

berisi metacommand.

19

Page 3: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

2. Kolom 1 sampai 5 dipergunakan untuk menuliskan nomor pengenal (label), berupa suatu angka yang menunjukkan letak dari suatu statemen.

3. Kolom 6 dipergunakan untuk indikasi sambungan statemen dari baris sebelumnya. Karakter yang digunakan adalah semua karakter kecuali blank atau 0. Jumlah sambungan maksimum 19 buah berturut-turut.

4. Kolom t sampai dengan 72 dipergunakan untuk menuliskan statemen FORTARN.

5. Kolom ke 73 sampai dengan 80 tidak dipergunakan oleh FORTRAN, dapat dimanfaatkan sebagai catatan atau nomor pengenal yang tidak diproses oleh komputer.

Gambar 2.1 Formulir Kode Fortran (Fortran Coding Form)

Bagian program yang ditunjukkan dalam program 2.1 menunjukkan struktur program FORTRAN.

$TITLE : 'Contoh Program FORTRAN'C Program ini untuk menunjukkanC Struktur dari program FORTRANC234567890 C=25.0 F=C*1.8+32 WRITE(*,5) C, F 5 FORMAT(1X, F6.2, 1X, 'CELCIUS ADALA SEBESAR ', F6.2, - 1X,'FAHRENHEIT'

END

Statemen FORTRAN Label Statemen Indikasi sambunga Komentar Indikasi komentar Matacommand

20

Page 4: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

konstanta

unit specifier

format specifier

verb

nama

operator

ungkapan

Pemrograman Komputer Bahasa FORTRAN -

Program 2.1 Struktur program FORTRAN

2.2 ELEMEN DASAR FORTRAN

Elemen dasar terpenting dari bahasa FORTRAN adalah statemen. Statemen ditulis dengan suatu aturan tata bahasa atau bentuk umum atau grammer atau syntax tertentu yang sudah ditentukan. Kalau penulisan statemen menyalahi sintaksisnya berarti terjadi kesalahan sistaksis (sintax error). Untuk itu perlu adanya pemahaman yang baik tentang bentuk umum atau sintaksis dari masing-masing statemen FORTRAN.

Suatu statemen FORTRAN dibentuk dari elemen-elemen dasar berikut :1. Konstanta2. Operator3. Ungkapan4. Nama5. Verb6. Unit specifier7. Format Specifier

Program 2.2 menunjukkan elemen-elemen dasar dari statemen FORTRAN.

$TITLE : 'Contoh Program FORTRAN'C Program ini untuk menunjukkanC Struktur dari program FORTRANC234567890 C = 25.0

F = C * 1.8 + 32

WRITE(*,5) C, F

5 FORMAT(1X, F6.2, 1X, 'CELCIUS ADALA SEBESAR ', -F6.2, 1X,'FAHRENHEIT' END

Program 2.2 Elemen-elemen statemen FORTRAN

2.2.1 KONSTANTA

Konstanta adalah bilangan yang tidak berubah harganya selama pelaksanaan sebuah program. Konstatnta diwujudkan dalam bentuk numerik. Modus suatu konstanta dapat real (bilangan dapat pecahan), integer (tidak mengandung desimal), konstanta karakter dan konstanta logika.

21

Page 5: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

Contoh :+327, -173 (konstanta integer)

123.456, 5.0E03, -5.0E-03 (konstanta real)‘ABC’,’ ‘, ‘PT. XYZ’ (konstanta karakter, diapit oleh petik

tunggal (aposthrope)..TRUE. , .FALSE. (konstanta logika hanya memiliki dua

nilai yaitu benar (true) dan salah (false)

2.2.2 OPERATOR

Operator di dalam bahasa FORTRAN dapat terdiri dari operator arithmatika (arithmetic operator), operator hubungan (relational operator) dan operator logika (logical operator).Pengertian masing-masing operator adalah sebagai berikut :- Operator aritmatika adalah tanda operasi yang digunakan di dalam

perhitungan aritmatika. - Operator hubungan adalah tanda operasi yang digunakan untuk

menyatakan hubungan antara dua buah elemen- Operator logika adalah tanda operasi yang digunakan didalam

perbandingan logika

Tabel 2.1 Operator AritmatikaOperator Arti Contoh Jenjang*)

***/+-

PerpangkatanPerkalianPembagianPenambahanPengurangan

2**10 (210)5*12 (5 x 12)60/102+36-2

12233

*) mana yang lebih dulu diproses jika ada beberapa operator dalam satu ekspresi aritmatika

Tabel 2.2 Operator HubunganOperator Arti Contoh

.LT.

.LE.

.EQ.

.NE.

.GT.

.GE.

Lebih kecil dariLebih kecil sama dengan dariSama denganTidak sama denganLebi besar dariLebih besar sama dengan dari

A .LT. B (A<B)A .LE. B (A≤B)A .EQ. B (A=B)A .NE. B (A≠B)A .GT. B (A>B)A .GE. B (A≥B)

Tabel 2.1 Operator LogikaOperator Arti Contoh Hasil Jenjang.NOT. Tidak atau bukan .NOT. TRUE FALSE 1

22

Page 6: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

.AND..OR.

DanAtau

TRUE .AND. FALSETRUE .OR. FALSE

FALSETRUE

23

2.2.3 UNGKAPAN

Ungkapan (expression) dalam bahasa FORTRAN dapat berupa ungkapan arithmatika (arithmetic espression), ungkapan karakter (character expression), ungkapan hubungan (relational expression) dan ungkapan logika (logic expression). Pengertian masing-masing ungkapan tersebut adalah sebagai berikut :- Ungkapan Arithmatika merupanakan bentuk ungkapan matematika biasa,

dengan menggunakan operator aritmatika FORTRAN. Jenjang menunjukkan urutan mana yang diperoses terlebih dahulu. Untuk mengubah jenjang dapat dipergunakan pasangan kurung “(“ dan “)”.

Contoh 2.1 Ungkapan arithmatika :

FORTRAN Matematika(A+B)/C+D

B**2 – 4*A*C(A**2+B**2)**0.5

B2 – 4 X A X C

- Ungkapan Karakter merupakan ungkapan yang dapat berupa konstanta atau nama variabel. Unkapan karakter tidak boleh menggunakan operator aritmatika.Contoh 2.2 :

NAMA = ‘ANTON’

- Ungkapan Hubungan membandingkan nilai dari dua buah numerik atau karakter yang menghasilkan suatu nilai benar (TRUE) atau salah (FALSE).Contoh 2.3 :

IF (A .LT. B) C=5 (Jika A Kurang dari B maka C = 5)

- Ungkapan Logika menyatakan ungkapan suatu nilai logika. Ungkapan logika dibentuk dengan menggunakan operator logika yaitu .NOT. .OR. atau .AND.Contoh 2.4 :

(X.AND. Y) .AND. Z ((X dan Y) dan Z)

23

Ungkapan hubungan

Ungkapan Karakter

Page 7: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

Didalam sebuah ungkapan, operator arithmatika mempunyai jenjang tertinggi (1) diikuti oleh operator hubungan (2) dan yang terendah adalah operator logika.

Contoh 2.5 :(A .LT. (B**2)) .AND. (C .GT. D)

2.2.4 NAMA

Nama (name) atau disebut juga identifier dapat menunjukkan suatu variabel (variable), larik (array), fungsi (function) atau rutin bagian (subroutine). Nama didefinisikan sendiri oleh pembuat program (user defined name), dimana nama tersebut bersifat case sensitive, artinya huruf besar dan huruf kecil memiliki arti yang berbeda bagi compiler. Nama didefinisikan secara bebas dengan aturan sebagai berikut :

- Terdiri dari 1 sampai 6 huruf, atau kombinasi angka dan huruf- Nama harus dimulai dengan huruf- Tanda-tanda lain selain angka dan huruf tidak boleh digunakan - Dalam menulis nama tidak boleh ada spasi

Nama variabel adalah simbol yang menyatakan suatu besaran, yang ditentukan oleh statemen yang mendahuluinya. Harga variabel dapat berubah-ubah selama pelaksanaan program. Tipe dari variabel ada 4 yaitu variabel bulat (integer), pecahan (Real), karakter dan logika.Contoh 2.6 :

I, KOB, M123 (variabel tipe integer)A, DELTA, XL334 (variabel tipe real)Nama = ‘TEKNIK MESIN’ (variabel tipe karakter)STATUS = .TRUE. (variabel tipe logika)

2.2.5 VERB

Verb merupakan kata kerja perintah yang terdapat dalam statemen FORTRAN. Hampir semua statemen FORTRAN memiliki verb, kecuali satatemen pengerjaan (assignment statement).

Contoh 2.7 :

24

Ungkapan hubungan

Ungkapan arithmatika

Ungkapan logika

Page 8: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

- WRITE - FORMAT - WRITE- CALL - PRINT - GO TO

2.2.6 UNIT SPECIFIERUnit specifier atau logical unit number (LUN) merupakan nomor unit alat secara logika yang akan dipergunakan dalam operasi masukan dan keluaran (I/O). Biasanya, unit ini digunakan bersama-sama statemen masukan dan keluaran seperti READ, WRITE dan OPEN. Unit specifier dapat berupa :

1. * atau 0 yang menunjukkan unit yang dipergunakan adalah keyboard atau layar monitor (CRT).

2. Ungkapn integer, yaitu nilai bulat selain 0 yang menunjukkan unit alat yang dipergunakan adalah file external (printer dan disk). Contoh spesifikasi alat input dan output seperti berikut ini :

Alat input/output Nomor logical unit

Card Reader (input)Punch Card (output)Printer /PRN (output)Disk (input/output)

1234

Catatan : Nomor-nomor logical unit untuk komputer berbeda akan berbeda pula.

2.2.7 FORMAT SPECIFIER

Format specifier menunjukkan format yang akan dipergunakan oleh data masukan maupun data keluaran. Format ini biasanya digunakan pada penggunaan statemen READ dan WRITE.

2.3 TIPE DATA

Keberhasilan dalam membuat program komputer sangat ditentukan oleh ketepatan pemilihan dan penggunaan tipe data yang nantinya diolah didalam program tersebut. Pendefinisian tipe data yang tepat akan sangat berpengaruh terhadap pengalokasian memori komputer, yang akan berpengaruh terhadap kecepatan eksekusi program yang dibuat. Di dalam FORTRAN dikenal adanya 4 (empat) tipe data yaitu : tipe integer, tipe real, tipe karakter dan tipelogika.

2.3.1 DATA INTEGER

Data integer adalah data numerik bulat atau data numerik yang tidak mengandung angka dibelakang koma. Di dalam mendefinisikan suatu

25

Page 9: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

variabel atau konstanta dengan tipe integer nama variabel atau konstanta tersebut harus memiliki huruf pertama I, J, K, L, M, N (i, j, k, l, m, n), kecuali kata standar yang sudah dipakai compiler, seperti IF, if, LE, dan le.

Contoh 2.8 :I, KOB, M123 (tanpa deklarasi memori yang digunakan 4 byte)INTEGER*2 ISI (mendefinisikan variabel integer menjadi 2 byte) ISI = 275

Jumlah byte menunjukkan jumlah alokasi memori yang disediakan yang berpengaruh terhadap besarnya jangkauan nilai yang disimpan.

2.3.2 DATA REAL

Tipe data real merupakan data yang dapat pecahan, hasil operasi pembagian, dan operasi aritmatika lainnya. Di dalam mendefinisikan suatu variabel atau konstanta dengan tipe real, nama variabel atau konstanta tersebut harus memiliki huruf awalnya selain I, J, K, L, M, N dan huruf i, j, k, l, m dan n, kecuali kata standar yang sudah dipakai compiler seperti READ, read, END, end, FORMAT, format, dan lain sebagainya.

Contoh 2.9 :A, DELTA, XL334 (tanpa deklarasi memori yang digunakan 4 byte)REAL*8 NILAI (mendefinisikan variabel real menjadi 8 byte)

2.3.3 DATA KARAKTER

Data karakter adalah data yang berisi nilai karakter. Jika tidak didefinisikan, variabel untuk menyimpan nilai data karakter ini adalah 4 byte dan dapat didefinisikan menjadi n byte (n maksimum 127 byte). Tiap byte dapat menyimpan sebesar 1 karakter.

Contoh 2.10 :Nama = ‘TEKNIK MESIN’ (karena tidak didefinisikan maka

karakter nama sebesar 4 byte sehingga informasi yang disimpan hanya ‘TEKN’

CHARACTER*20 ALAMAT (mendefinisikan variabel ALAMAT dengan panjang 20 karakter)

2.3.4 DATA LOGIKA

Data logika adalah data yang hanya memiliki 2 (dua) keadaan yaitu benar dan salah. Default dari variabel untuk menyimpan data jenis ini adalah 4

26

Page 10: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

byte dan dapat didefinisikan menjadi 2 byte. Nama dari variabel dengan tipe data logika adalah bebas, diawali huruf apapun termasuk I, J, K, L, M, N. Variabel ini harus didefinisikan terlebih dahulu dengan statemen TYPE atau IMPLICIT.Contoh 2.11 :

STATUS = .TRUE.LOGICAL STATUS medefinisikan variabel logika 4 byteLOGICAL*2 STATUS medefinisikan variabel logika 2 byte

2.4 STATEMEN MASUKAN DAN KELUARAN

Didalam membuat program menggunakan bahasa FORTRAN statemen masukan dan keluaran (I/O) biasanya menggunakan statemen READ atau read dan WRITE atau writ. Pernyataan READ akan memberitahu komputer untuk membaca informasi numerik atau simbolik dari peralatan masukan (keyboard, monitor, disk dll), dan pernyataan WRITE memberitahu komputer untuk menampilkan atau mencetak data ke unit keluaran (monitor, printer, plotter, disk, dll). Pernyataan READ atau WRITE biasanya dibarengi dengan pernyataan FORMAT. Pernyataan FORMAT ini berguna untuk mengatur tampilan baik masukan maupun keluaran.

2.4.1 STATEMEN READ

Statemen dipergunakan untuk mentransfer atau membaca data dari suatu file, dapat berupa file di disk, printer, atau console (layar, keyboard). Bentuk umum :

READ(<unit specifier>,<format specifier>) ListDimana :

<unit specifier> nomor peralatan masukan<format specifier> merupakan spesifikasi format dari data yang akan

dibaca, tipe,letak dan panjang dari data.List merupakan kumpulan dari variabel yang akan

menerima data yang dimasukkan.

Contor 2.12:

C1234567890 READ(1,11) F, G, IK

11 FORMAT(2F10.2,I10)

Format specifier pada statemen READ dapat berupa :

27

Nomor peralatan masukan

Format Specifier

List Variabel

Page 11: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

1. Statemen label2. Variabel numerik integer3. Ungkapan karakter4. * (asterik)

A. Format Specifier Berupa Statemen Label

Format specifier yang berupa label statemen berbentuk suatu nilai konstanta integer yang menunjukkan letak daristateman FORMAT yang digunakan.

Contoh 2.13 :C Contoh 1C234567890 READ(*,5)A,B,I 5 FORMAT(1X, 2F5.2,I5) WRITE (*,5) END

C contoh 2C234567890 INTEGER*2 A(3) READ (*,5) A 5 FORMAT(1X,BN,3I5) WRITE(*,100) A 100 FORMAT(/,1X,'DATA YANG DIMASUKKAN ADALAH :',/,10X, 3I5) END

Bila dijalankan akan didapatkan hasil :

40 50 100

DATA YANG DIMASUKKAN ADALAH :40 50 100

B. Format Specifier Berupa Variabel Numerik Interger

Format specifier yang berupa variabel numerik integer menunjukkan nilai label statemen FORMAT yang sudah dimasukkan ke variabel numerik integer tersebut dengan statemen ASSIGN

28

Format Specifierberupa statemen label

input List

Data yang dimasukkan

Page 12: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

Contoh 2.14 :

C234567890 ASSIGN 5 TO IFORMAT 5 FORMAT(BN, F7.2,1X,F7.2,1X,I5) WRITE(*,10) WRITE(*,11) 10 FORMAT(1X,' 1234.67 1234.67 12345') 11 FORMAT(1X,'MASUKKAN DATA : ',\) READ(*,IFORMAT) A, B, J WRITE(*,20) WRITE(*,5) A,B,J 20 FORMAT(/.1X,'DATA YANG DIMASUKKAN ADALAH : ',\) END

Bila program ini dijalankan, akan didapat hasil : 1234.67 1234.67 12345

MASUKKAN DATA : 25.50 275.00 75

DATA YANG DIMASUKKAN ADALAH : 25.50 275.00 75

C. Format Specifier Berupa Ungkapan Karakter

Format specifier yang berupa ungkapan karakter langsung menunjukkan benrtuk dari tipr, letak dan panjang data sehingga statemen FORMAT sudah tidak diperlukan lagi.

Contoh 2.15 :

C234567890WRITE(*,10)

WRITE(*,11) 10 FORMAT(1X,' 1234.67 1234.67 12345') 11 FORMAT(1X,'MASUKKAN DATA : ',\) READ(*,’(BN, F7.2, 1X, F7.2, 1X, I5)’) A, B, J WRITE(*,20) WRITE(*,5) A,B,J 20 FORMAT(/.1X,'DATA YANG DIMASUKKAN ADALAH : ',\) END

Program di atas dapat ditulis :

29

merupakan variabel numerik integer

data yang dimasukkan

Page 13: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

C234567890CHARACTER*23 BENTUK

BENTUK =’(BN, F7.2, 1X, F7.2, 1X, I5)’

WRITE(*,10) WRITE(*,11) 10 FORMAT(1X,' 1234.67 1234.67 12345') 11 FORMAT(1X,'MASUKKAN DATA : ',\) READ(*,BENTUK) A, B, J WRITE(*,20) WRITE(*,5) A,B,J 20 FORMAT(/.1X,'DATA YANG DIMASUKKAN ADALAH : ',\) END

Bila program ini dijalankan, akan didapat hasil :

1234.67 1234.67 12345MASUKKAN DATA : 25.50 275.00 75

DATA YANG DIMASUKKAN ADALAH : 25.50 275.00 75

D. Format Specifier Berupa * (asterik)

Format specifier yang berupa * (asterik) menunjukkan suatu list directed I/O transfer, yaitu transfer secara langsung ke alat input tanpa menggunakan statemen FORMAT. Imput data yang dimasukkan secara langsung dapat berupa kumpulan dari beberapa nilai data yang dimasukkan dengan suatu pembatas yang berrupa koma atau spasi. Data ini berupa :

- Konstanta : numerik, karakter dan logika- Nilai kosong (null)- Sejumlah data yang diulang dimasukkan dengan bentujk : jumlah

data * konstanta data

Contoh 2.16 :

C234567890 LOGICAL LULUS CHARACTER*10 NAMA READ(*,*) NOMHS, NAMA, XNILAI1, XNILAI2, LULUS WRITE(*,20) WRITE(*,21) NOMHS, NAMA, XNILAI1, XNILAI2, LULUS 20 FORMAT(/.1X,'DATA YANG DIMASUKKAN ADALAH : ',\)

30

data yang dimasukkan

format specifier berbentukungkapan karakter

Page 14: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

21 FORMAT(I5,2X,A10,2(2X,F6.2),2X,L1) END

Bila dijalankan akan tampak sebagai berikut :

85534 DANNY 2*75.50 .TRUE.DATA YANG DIMASUKKAN ADALAH : 85534 DANNY 75.50 75.50 T

2.4.2 STATEMEN WRITE

Statemen WRITE dipergunakan sebagai statemen keluaran untuk menuliskan hasil pengolahan data di peralatan keluaran yan9 ditunjukkan pada <unit specifier>. Sintaksis dari statemen WRITE adalah :

WRITE (<unit specifier>,<format specifier>) ListDimana :

<unit specifier> nomor peralatan masukan<format specifier> merupakan spesifikasi format dari data yang akan

dibaca, tipe,letak dan panjang dari data. List merupakan kumpulan dari variabel yang datanya akan ditampilkan.

Contor 2.17 :

C1234567890 WRITE(1,20) F, G, IK

20 FORMAT(2F10.2,I10)

Seperti halnya pada statemen READ, format specifier pada statemen WRITE juga dapat berupa :1. Statemen label2. Variabel numerik integer3. Ungkapan karakter4. * (asterik)

A. Format Specifier Berupa Satemen Label

Format specifier yang berupa statemen label berbentuk suatu nilai konstanta integer yang menunjukkan letak daristateman FORMAT yang digunakan.

31

Nomor peralatan masukan

Format Specifier

List Variabel

Page 15: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

Contoh 2.18 :

C234567890 A=3.90 B=10.00 WRITE(*,21) A, B 21 FORMAT(1X, ‘Nilai A =’ F7.2, ‘DAN B = ‘, F7.2) END

Program di atas dapat juga dituliskan seperti pada contoh dibawah dengan hasil yang persis sama.

C234567890 A=3.90 B=10.00 WRITE(*,21) ‘Nilai A == ‘,A, ‘DAN B = ‘ ,B 21 FORMAT(1X,A10, F7.2, A10, F7.2) END

Bila ke dua program di atas dijalankan akan didapat hasil :

Nilai A = 3.90 DAN B = 10.00

B. Format Specifier Berupa Variabel Numerik Interger

Format specifier yang berupa variabel numerik integer menunjukkan nilai label statemen FORMAT yang sudah dimasukkan ke variabel numerik integer tersebut dengan statemen ASSIGN

Contoh 2.19 :

C234567890 ASSIGN 21 TO LABEL A=3.90 B=10.00 WRITE(*,LABEL) A,B 21 FORMAT(1X, ‘Nilai A =’ F7.2, ‘DAN B = ‘, F7.2) END

32

Output list berupa kumpu;lan variabel dan konstanta karakter

output List

Format Specifierberupa statemen label

Format Specifierberupa statemen label

Output list berupa kumpulan variabel

Format Specifierberupa variabel numerik integer

Page 16: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

C. Format Specifier Berupa Ungkapan Karakter

Format specifier yang berupa ungkapan karakter langsung menunjukkan benrtuk dari tipr, letak dan panjang data sehingga statemen FORMAT sudah tidak diperlukan lagi.Contoh 2.20 :

C234567890 A=3.90 B=10.00 WRITE(*,’(1X,’’Nilai A = ’’,F7.2,’’DAN B = ’’,F7.2)’)A,B END

D. Format Specifier Berupa * (asterik)

Format specifier yang berupa * (asterik) menunjukkan suatu list directed I/O transfer, yaitu transfer secara langsung ke alat input tanpa menggunakan statemen FORMAT. Imput data yang dimasukkan secara langsung dapat berupa kumpulan dari beberapa nilai data yang dimasukkan dengan suatu pembatas yang berrupa koma atau spasi. Data ini berupa :

- Konstanta : numerik, karakter dan logika- Nilai kosong (null)- Sejumlah data yang diulang dimasukkan dengan bentujk : jumlah

data * konstanta data

Contoh 2.22 :

C234567890 IMPLICIT REAL*4(M), REAL*4(I) WRITE(*,’(1X,A,\)’) ‘BERAPA METER ? READ(*,’(F8.2)’) METER FEET = METER * 3.28 YARD = METER * 1.09 MILE = METER * 0.00062 INCH = METER *39.37 WRITW(*,*) WRITE(*,*)’ NILAI KONVERSINYA : ‘ WRITE(*,*) WRITE(*,*) METER,’METER = ‘,FEET,’FEET’ WRITE(*,*) METER,’METER = ‘,YARD,’YARD’

33

Format specier berupa ungkapan karakter

Format Specifier berupa *

Page 17: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

WRITE(*,*) METER,’METER = ‘,MILE,’MILE’ WRITE(*,*) METER,’METER = ‘,INCH,’INCH’ END

Bila dijalankan, akan didapatkan hasil :

BERAPA METER ? 10.00

NILAI KONVERSINYA :

10.0000000 METER = 32.8000000 FEET10.0000000 METER = 10.9000000 YARD10.0000000 METER = 6.200000E-003 MILE10.0000000 METER = 393.7000000 INCH

2.4.3 STATEMEN FORMAT

Statemen FORMAT digunakan untuk menentukan spesifikasi data yang akan dimasukkan atau dikeluarkan. Statemen FORMAT bebas diletakkan dimana saja di dalam program. Betuk umum statemen ini adalah :

<label> FORMAT <format-specification>dimana :

<label> menunjukkan label dari statemen format yang akan digunakan oleh statemen READ atau WRITE

<format-specification> merupakan bentuk yang menyediakan informasi terhadap letak, tipe dan panjang data. Format-specification ini harus ditulis di dalam tanda kurung. Isi dari format-specification ini adalah EDIT DISKRIPTOR.

A. EDIT DISKRIPTOR DATA INTEGERBentuk umum :

<n> I <w> . <d>dimana :

<n> banyaknya pengulangan<w> pajang/digit data (harus integer)<d> banyaknya angka nol dimuka pengganti blank.

34

Page 18: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

Contoh 2.23

C234567890 NOMOR1 = 1991 NOMOR2 = 5000 NOMOR3 = 7654 WRITE(*,10) NOMOR1, NOMOR2, NOMOR3 10 FORMAT(I4, I6, I3) END

Bila dijalankan, akan didapatkan hasil : I4 I6 I3

9 3 7 8 2 1 0 * * *

Hal yang sama berlaku untuk statemen FORMAT pada perintah masukan dengan statemen READ

B. EDIT DISKRIPTOR DATA REAL

Ada 2 (dua) buah edit discriptor untuk format tipe data real yaitu tipe F untuk data real biasa, E untuk data real ketepatan tunggal dan D untuk data real ketepatan ganda.

Bentuk umum edit discriptor untuk data numerik real biasa seperti berikut ini :

<n> F <w> . <d>dimana :

<n> banyaknya pengulangan.<w> pajang/digit seluruh data (harus integer).<d> menunjukkan digit dibelakang koma

Contoh 2.24.

C234567890 A = 15.23 B = 25.52

35

Digit

*** mrnunjukkan panjangnya terlalu kecil dibanding data

nilai pertama akan hilang

Page 19: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

C = 101.243 WRITE(*,10) A, B, C 10 FORMAT(1X, 2F7.2, F9.3) END

Bila dijalankan, akan didapatkan hasil :

15.23 25.52 101.243 F7.2 F7.2 F9.3

Untuk tipe data real ketetapan tunggal digunakan edit diskriptor E denga bentuk umum :

<n> E <w> . <d>dimana :

<n> banyaknya pengulangan.<w> pajang/digit seluruh data (harus integer).<d> menunjukkan digit dibelakang koma

Contoh 2.25 :

C234567890 A = 0.275E+4 B = 0.125E+04 C = 0.6125E+05 WRITE(*,10) A, B, C 10 FORMAT(1X, E10.3, E10.3, E12.4) END

Bila dijalankan, akan didapatkan hasil :

0.275E+4 0.125E+04 0.6125E+05

3 3 4 10 10 12 E10.3 E10.3 E12.4

Edit Discriptor D digunakan untuk tipe data numerik ketepatan ganda. Bentuk umum dari edit discriptor ini sebagai berikut :

<n> D <w> . <d>dimana :

<n> banyaknya pengulangan.<w> pajang/digit seluruh data (harus integer).<d> menunjukkan digit dibelakang titik desimal

Contoh 2.26 :C234567890 A = 0.275D+4

36

Page 20: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

B = 0.125D+04 C = 0.6125D+05 WRITE(*,10) A, B, C 10 FORMAT(1X, 3D12.3) END

Bila dijalankan, akan didapatkan hasil :

0.275D+4 0.125D+04 0.613D+05

3 3 3 12 12 12 D12.3 E12.3 D12.3

C. EDIT DISKRIPTOR DATA KARAKTER

Untuk format data tipe karakter/alpanumerik digunakan edit discriptor A. Bentuk umum dari edit discriptor ini adalah sebagai berikut :

<n> A <w> dimana :

<n> banyaknya pengulangan.<w> pajang/digit seluruh data (harus integer).

Contoh 2.27 :

C234567890 CHARACTER*8 BHS1, BHS2, BHS3 BHS1 = ’PASCAL’ BHS2 = ’BASIC’ BHS3 = ’FORTRAN’ WRITE(*,10) BHS1, BHS2, BHS3 10 FORMAT(1X,3A8) END

Bila dijalankan, akan didapatkan hasil :

123456781234567812345678 (jumlah digit) PASCAL BASIC FORTRAN

A8 A8 A8

D. EDIT DISKRIPTOR DATA LOGIKA

Untuk data tipe logika digunakan edit discriptor L dengan bentuk umum sebagai berikut :

<n> A <w>

37

Page 21: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

dimana :<n> banyaknya pengulangan.<w> panjang/digit seluruh data (harus integer).

Contoh 2.28 :

C234567890 LOGICAL BENAR, SALAH BENAR = .TRUE. SALAH = .FALSE. WRITE(*,10) BENAR, SALAH 10 FORMAT(1X, 2L10) END

Bila dijalankan, akan didapatkan hasil : 12345678901234567890 (jumlah digit) T F

L10 L10

SOAL-SOAL YANG DIPECAHKAN

1.1. Tentukan keluaran program berikut :C PROGRAM PERTAMA YANG DISELESAIKAN

J=1K=3L=2*J+KJ=3*J+2*LK=K+2L=J+K+LWRITE(*,20) J, K, L

20 FORMAT(3I5)END

Eksekusi program :Baris 1. komputer melewati pernyataan ini karena merupakan sebuah komentarBaris 2. Komputer menyimpan 1 dalam lokasi penyimpanan berpengenal J J 1Baris 3. Komputer menyimpan nilai 3 dalam loksi penyimpanan berpengenal K

K 3Baris 4. pernyataan ini memberitahukan komputer untuk menghitung 2xJ+K, dan

menyimpan nilai hasilnya di lokasi penyimpanan berpengelan LL 2*J+K (2*1+3)

38

Page 22: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

L 5Baris 5 ini memberitahu komputer untuk menghitung 3*J+2*L mengunakan nilai

J yang sekarang dan L, kemudian menyimpan hasilnya di lokasi penyimpanan berpengenal J

J 3*J+2*L (3*1+2*5=13)J 13

Karenanya komputer menghapus nilai J yang sekarang dan menggantinya dengan 13 di tempat penyimpanan yang sama. Kita gambarkan hal ini dengan :

J 1 13Baris 6. Pernyataan ini memberitahu komputer untuk menambah nilai K yang

sekarang dengan 2K 3 5

Baris 7. Komputer menambahkan nilai J, K, dan L sekarang :J+K+L=13+5+5=23

Kemudian komputer menghapus nilai L yang sekarang dan menggantinya dengan 23 di tempatnya.

L 5 23 Baris 8. Komputer mencetak nilai J, K dan L dengan Format seperti tercantum

dalam statemen FORMAT pada statemen dengan label 20, yaitu format integer dengan masing-masing bernilai 5 digit

13 5 23

5 5 5 digit rata kananBaris 10. Ini adalah akhir dari program

1.2 Luas permukaan dan volume suatu kotam berukuran a,b,c diberikan oleh persamaan :

SUR=2(ab+ac+bc) dan VOL =abc

andaikan ukuran sebuah kotak adalah 23.5, 41.3 dan 16.2, temukan program untuk menyelesaikan persoalan tersebuat.

Jawab :

CCC23456789 READ(*,61) A, B, C 61 FORMAT(3F10.2) SUR = 2.0(A*B+A*C+B*C) VOL = A*B*C

39

Page 23: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

WRITE(*,62) A, B, C, SUR, VOL 62 FORMAT(1X, ‘DIMENSI KOTAK’,/,7X, 3(F5.1, 1X),//,6X, - ‘LUAS PERMUKAAN =’,F10.1,//,6X,’VOLUME =’,F16.2) END

SOAL-SOAL LATIHAN

1. Temukan kesalahan, jika ada, pada masing-masing pernyataan READ berikut dan pernyataan FORMAT yang menyertai.a. READ(*,11) A, K, M, Z b. READ(*,11) A, B, C, D, J, K, L 11 FORMAT(F6.0,I15,I10,I15) 11 FORMAT(4F15.2, 3I15)

c. READ(*,11) A, B, J, K, L 11 FORMAT(3F8.1, 2I8)

2. Temukan kesalahan, jika ada, pada masing-masing pernyataan WRITE berikut dan pernyataan FORMAT yang menyertai.a. WRITE (*,11) A, B, N 11 FORMAT (F10.2, 3X, I8, 5X, I6)

b. READ (*,11) J, Z, K11 FORMAT (1X, I10, 4X, 2F10.3)

3. Andaikan K berisi 12345, dan pernyataan :WRITE(*,41) K

dieksekusi, jelaskan keluaran program jika pernyataan FORMAT yang menyertainya adalah :

a. 41 FORMAT(I10) c. 41 FORMAT(4X, I3)b. 41 FORMAT(4X, I8) d. 41 FORMAT(I5)

PRAKTIKUM

1. Tulis dan jalankan menggunakan WATFOR-77, teliti bagaimana bentuk keluarannya, kemudian simpanlah programnya

C23456789 PROGRAM LAT_1AC Program menulis hasilC Bil. Bulat (integer)

KK = 779 LL = 29 WRITE(*,10)KK, LL

10 FORMAT (I3, I2) STOP END

C23456789 PROGRAM LAT_1BC Program menulis hasilC Bil. Bulat (integer)

KK = 779 LL = 29 WRITE(*,10)KK, LL

10 FORMAT (I5, I5) STOP END

C23456789 PROGRAM LAT_1CC Program menulis hasilC Bil. Bulat (integer)

KK = 779 LL = 29 WRITE(*,10)KK, LL

10 FORMAT (2I5) STOP END

40

Page 24: 90593494 bab-2-pemogranan-aplikasi-sederhana-fotran

Pemrograman Komputer Bahasa FORTRAN -

2. Tulis dan jalankan menggunakan WATFOR-77, teliti bagaimana bentuk keluarannya, kemudian simpanlah programnya.

C23456789 PROGRAM LAT_2AC Program menulis hasil C Bilangan Real

XMAX = 0.17 YMAX = 123.9 WRITE(*,10)XMAX, YMAX

10 FORMAT (F4.2, F5.1) STOP END

C23456789 PROGRAM LAT_2BC Program menulis hasil C Bilangan Real

XMAX = 0.17 YMAX = 123.9 WRITE(*,10)XMAX, YMAX

10 FORMAT (F7.2, F7.1) STOP END

C23456789 PROGRAM LAT_2BC Program menulis hasil C Bilangan Real

XMAX = 0.17 YMAX = 123.9 WRITE(*,10)XMAX, YMAX

10 FORMAT (2F7.2) STOP END

3. Tulis dan jalankan menggunakan WATFOR-77, teliti bagaimana bentuk keluarannya, kemudian simpanlah programnya.

C23456789 PROGRAM LAT_3AC Program menulis hasil

DOUBLEPRECISION XMAX, XERR XMAX = 1234567.0 XERR = 0.879 WRITE(*,10)XMAX, XERR

10 FORMAT (E17.7, E16.3) STOP END

C23456789 PROGRAM LAT_3BC Program menulis hasil

DOUBLEPRECISION XMAX, XERR XMAX = 1234567.0 XERR = 0.879 WRITE(*,10)XMAX, XERR

10 FORMAT (2E17.7) STOP END

4. Tulis dan jalankan menggunakan WATFOR-77, teliti bagaimana bentuk keluarannya, kemudian simpanlah programnya.

C23456789 PROGRAM LAT_4AC Program menulis hasil

DOUBLEPRECISION XMAX XMAX = 776688.0 WRITE(*,10) XMAX

10 FORMAT (3X,’NILAI XMAX =’,F8.1) STOP END

C23456789 PROGRAM LAT_4BC Program menulis hasil

XA=112233.0 XB=445566.0 WRITE(*,10) XA WRITE(*,11) XB

10 FORMAT (/,’NILAI XA =’,F8.1) 11 FORMAT (/,’NILAI XB =’,F8.1) STOP END

5. Buatlah program untuk menghitung posisi Y(t) dan kecepatan V(t) suatu

gerak berubah beraturan yang dinyatakan dalam persamaan

dan , sebagai masukan adalah .

41