Anda di halaman 1dari 60

PENUNTUN PRAKTIKUM PEMOGRAMAN KOMPUTER

BAHASA FORTRAN

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FAKULTAS TEKNIK-UNIVERSITAS ANDALAS PADANG

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

Tujuan 1. 2. Memahami komponen utama komputer pribadi (Personal Computer). Memahami tentang system operasi (Operating System).

Perbekalan Praktikum

Secara umum, komputer pribadi mempunyai komponen yang saling berhubungan dan berinteraksi antara satu dengan lainnya. Komponen tersebut antara lain. a. Central Processor Unit (CPU). Kegunaan utma dari CPU dalah untuk memproses data dalam main memory. CPU mampu mengolah data, baik data aritmatik maupun operasi logika yang tersimpan dalam main memory. CPU merupakan bagian yang paling rumit dalam komputer yang terdiri atas chip untuk melakukan semua instruksi dalam komputer. CPU mempunyai register dan chace memory untuk menyimpan semua instruksi dan data dari dan ke main memory. Disamping itu, dalam CPU terdapat jaringan yang sangat rumit untuk melakukan perintah yang akan dilakukan dalam ALU (Arithmatic and Logic Unit).

Pendahuluan - 1

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

b.

Main Memory. Perangkat lunak/program (software) dan data-data yang diperlukan akan disimpan dalam main memory. Perintahperintah dalam program diambil dan dieksekusi oleh CPU dari main memory. Semua data maupun pernyataan yang berkenaan dengan program disimpan dalam main meory ini. Secara fisik memory merupakan cell yang diindeks berdasarkan alamat-alamat tertentu. Cell berisi sejumlah bytes. Tiap bait mempunyai 8 bits. Memory dapat dalam bentuk RAM (Random Access Memory) maupun dalam bentuk ROM (Read Only Memory). RAM hanya dapat menyimpan data untuk sementara hingga program selesai dieksekusi.

c.

Secondary Storage. Secondary Storage merupakan penyimpan data secara permanen. Hardisk merupakan dalam satu Secomdary Storage yang populer karena kemampuannya untuk menyimpan data dalam kapasitas banyak.

d.

Input/Output Device. I/O device merupakan jalur untuk mengirim dan menerima data dari dan ke komputer. I/O divide akan terhubung dengan perangkat lain seperti keyboard, monitor, printer dan perangkat lain.

Sistim Operasi (Operating System) Sistem Operasi merupakan perangkat lunak yang mengatur

pengoperasian, pengendalian dan mengkoordinir semua kegiatan dalam perangkat komputer. Sistem operasi merupakan perangkat lunak dasar yang harus dimiliki oleh setiap perangkat komputer pribadi. Windows, Macintos dan

Pendahuluan - 2

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

Unix family merupakan perangkat lumak sistem operasi yang umum digunakan dalam komputer pribadi.

Pemograman Komputer Pada dasarnya pemograman komputer merupakan serangkaian perintah yang terstruktur dan sistematis kepada komputer. Karena komputer hanya dapat memahami perintah dalam bentuk bahasa mesin, maka diperlukan perangkat lunak yang berguna untuk menginterpretasikan perintah dari high level language ke bahasa mesin. Walaupun saat ini banyak perangkat lunak yang demikian banyak tersedia, seperti C/C++, Pascal, COBOL, ADA, akan tetapi dalam praktikum ini hanya digunakan bahasa FORTRAN 77. FORTRAN-77

umumnya digunakan untuk menyelesaikan masalah sains dan teknologi. Dalam banyak hal, pemograman komputer disusun untuk menyelesaikan berbagai masalah. Dengan demikian, proses pemograman komputer

merupakan bagian dari penyelesaian permasalahan itu sendiri. Penjelasan lebih detail tentang penyelesaian malsah dengan program komputer akan diberikan dalam modul 8 paraktikum ini. Sebelum menyusun pemograman, langkahlangkah berikut sangat penting untuk dilakukan. a. b. c. d. Perumusan masalah. Penyusunan algoritma. Penyusunan diagram alir (flow chart). Pengkodean program (source code).

Pendahuluan - 3

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

a. Perumusan Masalah Perumusan masalah merupakan proses untuk mendeskripsikan masalah serta penjabaran masalah tersebut dalam bentuk yang lebih spesifik, yakni menentukan bagian-bagian yang masuk dalam kategori input, proses dan output. Contoh sederhana berikut memperlihatkan permusan masalah

dimaksud. Perhitungan volume balok ditentukan dengan persamaan V=l*p*t. Dari rumusan tersebut terlihat bahwa data masukan adalah lebar, panjang dan tinggi. Penyelesaian persamaan V=l*p*t merupakan proses dan output adalah volume balok.

b. Algoritma Algoritma merupakan langkah-langkah yang harus dilakukan dalam menyele-saikan masalah dalam butir a di atas. Langkah-langkah ini harus sistematis dan terstruktur sedemikian sehingga penyelesaian masalah diperoleh sesuai dengan yang diinginkan. Algoritma masalah dalam butir a di atas dapat ditulis sebagai berukut: 1. 2. 3. 4. 5. Mulai. Baca lebar, panjang dan tinggi balok. Hitung V=l*p*t. Tulis volume Selesai.

c. Diagram Alir Diagram alir merupakan gambaran/notasi tentang alur (pola fikir) program komputer yang akan dibuat. Diagram alir memegang peranan penting

Pendahuluan - 4

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

baik dalam menyusun program komputer maupun pada saat pengecekan ulang jika program komputer mempunyai kesalahan. Contoh:

mulai

Baca : lebar, panjang, tinggi

V= l*p*t

Tulis : volume

selesai

Pendahuluan - 5

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

Tabel 1. Gambaran/notasi yang umum digunakan dalam diagram alir No. 1. Gambar/notasi Arti Titik terminal untuk mulai, selesai dan kembali. Jika untuk mulai tulis START, selesai tulis STOP dan kembali tulis RETURN Input dan/atau output. Jika digunakan untuk input, 2. tulis READ: dan jika untuk output, tulis WRITE: dan diikuti dengan variabel yang akn dibaca/ditulis Proses. Tuliskan proses yang akan dilakukan 3. komputer dalam kotak yang tersedia

