DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

60
PENUNTUN PRAKTIKUM PEMOGRAMAN KOMPUTER BAHASA FORTRAN LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FAKULTAS TEKNIK-UNIVERSITAS ANDALAS PADANG

description

h

Transcript of DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

Page 1: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

PENUNTUN PRAKTIKUM PEMOGRAMAN KOMPUTER

BAHASA FORTRAN

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FAKULTAS TEKNIK-UNIVERSITAS ANDALAS PADANG

Page 2: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 1

Tujuan

1. Memahami komponen utama komputer pribadi (Personal Computer).

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

Page 3: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 2

b. Main Memory. Perangkat lunak/program (software) dan data-data

yang diperlukan akan disimpan dalam main memory. Perintah-

perintah 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

Page 4: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 3

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, langkah-

langkah berikut sangat penting untuk dilakukan.

a. Perumusan masalah.

b. Penyusunan algoritma.

c. Penyusunan diagram alir (flow chart).

d. Pengkodean program (source code).

Page 5: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 4

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. Mulai. 2. Baca lebar, panjang dan tinggi balok. 3. Hitung V=l*p*t. 4. Tulis volume 5. Selesai.

c. Diagram Alir

Diagram alir merupakan gambaran/notasi tentang alur (pola fikir)

program komputer yang akan dibuat. Diagram alir memegang peranan penting

Page 6: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 5

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

Page 7: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 6

Tabel 1. Gambaran/notasi yang umum digunakan dalam diagram alir

No. Gambar/notasi Arti

1.

Titik terminal untuk mulai, selesai dan kembali. Jika untuk mulai tulis START, selesai tulis STOP dan kembali tulis RETURN

2.

Input dan/atau output. Jika digunakan untuk input, tulis READ: dan jika untuk output, tulis WRITE: dan diikuti dengan variabel yang akn dibaca/ditulis

3.

Proses. Tuliskan proses yang akan dilakukan komputer dalam kotak yang tersedia

4.

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

Page 8: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENDAHULUAN MODUL 1

Pendahuluan - 7

untuk tanda sambung.

5.

atau

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. Garis aliran. Ujung panah menunjukkan arah aliran

Tugas :

1. Buat algoritma dan diagram alir untuk menghitung kecepatan

kendaraan dengan input berupa jarak dan waktu tempuh.

2. Buat laporan awal untuk modul 2.

Page 9: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 8

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

Page 10: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 9

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 bagian-

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

Page 11: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 10

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

Page 12: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 11

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

Page 13: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 12

membuat dan menyusun program komputer dalam editor akan dijelaskan

asisten dalam praktikum

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

kompilasibuild

eksekusi

Page 14: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 13

2. Build

- klik pada [build] > [build nama file.exe]

- atau klik pada toolbar

- atau F7

3. Execute program

- klik pada [build] > [execute]

- atau klik 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)

Page 15: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 14

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 Byte Keterangan

INTEGER 2 Bilangan bulat (-32767 – 32767)

INTEGER*2 2 Bilangan bulat (-32767 – 32767)

INTEGER*4 4 Bilangan bulat (-2147483647 –

2147483647)

REAL 4 Bilangan desimal (floating point) Untuk bilangan positif 8.43E-37 – 3.37E38 Untuk bilangan negative -3.37E38 – -8.43E-37

REAL*4 4 Sama dengan REAL

REAL*8 8 Bilangan desimal (floating point)

DOUBLE

PRECISION

8 Identik dengan REAL*8

COMPLEX 8 Bilangan kompleks

COMPLEX*8 8 Bilangan kompleks

COMPLEX*16 16 Bilangan kompleks

DOUBLE

COMPLEX

16 Identik dengan COMPLEX*16

LOGICAL 4 Logika .TRUE. dan .FALSE.

Page 16: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 15

LOGICAL2 2 Logika .TRUE. dan .FALSE.

LOGICAL4 4 Logika .TRUE. dan .FALSE.

CHARACTER 1 Karakter (bukan angka)

CHARACTER*

n

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

1 Kolom 1 Komentar. Jika pada kolom 1 diberi huruf C

atau *, maka semua karakter yang

mengikutinya dikategorikan sebagai

komentar.

2 Kolom 1-5 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.

Page 17: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 16

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 bahwa input

dilakukan melalui keyboard (terlihat pada

monitor). Karakter * atau angka 6 menunjukkan

bahwa output ditampilkan melalui monitor.

<format spec> Menunjukkan format input/output untuk

var1,var2,…. Karakter * pada <format

spec> menunjukkan format bebas (free format).