Tanda penghubung. Angka numerik dalam lingkaran 4. menunjukkan bahwa alur program dilanjutkan ke tahapan dengan alamat nomor yang diberikan dalam lingkaran. Huruf dalam lingkaran digunakan

Pendahuluan - 6

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN

MODUL 1

untuk tanda sambung.

atau 5.

Kedua notasi ini digunakan untuk alur dengan keputusan (if conditional). Notasi pertama jika hanya 2 pilihan sedang notasi kedua untuik 3 pilihan.

6.

Gambar/notasi untuk subprogram.

7.

Gambar/notasi untuk memulai dan mengakhiri proses pengulangan

8. Tugas : 1.

Garis aliran. Ujung panah menunjukkan arah aliran

Buat algoritma dan diagram alir untuk menghitung kendaraan dengan input berupa jarak dan waktu tempuh.

kecepatan

2.

Buat laporan awal untuk modul 2.

Pendahuluan - 7

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Tujuan 1. Memahami dasar-dasar pemograman komputer yang meliputi tentang format dan struktur bahasa pemograman FORTRAN-77 beserta tipe data dan variabel yang digunakan. 2. Dapat menyusun program komputer sederhana.

Perbekalan Praktikum Fortran adalah bahasa tingkat tinggi pertama dan merupakan singkatan dari FORmula TRANslator.Dalam praktikum ini kita menggunakan FORTRAN standar 77(selanjutnya ditulis FORTRAN-77). Bahasa pemograman FORTRAN-77 merupakan high level language yang digunakan untuk membuat perintah tertentu kepada komputer. Dalam penyusunan program, struktur pemograman dengan FORTRAN-77 mengikuti pola berikut, 1. Untuk program utama, [PROGRAM <nama program>] <deklarasi external file dan module> <deklarasi varibel> <inisialisasi variabel> . . <executable statement> . STOP END Dasar-dasar Pemograman Komputer - 8

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

2. Untuk subprogram, <blok subprogram> <deklarasi varibel> <inisialisasi variabel> <executable statement> RETURN END

Walaupun dalam bahasa fortran tidak membedakan huruf besar dan kecil, akan tetapi sangat disarankan untuk selalu mengunakan huruf besar dalam menyusun program komputer. Berikut ini akan dijabarkan tentang bagianbagian dari struktur program tersebut.

Nama Program (Program Statement) Program statement, dalam bentuk nama program, diperlukan untuk menidentifikasi program. Nama program sebaiknya dibuat berdasarkan apa yang akan dilakukan dalam program tersebut. Sangat disarankan, nama program identik dengan nama file (source code). Contoh : PRAKTIKUM.FOR Coba.f Penjelasan : .for dan .f adalah file extensions untuk bahasa fortran.

Dasar-dasar Pemograman Komputer - 9

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Coments (Komentar) Walaupun komentar tidak akan diproses oleh copiler, akan tetapi komentar mempunyai fungsi yang penting, terutama untuk menjelaskan bagimana program itu disusun, arti dari variabel-variabel yang digunakan. Komentar ini sangat penting, baik bagi yang menyusun program itu sendiri maupun bagi pihak lain yang membaca program tersebut. Contoh : c program menghitung luas persegi panjang c input write(*,*)'panjang = ' read(*,*)p write(*,*)'lebar = ' read(*,*)l c proses L=p*l c hasil write(*,*)L end komentar indikasi komentar

Type Declaration (Bentuk Deklarasi) Statement deklarasi berhubungan dengan variabel yang menggunakan tipe data tertentu, seperti apa variabel itu diperlakukan dan bagaimana pola Dasar-dasar Pemograman Komputer - 10

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

penyimpanannya dalam memory. Lihat penjelasan tentang Type Variabel/Data dalam pembahasan berikutnya.

Gambar 1. Mengaktifkan Compaq Visual Fortran

Program yang telah disusun dalam bentuk program sumber (source code) harus diterjemahkan ke dalam bahasa mesin. Interpreter untuk

menterjemahkan tersebut dikenal sebagai compiler. Dalam praktikum ini digunakan compiler Compaq Visual Fortran Edisi 6.5.0. Gambar 1

memperlihatkan cara untuk mengaktifkan compiler Compaq Visual Fortran. Cara

Dasar-dasar Pemograman Komputer - 11

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

membuat dan menyusun program komputer dalam editor akan dijelaskan asisten dalam praktikum

kompilasi build
eksekusi

Gambar 2. Menu untuk kompilasi, build dan eksekusi

Untuk mendapatkan output dari suatu program, dilakukan tahap-tahap sebagai berikut : 1. Tahap kompilasi. - klik pada [build] > [compile] - atau klik pada toolbar

- atau Ctrl + F7 Dasar-dasar Pemograman Komputer - 12

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

2. Build - klik pada [build] > [build nama file.exe] - atau klik - atau F7 3. Execute program - klik pada [build] > [execute] - atau klik pada toolbar pada toolbar

- atau Ctrl + F5

Tipe Variabel/Data Dalam FORTRAN-77 terdapat 3 tipe data yang paling umum digunakan, yakni REAL, INTEGER dan CHARACTER yang mewakili angka desimal (floating point), bilangan bulat dan rangkaian dari karakter tertentu. Penamaan variabel sebaiknya memiliki arti. Disarankan hanya menggunakan maksimum 6 karakter dalam setiap nama variabel. Penggunaan nama variabel yang panjang seringkali tidak sesuai untuk komputer tertentu. Default untuk FORTRAN-77 adalah INTEGER untuk semua variebel yang dimulai dengan huruf I-N dan REAL untuk semua variabel yang dimulai dengan huruf A-H,O-Z. Walau semua variabel tersebut secara otomatis masih dalam kategorinya masing-masing, akan tetapi sangat diremendasikan untuk selalu

mendeklarasikannya di awal program sumber. Contoh berikut menunjukkan deklarasi untuk variabel REAL dan INTEGER,

IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER*4 (I-N) Dasar-dasar Pemograman Komputer - 13

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Statement IMPLICIT mendefinisikan tipe dari semua variable atau larik yang huruf pertama dari nama yang disebutkan. Huruf yang sama tidak boleh didefinisikan ulang dengan statement IMPLICIT. Variabel atau huruf yang sudah didefinisikan dengan statement IMPLICIT dapat didefinisikan ulang dengan statement type.

Disamping itu, secara lengkap tipe data yang digunakan dalam FOOTRAN-77 diberikan sebagai berikut.