Untuk input disarankan untuk menggunakan

Page 18: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 17

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 = ……..hasil dari

WRITE(*,*)’Nilai A = ‘

6 ……..ditulis (berdasarkan

READ(*,*)A)

Nilai A = 6.000000 ……..hasil dari

WRITE(*,*)’Nilai A = ‘,A

Press any key to continue

FORMAT

Page 19: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 18

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.

Page 20: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 19

Tabel 2. Edit Descriptor dalam FORTRAN-77

No. Tipe Editing Bentuk umum

Arti notasi

1. Character <n>A<w

>

<n>

<w>

jumlah pengulangan jumlah karakter

2. Integer <n>I<w

>

<n>

<w>

jumlah pengulangan jumlah digit integer

3. Real <n>F<w

>.<d>

<n>

<w>

<d>

jumlah pengulangan jumlah digit termasuk desimal jumlah desimal

4. Real Exponensial

<n>E<w

>.<d>

<n>

<w>

<d>

jumlah pengulangan jumlah digit termasuk desimal jumlah desimal

5. Logika <n>L<w

>

<n>

<w>

jumlah pengulangan jumlah digit data

6. Apostrophe ‘<k>’ <k> karakter

7. Positional <n>X <n> jumlah pengulangan

8. Slash / turun satu baris

9. Backslash \ naik satu baris

10. Blank interpretation

BN

BZ

blank=kosong blank=nol

Page 21: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 20

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 :

Page 22: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 21

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) tiga baris kosong (///)

dilaboratorium komputasi laboratorium dan komputasi digabung (\)

Press any key to continue

Tugas :

Tentukan format terbaik untuk nilai :

- 32767

- -32768

Page 23: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

DASAR-DASAR

PEMOGRAMAN

KOMPUTER

MODUL 2

Dasar-dasar Pemograman Komputer - 22

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

Page 24: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 23

Tujuan

1. Memahami perintah-perintah berupa proses dalam pemograman

komputer.

2. Memahami tentang logika dan kontrol dalam proses.

3. Dapat menyusun program komputer lanjutan.

Perbekalan Praktikum

Bagian utama pemograman komputer adalah bagaimana proses

(perhitungan misalnya) dilakukan. Dalam praktikum ini akan

dijabarkan/diterapkan proses dalam pemograman komputer dengan

menggunakan,

1. Operator aritmatika.

2. Logika dan kontrol.

3. Proses pengulangan.

4. Penggunaan array.

5. 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,

Page 25: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 24

Operator Operasi/Arti Hirarki

** Pangkat 1

* Kali 2

/ Bagi 2

+ Tambah 3

- Kurang 3

= Sama dengan -

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>

Page 26: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 25

<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 Arti

.GT. lebih lebar dari

.GE. lebih besar dan sama dengan

.LT. lebih kecil dari

.LE. lebih kecil dan sama dengan

.EQ. sama dengan

.NE. 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'

Page 27: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 26

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 Arti

.NOT. tidak

.AND. dan

.OR. atau

.XOR. ekslusif atau

.EQV. ekivalen

.NEQV. tidak ekivalen

Contoh penggunaan :

Write(*,'(3X,A,\)')'NILAI A = '

READ(*,*)A

Write(*,'(3X,A,\)')'NILAI B = '

READ(*,*)B

Write(*,'(3X,A,\)')'NILAI C = '

Page 28: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 27

READ(*,*)C

If((a.lt.b).and.(a.lt.c))write (*,*)'nilai a yang

terkecil'

IF((A.GE.B).OR.(A.GE.C))WRITE(*,*)'NILAI A BUKAN YANG

TERKECIL'

End

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'

Page 29: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 28

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-ELSE-

ENDIF

IF-THEN-ELSEIF-

ELSE-ENDIF

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(<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

Page 30: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 29

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 :

Page 31: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES Operator &

Logika MODUL 3

Proses (Operator & Logika)- 30

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.

Page 32: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Perulangan MODUL 4

Proses (Perulangan)- 31

Tujuan

1. Memahami perintah-perintah perulangan.

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

Page 33: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Perulangan MODUL 4

Proses (Perulangan)- 32

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 Nilai awal perulangan.

n2 Nilai akhir perulangan.

inc Incremental, penambahan langkah setiap

Page 34: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Perulangan MODUL 4

Proses (Perulangan)- 33

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

Page 35: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Perulangan MODUL 4

Proses (Perulangan)- 34

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 WHILE…END 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

Page 36: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Perulangan MODUL 4

Proses (Perulangan)- 35

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)

Page 37: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Array MODUL 5

Proses (Array)- 36

Tujuan

1. Memahami penggunaan array.

2. 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 CONTINUE

20 CONTINUE

10 CONTINUE

Dengan notasi matematika program di atas ditulis sebagai,

( )4

ij ik kjk 1

a b .c=

= ∑

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

Page 38: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Array MODUL 5

Proses (Array)- 37

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 Nilai awal dan nilai maksimum indeks ke-1.

n2:m2 Nilai awal dan nilai maksimum indeks ke-2.

nn:mn 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

Page 39: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Array MODUL 5

Proses (Array)- 38

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

30 CONTINUE

20 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 CONTINUE

20 CONTINUE

10 CONTINUE

Page 40: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Array MODUL 5

Proses (Array)- 39

Page 41: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Subprogram MODUL 6

Proses (Subprogram)- 39

Tujuan

1. Memahami perintah dan penggunaan subprogram.

2. 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 Cara pemanggilan

SUBROUTINE

<nm>(vr1,…varn)

<deklarasi varibel>

<inisialisasi variabel>

PROGRAM <nama program

utama>

.

.

CALL <nm>(vra,…varz)

Page 42: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Subprogram MODUL 6

Proses (Subprogram)- 40

<executable statement>

RETURN

END

.

.

STOP

END

<nm> Nama

subroutine

<nm> Nama

subroutine

vr1,…varn Variabel yang

digunakan

dalam

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)