Tipe INTEGER INTEGER*2 INTEGER*4 REAL

Byte 2 2 4 4

Keterangan Bilangan bulat (-32767 32767) Bilangan bulat (-32767 32767) Bilangan bulat (-2147483647 2147483647) Bilangan desimal (floating point) Untuk bilangan positif 8.43E-37 3.37E38 Untuk bilangan negative -3.37E38 8.43E-37 Sama dengan REAL Bilangan desimal (floating point) Identik dengan REAL*8 Bilangan kompleks Bilangan kompleks Bilangan kompleks Identik dengan COMPLEX*16 Logika .TRUE. dan .FALSE. Dasar-dasar Pemograman Komputer - 14

REAL*4 REAL*8 DOUBLE PRECISION COMPLEX COMPLEX*8 COMPLEX*16 DOUBLE COMPLEX LOGICAL

4 8 8 8 8 16 16 4

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

LOGICAL2 LOGICAL4 CHARACTER CHARACTER* n

2 4 1 n

Logika .TRUE. dan .FALSE. Logika .TRUE. dan .FALSE. Karakter (bukan angka) Karakter (bukan angka)

Dasar-dasar Pemograman Secara umum, pemograman komputer hanya terbagi atas 3 bagian, yakni input, proses dan output. Proses Input/Output berhubungan dengan alat (device) I/O standar seperti keyboard, konsul (monitor), file serta periferal lainnya. Bagian terbesar dari pemograman biasanya terletak pada bagaimana proses (proses perhitungan misalnya) dilakukan. Bagian Input/Output dapat dikelompokkan pada pembahasan yang sama, sedangkan bagian proses ada dipisahkan menurut kegunaanya. Dalam penulisan program sumber (source code), aturan/format berikut harus selalu dipatuhi. Setelah itu, setiap bagian program akan dibahas.

Kolom 1

Komentar. Jika pada kolom 1 diberi huruf C atau *, maka semua karakter yang

mengikutinya komentar. 2 Kolom 1-5

dikategorikan

sebagai

Tempat penulisan label yang merupakan alamat perintah lanjutan. Label harus dibuat ditulis dengan bilangan bulat

(integer) 3 Kolom 6 Tempat tanda sambung. Semua karakter dapat digunakan sebagai tanda sambung. Dasar-dasar Pemograman Komputer - 15

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Disarankan untuk tidak menggunakan karankter / dan \. 4 Kolom 7-72 Main body program. Tempat penulisan semua perintah yang diinginkan. 5 Kolom 73-80 Tidak digunakan.

Input/Output (I/O) Perintah untuk Input/Output digunakan dalam membaca data masukan dan menuliskan data keluaran dari memori komputer dari dan ke periferal tertentu. Perintah untuk Input menggunakan penyataan READ dan sedangkan untuk Output menggunakan pernyataan WRITE. Bentuk umum untuk kedua pernyataan tersebut dapat ditulis sebagai berikut,

READ/WRITE (<unit spec>,<format spec>) var1,var2,

dimana, <unit spec> Menunjukkan kode/nomor alat input. Karakter * atau angka 5 menunjukkan keyboard bahwa (terlihat input pada

dilakukan

melalui

monitor). Karakter * atau angka 6 menunjukkan bahwa output ditampilkan melalui monitor. <format spec> Menunjukkan var1,var2,. format Karakter input/output * pada untuk <format

spec> menunjukkan format bebas (free format). Untuk input disarankan untuk menggunakan Dasar-dasar Pemograman Komputer - 16

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

format

bebas,

sedangkan

untuk

output

disarankan menggunakan format tertentu. Format tertentu ini umumnya menggunakan pernyataan FORMAT. Pembahasan tentang pernyataan

FORMAT ini akan dilakukan dalam pembahasan berikutnya. var1,var2, Menunjukkan variabel-variabel yang akan diinput atau yang akan dioutput