Page 43: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Subprogram MODUL 6

Proses (Subprogram)- 41

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 CONTINUE

20 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 Cara pemanggilan

<td>FUNCTION

<nm>(vr1,…varn)

PROGRAM <nama program

utama>

Page 44: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Subprogram MODUL 6

Proses (Subprogram)- 42

<deklarasi varibel>

<inisialisasi variabel>

<executable statement>

RETURN

END

.

.

vo=<nm>(vra,…varz)

.

.

STOP

END

<nm> Nama function.

Nama ini harus

sama dengan

nama variabel

yang nilainya

ingin

ditentukan.

<nm> Nama function

Nama ini harus

sama dengan

nama variabel

yang nilainya

ingin

ditentukan.

vr1,…varn Variabel yang

digunakan

dalam function

vra,…varz Variabel yang

digunakan

dalam program

utama.

Variabel ini

tidak perlu

sama dengan

vr1,…varn,

akan tetapi

harus dengan

tipe yang sama

Page 45: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PROSES

Subprogram MODUL 6

Proses (Subprogram)- 43

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

Page 46: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 44

Tujuan

1. Memahami tentang metode pengolahan data dan file.

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

Page 47: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 45

<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 : ' unit specifier

menunjukkan

Page 48: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 46

read(*,*)x no. File yang dituju

write(*,'(5x,a,\)')'nilai y : ' (output.txt)

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. Klik File > open (Ctrl O) atau klik

2. Ubah pilihan Files of type menjadi All Files(*.*)

Page 49: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 47

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. Input pada layar dos dan output dalam file.

2. Input dalam file dan output pada layar dos.

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

Page 50: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 48

- 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 :

Page 51: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

DATA DAN FILE MODUL 7

Proses (Pengaturan Data dan File)- 49

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

Page 52: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 25

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 bagian-

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

Page 53: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 26

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.

Page 54: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 27

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

Source code dalam editor

Source file

Page 55: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 28

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.

Page 56: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 29

2. Klik menu ini 1. Klik ke batas baris yang diinginkan

3. Klik menu ini untuk memulai debugging

Page 57: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 30

Contoh proses pengujian program (debugging) :

1. Tempatkan kursor pada statement pertama pada awal program.

2

3

1

Page 58: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 31

2. Tekan F9 pada keybord atau klik

3. Tekan F5 pada keybord atau klik

4. Tekan F11 berulang kali hingga panah kuning pada bagian kiri listing

program berhenti berpindah.

5. Masukkan data input (pada layar dos/file)

6. Kembali Listing program dan ulangi menekan F11

7. Perhatikan perubahan nilai dari semua variable pada jendela variable,

atau tulis nama variable tententu yang ingin diamati pada jendela watch

8. Ulangi langkah diatas sampai menemukan kesalahan dari program.

9. Keluar dari Proses debugging dengan menekan Shift + F5 atau klik

Page 59: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 32

4 7 9

Page 60: DIKTAT PENUNTUN PRAKTIKUM fortran_2.pdf

LABORATORIUM KOMPUTASI JURUSAN TEKNIK SIPIL FTUA

PENGATURAN

PROGRAM MODUL 8

Proses (Pengaturan Program)- 33