Contoh penggunaan : WRITE(*,*)Nilai A = READ(*,*)A WRITE(*,*)Nilai A = ,A END Bila prograqm dijalankan akan didapat hasil : Nilai A = WRITE(*,*)Nilai A = 6 READ(*,*)A) Nilai A = 6.000000 ..hasil dari ..ditulis (berdasarkan ..hasil dari

WRITE(*,*)Nilai A = ,A Press any key to continue

FORMAT

Dasar-dasar Pemograman Komputer - 17

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Penyataan FORMAT digunakan untuk membentuk format (bentuk) data masukan/keluaran yang meliputi tentang tata letak, tipe dan panjang data. Bentuk umum FORMAT ditulis sebagai berikut,

<label> FORMAT (edit list)

<label>

Menunjukkan label yang merupakan alamat dari pernyataan READ/WRITE

edit list

Merupakan edit descriptor yang merupakan perintah untuk mengatur tata letak, tipe dan panjang data.

Contoh penggunaan : WRITE(6,10)A,B 10 FORMAT(2(1X,F12.5))

Edit Descriptor Edit descriptor merupakan perintah dalam membentuk format I/O. Dalam Tabel 2 berikut diberikan edit descriptor yang umum digunakan dalam FORTRAN-77.

Dasar-dasar Pemograman Komputer - 18

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Tabel 2. Edit Descriptor dalam FORTRAN-77 No. 1. Tipe Editing Character Bentuk umum <n>A<w > 2. Integer <n>I<w > <n> <w> <n> <w> jumlah pengulangan jumlah karakter jumlah pengulangan jumlah integer 3. Real <n>F<w >.<d> <n> <w> <d> jumlah pengulangan jumlah termasuk desimal jumlah desimal 4. Real Exponensial <n>E<w >.<d> <n> <w> <d> jumlah pengulangan jumlah termasuk desimal jumlah desimal 5. Logika <n>L<w > <n> <w> jumlah pengulangan jumlah data 6. 7. 8. 9. 10. Apostrophe Positional Slash Backslash Blank interpretation <k> <n>X / \ BN BZ <k> <n> karakter jumlah pengulangan turun satu baris naik satu baris blank=kosong blank=nol Dasar-dasar Pemograman Komputer - 19 digit digit digit digit Arti notasi

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

Contoh : Penggunaan edit descriptor I I=123 WRITE(*,'(3X,I2)')I WRITE(*,'(3X,I3)')I WRITE(*,'(3X,I5)')I END Bila prograqm dijalankan akan didapat hasil : ** 123 123 Press any key to continue Penjelasan : - Hasil ** didapat karna nilai I adalah 3 digit sedangkan format output hanya untuk 2digit (I2) - hasil 123 didapat dari format I3 - hasil 123 didapat dari format I5.

Disediakan untuk 5 digit Contoh Penggunaan edit descriptor F A=123.235 WRITE(*,'(3X,F7.3)')A END Bila prograqm dijalankan akan didapat hasil : Dasar-dasar Pemograman Komputer - 20

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

123.235 Press any key to continue

Penjelasan : F7.3 - variable dapat menyimpan nilai sebesar 7 digit termasuk koma - maksimal 3 angka dibelakang koma 1 2 3 . 2 3 5

Contoh penggunaan edit descriptor , X, /, \ WRITE(*,'(5X,A,///)')'PRAKTIKUM FORTRAN' WRITE(*,'(3X,A,\)')'DILABORATORIUM' WRITE(*,*)'KOMPUTASI' END Bila prograqm dijalankan akan didapat hasil : praktikum fortran kosong sebanyak 5 karakter(5x) dilaboratorium komputasi Press any key to continue Tugas : Tentukan format terbaik untuk nilai : tiga baris kosong (///) laboratorium dan komputasi digabung (\)

32767 -32768 Dasar-dasar Pemograman Komputer - 21

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR PEMOGRAMAN KOMPUTER MODUL 2

1234567 123.356 12345678.9 1234567993.321 0.3333 -555.66666 -36544275865.5788 235E24

a. Tugas dibuat dalam bentuk program dengan statement read dan write. b. Masing-masing nilai dideklarasikan sebagai variable dan tentukan type dari masing-masing variable.

Dasar-dasar Pemograman Komputer - 22

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

Tujuan 1. Memahami perintah-perintah berupa proses dalam pemograman komputer. 2. 3. Memahami tentang logika dan kontrol dalam proses. Dapat menyusun program komputer lanjutan.

Perbekalan Praktikum Bagian (perhitungan utama pemograman komputer Dalam adalah bagaimana ini proses akan dengan

misalnya)

dilakukan. dalam

praktikum

dijabarkan/diterapkan menggunakan, 1. 2. 3. 4. 5.

proses

pemograman

komputer

Operator aritmatika. Logika dan kontrol. Proses pengulangan. Penggunaan array. Penggunaan subprogram.

Operator aritmatika Operator aritmatika memegang peranan penting dalam pemograman komputer dengan FORTRAN-77 karena dengan operator aritmatika inilah rumus-rumus matematika diterjemahkan ke program sumber. Operator aritmatika dan hirarkinya disusun sebagai berikut,

Proses (Operator & Logika)-

23

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

Operator ** * / + =

Operasi/Arti Pangkat Kali Bagi Tambah Kurang Sama dengan

Hirarki 1 2 2 3 3 -

Proses aritmatika pada komponen (operant) sejenis akan menghasilkan komponen sejenis. Sedangkan proses aritmatika yang tidak sejenis akan menghasilkan komponen dengan hirarki yang lebih tinggi. Agar proses aritmatika dengan hirarki yang lebih rendah dapat diproses terlebih dahulu, digunakan tanda kurung ( ). Contoh : 3**2+3/2*(4-6) 32 + (3:2) * (4-6) = 6

Logika dan Kontrol Ada 3 bentuk logika dan kontrol yang umum digunakan dalam FORTRAN-77, yakni IF, blok IF dan GOTO.

1. IF Pernyataan IF digunakan untuk mengatur alur program komputer sesuai dengan arah yang diinginkan. Bentuk umum penyataan IF adalah,

IF(<ekspresi>)<statement> Proses (Operator & Logika)24

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

<ekspresi>

Menunjukkan ekspresi, logika atau aritmatik, yang harus dibandingkan.

<statement>

Penyataan/perintah yang harus dilakukan jika hasil perbandingan dalam <ekspresi> benar.

Untuk logikal expression, membandingkan dua nilai numerik, <statement> dalam IF di atas disusun dengan menggunakan salah satu comparison (relation) operator berikut.

Operator .GT. .GE. .LT. .LE. .EQ. .NE.

Arti lebih lebar dari lebih besar dan sama dengan lebih kecil dari lebih kecil dan sama dengan sama dengan tidak sama dengan

Contoh penggunaan : write(*,'(3x,a,\)')'nilai a = ' read(*,*)a write(*,'(3x,a,\)')'nilai b = ' read(*,*)b if (a.gt.b) write(*,'(3x,a)')'nilai a besar dari b' if (a.lt.b) write(*,'(3x,a)')'nilai b besar dari a' Proses (Operator & Logika)25

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

end Bila prograqm dijalankan akan didapat hasil : nilai a = 5 nilai b = 3 nilai a besar dari b Press any key to continue

Untuk logical variable, <statement> menggunakan salah satu dari logical operator berikut. Hasil akhir dari IF logika hanya benar atau salah (.TRUE. atau .FALSE.).

Operator .NOT. .AND. .OR. .XOR. .EQV. .NEQV.

Arti tidak dan atau ekslusif atau ekivalen tidak ekivalen

Contoh penggunaan : Write(*,'(3X,A,\)')'NILAI A = ' READ(*,*)A Write(*,'(3X,A,\)')'NILAI B = ' READ(*,*)B Write(*,'(3X,A,\)')'NILAI C = ' Proses (Operator & Logika)26

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

READ(*,*)C If((a.lt.b).and.(a.lt.c))write terkecil' IF((A.GE.B).OR.(A.GE.C))WRITE(*,*)'NILAI A BUKAN YANG TERKECIL' End (*,*)'nilai a yang

Dalam eksekusinya, operator aritmatik akan dilaksanakan pertama kali, disusul dengan comparison (relation) operator dan logical operation.

2. Aritmatik IF Bentuk umum : IF (<expresion>)<slabel1>,<slabel2>,<slabel3> Statement IF aritmatika digunakan untuk menyeleksi kondisi dari suatu ungkapan aritmatika, apakah bernilai negatif, nol atau positif. contoh: CHARACTER*15 NILAI WRITE(*,'(3X,A,\)')'NILAI X = ' READ(*,*)X IF(X)1,2,3 1 NILAI = 'NILAI X NEGATIF' GO TO 4 2 NILAI = 'NILAI X NOL' GO TO 4 3 NILAI = 'NILAI X POSITIF' Proses (Operator & Logika)27

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

GO TO 4 4 WRITE(*,'(3X,A)')NILAI END 3. Blok IF Blok IF digunakan untuk pengaturan logika program yang lebih luas dan kompleks dengan pilihan yang lebih variatif. Blok IF disusun dengan struktur dasar IF-THEN-ELSE-ENDIF. Pola blok IF tersebut diberikan dalam Tabel 3 berikut. Tebel 3. Pola blok IF IF-THEN-ENDIF IF-THEN-ELSEENDIF IF(<ekspresi>)TH EN penyataan 1 penyataan 2 penyataan n ENDIF IF(<ekspresi>)THE N penyataan 1 penyataan 2 penyataan n ELSE penyataan a penyataan b penyataan z ENDIF IF-THEN-ELSEIFELSE-ENDIF IF(<eksp1>)THEN penyataan 1 penyataan 2 penyataan n ELSEIF(<eksp2>)T HEN penyataan a penyataan b penyataan z ELSE penyataan a1 penyataan b2 penyataan zn ENDIF Proses (Operator & Logika)28

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

Contoh penggunaan : Write(*,'(3X,A,\)')'NILAI A = ' READ(*,*)A Write(*,'(3X,A,\)')'NILAI B = ' READ(*,*)B Write(*,'(3X,A,\)')'NILAI C = ' READ(*,*)C If((a.lt.b).and.(a.lt.c))then write (*,*)'nilai a yang terkecil' else WRITE(*,*)'NILAI A BUKAN YANG TERKECIL' end if End Hal yang perlu diperhatikan bahwa jangan mengkontrol alur program menuju blok IF (menggunakan statement GOTO, misalnya).

3. GOTO Pernyataan GOTO digunakan untuk memindahkan alur program

mengikuti label yang ditunjukkan dalam perintah GOTO. Ada 3 jenis GOTO yang umum digunakan,

a. Assigment GOTO
Bentuk umum GOTO nvar,(label1,label2,).Penyataan ini

memerintahkan agar alur program berpindah ke label yang sesuai dengan nvar. Contoh penggunaan : Proses (Operator & Logika)29

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator & Logika

MODUL 3

GOTO I,(10,20,30)

Contoh di atas menunjukkan bahwa jika nilai I bernilai 10, 20 atau 30, maka proses selanjutnya mengikuti perintah dalam label 10, 20 atau 30.

b. Computed GOTO
Bentuk umum GOTO (label1,label2,),n. Pernyataan ini memerintahkan komputer untuk melanjutkan proses sesuai dengan urutan yang diberikan oleh n. Contoh penggunaan : GOTO (10,20,30),n Jika n=3, maka proses selanjutnya mengikuti perintah yang dimulai dari label ke-3, yakni label 30.

c. Unconditional GOTO
Pola GOTO ini adalah pola yang paling sederhana dengan bentuk umum GOTO label. Pernyataan ini memerintahkan komputer untuk melanjutkan proses ke alamat yang diberikan pada label.

Contoh penggunaan : IF(A.GT.B) GOTO 100 Jika A > B, maka proses dilanjutkan ke perintah yang dimulai dari label 100.

Proses (Operator & Logika)-

30

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Perulangan

MODUL 4

Tujuan 1. 2. Memahami perintah-perintah perulangan. Dapat mengaplikasikannya ke dalam program komputer.

Perbekalan Praktikum Dalam prakteknya banyak dijumpai suatu perintah harus dikerjakan berulang-ulang hingga diperoleh hasil sesuai dengan yang diinginkan. Secara logis, perintah-perintah kontrol dan logika yang dijelaskan dalam Modul 3 dapat digunakan untuk mengulang perintah-perintah yang sama dalam program. Perhatikan contoh sederhana proses penjumlahan angka 1 hingga 10 di bawah ini. I=0 SUM=0.0 10 I=I+1 WRITE(*,'(3X,A,I2)')'PERULANGAN KE ',I IF(I.LT.10) GOTO 10 END Bila program dijalankan akan didapat hasil : perulangan ke 1 perulangan ke 2 perulangan ke 3 perulangan ke 4 perulangan ke 5 perulangan ke 6 perulangan ke 7 Proses (Perulangan)31

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Perulangan

MODUL 4

perulangan ke 8 perulangan ke 9 perulangan ke 10 Press any key to continue

Dari contoh diatas dapat dilihat bahwa program akan terus diproses selama masih memenuhi syarat (I.LT.10) dan akan berhenti setelah syarat tidak lagi terpenuhi.

1. DO CONTINUE / DO END DO

DO <label> var=n1,n2,inc pernyataan 1 pernyataan 2 pernyataan n <label> CONTINUE

<label>

Label yang menunjukkan batasan awal dan akhir dari proses yang akan diulang.

var

Variabel integer yang merupakan variabel pengontrol perulangan.

n1 n2 inc

Nilai awal perulangan. Nilai akhir perulangan. Incremental, penambahan langkah setiap Proses (Perulangan)32

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Perulangan

MODUL 4

perulangan. Nilai penambahan harus bilangan bulat (integer) positif maupun negatif. Default=1

Perhatikan perbedaannya jika proses penjumlahan angka 1 hingga 10 dalam contoh di atas diprogram dengan menggunakan DO loop dalam contoh penerapan berikut.

Contoh penggunaan : DO 10 I=1,10 WRITE(*,'(3X,A,I2)')'PERULANGAN KE ',I 10 CONTINUE END

Contoh di atas merupakan contoh untuk proses perulangan tunggal. Dengan pola yang sama dimungkinkan untuk menyusun perulangan berkalang (nested loop). Dengan demikian akan ada kalang dalam (inner loop) dan kalang luar (outer loop) seperti diperlihatkan dalam contoh perkalian matriks berikut.

Contoh penggunaan : DO I=1,3

DO J=1,3 WRITE(*,'(3X,A,2I2)')'PERULANGAN KE ',I,J END DO END DO END Proses (Perulangan)33

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Perulangan

MODUL 4

Bila program dijalankan akan didapat hasil : perulangan ke 1 1 perulangan ke 1 2 perulangan ke 1 3 perulangan ke 2 1 perulangan ke 2 2 perulangan ke 2 3 perulangan ke 3 1 perulangan ke 3 2 perulangan ke 3 3 Press any key to continue Pada contoh diatas, perintah end do mempunyai tujuan yang sama dengan continue

2.

DO WHILEEND DO Perintah DO WHILE END DO memproses sustu atau sekelompok statemen secara berulang berdasarkan syarat yang diberikan.

Contoh : i=0 do while(i.lt.10) i=i+1 write(*,'(3x,a,2I2)')'perulangan ke ',I end do end

Proses (Perulangan)-

34

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Perulangan

MODUL 4

hal yang perlu dicatat bahwa setiap loop harus tertutup dimulai dari loop yang paling dalam. Disamping itu tidak diijinkan proses perhitungan dialihkan ke dalam loop (dengan perintah GOTO, misalnya)

Proses (Perulangan)-

35

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Array

MODUL 5

Tujuan 1. 2. Memahami penggunaan array. Dapat mengaplikasikannya ke dalam program komputer.

Perbekalan Praktikum Kontras dengan variabel tunggal, dimana hanya ada satu nilai untuk tiap variabel, variabel yang menggunakan array mempunyai sekelompok nilai dengan variabel yang sama. Variabel ber-array biasa digunakan untuk menterjemahkan variabel berindeks dalam matematika. Perhatikan kembali contoh perkalian matriks dalam modul sebelumnya.

DO 10 I=1,4,1 DO 20 J=1,4,1 DO 30 K=1,4,1 A(I,J)=A(I,J)+B(I,K)*C(K,J) 30 20 CONTINUE CONTINUE

10 CONTINUE

Dengan notasi matematika program di atas ditulis sebagai,

aij = ( bik .c kj )
k =1

Variabel A(I,J), B(I,K) dan C(K,J) disebut sebagai variabel ber-array. Urutan angka integer dalam tanda ( ) menunjukkan dimensi array n, dimana n Proses (Array)36

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Array

MODUL 5

maksimal 7. angka integer dalam tanda kurung menunjukkan alokasi tempat (indeks) yang disediakan untuk array tersebut. Oleh karenanya, pada awal program variabel tersebut harus dideklarasikan. Ada 2 bentuk deklarasi yang umum digunakan.

a. Dengan DIMENSION Penyataan DIMENSION mempunyai bentuk umum,

DIMENSION var(n1:m1,n2:m2,..,nl:ml),

var

Variabel yang mempunyai indeks, baik real, integer maupun karakter.

n1:m1 n2:m2 nn:mn

Nilai awal dan nilai maksimum indeks ke-1. Nilai awal dan nilai maksimum indeks ke-2. Nilai awal dan nilai maksimum indeks ke-l.

Dalam penyataan DIMENSION, variabel real, integer maupun karakter dapat dituliskan dalam satu satuan DIMENSION. Default n1, n2, dan nn adalah 1. Jika nilai awal n1, n2, dan nn adalah 1, jumlah indeks dalam penyataan DIMENSION cukup ditulis nilai maksimumnya saja.

Contoh penggunaan : DIMENSION A(4,4),B(4,4),C(4,4) DO 10 I=1,4,1 DO 20 J=1,4,1 DO 30 K=1,4,1 Proses (Array)37

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Array

MODUL 5

A(I,J)=A(I,J)+B(I,K)*C(K,J) 30 20 CONTINUE CONTINUE

10 CONTINUE

b. Dengan Cara Eksplisit Bentuk lain dari deklarasi array adalah dengan menyatakan secara eksplisit tipe data yang digunakan dalam array tersebut. Bentuk umumnya adalah

<type data> var(n1:m1,n2:m2,..,nl:ml),

<type data>

Tipe data yang digunakan dalam array, real, integer atau karakter.

Dengan penyataan eksplisit ini, variabel real, integer dan karakter harus dipisahkan dalam tiap kelompoknya.

Contoh penggunaan : REAL*8 A(4,4),B(4,4),C(4,4) DO 10 I=1,4,1 DO 20 J=1,4,1 DO 30 K=1,4,1 A(I,J)=A(I,J)+B(I,K)*C(K,J) 30 20 CONTINUE CONTINUE

10 CONTINUE Proses (Array)38

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Array

MODUL 5

Proses (Array)-

39

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Subprogram

MODUL 6

Tujuan 1. 2. Memahami perintah dan penggunaan subprogram. Dapat mengaplikasikannya ke dalam program komputer.

Perbekalan Praktikum Subprogram digunakan untuk mengalihkan sebagian alur program ke dalam blok program tertentu. Efektifitas, efisiensi dan kemudahan pengaturan merupakan alasan utama dalam pengalihan alur program ke dalam subprogram. Dengan adanya subprogram, blok proses yang mungkin akan dilakukan berulang-ulang, hanya perlu disusun satu kali. Untuk selanjutnya hanya perlu dipanggil/diaktifkan. Ada 2 jenis subprogram yang umum digunakan, yakni SUBROUTINE dan FUNCTION.

SUBROUTINE Subroutine merupakan subprogram yang hampir mirip dengan program utama (perhatikan kembali penjelasan dalam Modul 2). Dalam subroutine dapat dilakukan serangkaian/sekelompok input, proses maupun output. Bentuk umum dan cara pemanggilan/pengaktifan SUBROUTINE diberikan sebagai berikut.

Bentuk umum SUBROUTINE <nm>(vr1,varn) <deklarasi varibel> <inisialisasi variabel>

Cara pemanggilan PROGRAM utama> . . CALL <nm>(vra,varz) Proses (Subprogram)39 <nama program

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Subprogram

MODUL 6

<executable statement>

. .

RETURN END <nm> Nama subroutine vr1,varn Variabel yang digunakan dalam subroutine

STOP END <nm> Nama subroutine vra,varz Variabel yang digunakan dalam program utama. Variabel ini tidak perlu sama dengan vr1,varn, akan tetapi harus dengan tipe yang sama

Contoh penggunaan : Program utama . CALL KALI(A,B,F) .

Subprogram SUBROUTINE KALI(A,B,C) Proses (Subprogram)40

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Subprogram

MODUL 6

IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER*4 (I-N) C DIMENSION A(4,4),B(4,4),C(4,4) DO 10 I=1,4,1 DO 20 J=1,4,1 DO 30 K=1,4,1 A(I,J)=A(I,J)+B(I,K)*C(K,J) 30 20 CONTINUE CONTINUE

10 CONTINUE C RETURN END

FUNCTION Berbeda dengan penggunaan SUBROUTINE, FUNCTION hanya dapat digunakan untuk menentukan nilai satu variabel, bail real, integer maupun karakter. Subprogram ini umumnya digunakan untuk mendefenisikan fungsi tertentu dalam program. Bentuk umum dan cara pemanggilan/pengaktifan FUNCTION diberikan sebagai berikut.

Bentuk umum <td>FUNCTION <nm>(vr1,varn)

Cara pemanggilan PROGRAM utama> Proses (Subprogram)41 <nama program

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Subprogram

MODUL 6

<deklarasi varibel> <inisialisasi variabel>

. . vo=<nm>(vra,varz)

<executable statement>

. .

RETURN END <nm> Nama function. Nama ini harus sama dengan nama variabel yang nilainya ingin ditentukan. vr1,varn Variabel yang digunakan dalam function

STOP END <nm> Nama function Nama ini harus sama dengan nama variabel yang nilainya ingin ditentukan. vra,varz Variabel yang digunakan dalam program utama. Variabel ini tidak perlu sama dengan vr1,varn, akan tetapi harus dengan tipe yang sama Proses (Subprogram)42

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Subprogram

MODUL 6

vo

Variabel yang digunakan dalam program utama, yang identik dengan nilai fungsi dalam subprogram

Contoh penggunaan : Program utama . SUHUC=CELS(F) .

Subprogram REAL*8 FUNCTION CELS(FAH) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER*4 (I-N) C CELS=5.0/9.0*(FAH-32.0) RETURN END

Proses (Subprogram)-

43

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

Tujuan 1. 2. Memahami tentang metode pengolahan data dan file. Dapat mengaplikasikannya ke dalam program komputer.

Perbekalan Praktikum Seperti dijelaskan dalam Modul 1 semua data yang akan dan diproses di CPU dibaca dari main memory komputer. Main memory hanya menyimpan data tersebut secara temporary (sementara) hingga program selesai dieksekusi. Jika data tersebut ingin disimpan secara tetap, maka semua data tersebut harus disimpan dalam bentul file. Dalam Modul 2 juga telah disinggung bagaimana cara membaca dan menulis data dari media monitior maupun file ke main memory. Pada Modul 7 ini akan dijelaskan tentang perintah yang umum digunakan dalam FORTRAN-77 untuk mengatur data dan file dalam

pemograman komputer.

OPEN Penyataan OPEN digunakan untuk membuka file, baik file yang telah tersedia maupun file yang harus disediakan. Setelah file ini terbuka, maka main memory akan membaca/menulis data ke dalam file ini. Bentuk umumnya adalah, OPEN(<unit spec>,FILE=<nama file>,STATUS=<status>, ACCESS=<access>,FORM=<form>,RECL=,rec-leng)

<unit spec>

Menunjukkan nomor spesifikasi file. Nomor spesifikasi merupakan nilai integer kecuali 5 dan 6.

<nama file>

Nama file yang akan dibuka. Proses (Pengaturan Data dan File)44

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

<status>

Status file yang dibuka. STATUS=OLD untuk file yang telas tersedia, file untuk data masukan misalnya. STATUS=NEW digunakan untuk membuat file baru, dan STATUS = UNKNOWN,untuk file baru atau lama. Secara default jika status tidak ditulis berarti STATUS = UNKNOWN.

<access>

Metode pengaksesas data dari main memory ke file. ACCESS=DIRECT, pengaksesan dilakukan ke lokasi yang dikehendaki. ACCESS=SEQUENTIAL, pengaksesan dilakukan secara berurut dari record awal. Karena default ACCESS=SEQUENTIAL, pada umumnya metode ACCESS ini tidak dituliskan.

<form>

Menunjukkan bentuk format penyimpanan. form=FORMATTED, data disimpan terformat, form=UNFORMATTED data disimpan tanpa format.

rec-leng

Panjang record yang ditunjukkan oleh bilangan bulat (integer). Perintah ini hanya digunakan untuk ACCESS=DIRECT

Contoh penggunaan : Open(1,file = 'output.txt') C data input dalm layar dos write(*,'(5x,a,\)')'nilai x : ' menunjukkan Proses (Pengaturan Data dan File)45 unit specifier

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

read(*,*)x

no. File yang dituju (output.txt)

write(*,'(5x,a,\)')'nilai y : ' read(*,*)y C perhitungan z = x*y

write(*,'(5x,a)')'lihat hasil di file output.txt' C data output dalam file write(1,'(3x,a,f6.2)')'hasil kali x dengan y = ',z close(1) end Apabila program dieksekusi akan didapat hasil : nilai x : 3.5 nilai y : 66 lihat hasil perhitungan di file output.txt Press any key to continue Untuk melihat hasil dari perhitungan, lakukan langkah berikut : 1. 2. Klik File > open (Ctrl O) atau klik Ubah pilihan Files of type menjadi All Files(*.*)

Proses (Pengaturan Data dan File)-

46

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

3.

Double clik nama file yang ingin dibuka.

Hasil perhitungan dalam file yaitu :

Contoh diatas merrupakan contoh pengolahan data dengan input pada layar dos dan out put dalam file. Secara umum ada 3 cara pengolahan data dengan file : 1. 2. 3. Input pada layar dos dan output dalam file. Input dalam file dan output pada layar dos. Input dan output dalam layar.

Selain dalam bentuk .txt(notepad), file extension dari file penyimpanan bisa juga berupa bentuk lain. Contoh : data.doc (data akan tersimpan dalam format word) Proses (Pengaturan Data dan File)47

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

simpan.xls (data akan tersimpan dalam excel) output.abc (.abc adalah file extension buatan dan hanya bisa dibuka dalam notepad atau fortran)

input.tugas (hanya bisa dibuka dalam notepad atau fortran) asadff (tanpa file extension, hanya bisa dibuka dalam notepad atau fortran )

Nama file penyimpanan selain ditentukan dalam listing program, juga bisa ditentukan saat program dieksekusi. Contoh : character*4 a write(*,'(3x,a,\)')'nama file penyimpanan : ' read(*,*)a open(1,file = a) c data input dalm layar dos write(*,'(5x,a,\)')'nilai x : ' read(*,*)x write(*,'(5x,a,\)')'nilai y : ' read(*,*)y c perhitungan z = X*y c data output dalam file write(1,'(3x,a,f6.2)')'hasil kali x dengan y = ',z close(1) end Apabila program dieksekusi akan didapat hasil : Proses (Pengaturan Data dan File)48

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN DATA DAN FILE

MODUL 7

nama file penyimpanan : asdf nilai x : 3 nilai y : 2.3 Press any key to continue

CLOSE Pernyataan CLOSE digunakan untuk menutup file yang tidak diperlukan. Penutupan file ini diperlukan untuk space dalam main memory komputer. Bentuk umumnya adalah.

CLOSE(<unit spec>, STATUS=<status>)

<unit spec>

Menunjukkan nomor spesifikasi file. Nomor spesifikasi merupakan nilai integer kecuali 5 dan 6.

<status>

Status lanjutan dari file setelah ditutup. status=KEEP digunakan agar file tetap seperti semula, status=DELETE digunakan untuk menghapus file.

Contoh penggunaan : CLOSE(14,STATUS=DELETE)

Proses (Pengaturan Data dan File)-

49

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Tujuan 1. Memahami tentang metode metode penyelesaian masalah dengan program komputer. 2. Dapat mengatur program secara efektif dan efisien.

Perbekalan Praktikum Tujuan utama dalam penyusunan program komputer adalah untuk membantu dalam menyelesaikan masalah dalam bidang rekayasa. Secara umum, langkah-langkah yang diperlukan sejelaskan secara singkat sebagai berikut.

Langkah 1

Tentukan masalah yang akan diselesaikan (menyelesaikan persamaan matematika dengan metode numerik, misalnya). Pastikan bahwa masalah telah dikusai dengan baik.

Langkah 2

Analisis masalah tersebut. Tentukan secara tepat bagianbagian input, proses dan output serta hubungan antar ketiganya. Bagian ini merupakan bagian yang terpenting karena siapapun tidak ingin menyelesaikan masalah yang salah maupun menyelesaikan masalah yang benar dengan akan tetapi mendapatkan jawaban yang salah.

Langkah 3

Susun algoritma untuk menyelesaikan masalah. Algoritma harus disusun secara tepat tanpa ada keraguan dalam tiap langkahnya serta harus terdefenisi dengan baik dan tepat sehingga akan diketahui akibat dari perubahan tiap langkah yang dilakukan.

Proses (Pengaturan Program)- 25

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Langkah 4

Susun diagram alir sesuai dengan algoritma yang disusun dalam langkah3.

Langkah 5

Terapkan diagram alir tersebut dalam bentuk source code program. Walaupun masing-masing orang mempunyai bahasa pemograman favorit, akan tetapi pada saat tertentu dibutuhkan bahasa pemograman khusus untuk menyelesaikan masalah. FORTRAN-77 misalnya, khusus dibuat untuk menyelesaikan masalah dalam bidang sains dan teknologi.

Langkah 6

Pengujian dan verifikasi program. Bagian ini merupakan bagian tersulit dalam proses pemograman komputer. Untuk program yang besar dan kompleks, pengalaman dan latihan yang terus-menerus merupakan modal utama dalam melakukan pengujian dan verifikasi program ini.

Ketika menerapkan algoritma/diagram yang telah disusun dalam langkah 3 dan 4, terdapat beberapa langkah dalam menyusun dan mengeksekusi program. Langkah-langkah tersebut antara lain,

Langkah 1

Gunakan editor yang tersedia untuk menyusun program tersebut, gambar berikut memperlihatkan editor yang telah disediakan Compaq Visual Fortran. Simpan source code program tersebut sebagai source file.

Proses (Pengaturan Program)- 26

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Source code dalam editor

Source file

Langkah 2

Compile source dengan compiler yang tersedia (perhatikan kembali Modul 2). Jika terjadi kesalahan berupa syntax error, kembali ke langka 1. Jika tidak terjadi kesalahan, maka compiler akan membuat objec file.

Langkah 3

Dalam menyusun program yang besar dan kompleks, sangat disarankan untuk membagi-bagi program dalam bentuk subprogram (perhatikan gambar di atas untuk lebih jelas). Tiap subprogram dapat disusun dan di-compile tersediri sesuai dengan langkah 1 dan 2 di atas. Pola ini akan memudahkan dalam melihat, menyusun maupun menguji program yang disusun. Setelah semua

Proses (Pengaturan Program)- 27

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

subprogram telah selesai di-compile, langkah selanjutnya adalah meng-link semua file object tersebut. Langkah 4 Jika semuanya berjalan lancar, langkah berikutnya adalah mengeksekusi program untuk menguji dan memverifikasi program. Jika terdapat kesalahan berupa logic error, periksa kembali source code di langka 1.

Seperti telah disinggung sebelumnya, pengujian dan verifikasi program merupakan bagian yang paling sulit dalam penyusunan program komputer. Untuk program sederhana, pengujian dengan cara hand trace atau desk check dapat dilakukan jika terdapat kesalahan berupa logic error. Untuk program yang besar dan kompleks, fasilitas debugging dan tracing Compaq Visual Fortran dapat digunakan seperti terlihat dalam gambar berikut.

Proses (Pengaturan Program)- 28

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

3. Klik menu ini untuk memulai debugging

1. Klik ke batas baris yang diinginkan

2. Klik menu ini

Proses (Pengaturan Program)- 29

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Contoh proses pengujian program (debugging) : 1. Tempatkan kursor pada statement pertama pada awal program.

Proses (Pengaturan Program)- 30

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

2. 3. 4.

Tekan F9 pada keybord atau klik Tekan F5 pada keybord atau klik Tekan F11 berulang kali hingga panah kuning pada bagian kiri listing program berhenti berpindah.

5. 6. 7.

Masukkan data input (pada layar dos/file) Kembali Listing program dan ulangi menekan F11 Perhatikan perubahan nilai dari semua variable pada jendela variable, atau tulis nama variable tententu yang ingin diamati pada jendela watch

8. 9.

Ulangi langkah diatas sampai menemukan kesalahan dari program. Keluar dari Proses debugging dengan menekan Shift + F5 atau klik

Proses (Pengaturan Program)- 31

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Proses (Pengaturan Program)- 32

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN PROGRAM

MODUL 8

Proses (Pengaturan Program)- 33