BAB I
KONSEP, SIMBOL DAN ALAT ALGORITMA
PENDAHULUAN
Alat Bantu pemograman komputer ada beberapa macam, salah satunya adalah
algoritma. Sedangkan flowchart juga merupakan bagian dari algoritma. Dengan kedua
cara tersebut komputer hanya mengikuti intruksi dan tidak dapat melakukan sesuatu
sebelum diperintahkan. Oleh karena itu, perancang harus menuliskan setiap segi dari
permasalahan yang bersangkutan.
1.1 PROGRAM DAN PROGRAMING
Setelah menyelesaikan persoalan pemograman dengan menggunakan algoritma dan
flowchart, maka cara berikutnya adalah memasukan intruksi tersebut ke dalam bahasa
pemograman tertentu berupa suatu program. Program adalah serangkaian intruksi yang
disusun untuk menyelesaikan suatu pekerjaan dengan menggunakan komputer. Kegiatan
yang berhubungan dengan pembuatan program disebut programming.
Programing dibagi menjadi 5 (lima) tahap, yaitu:
1. mengerti persoalan yang akan dilaksanakan
2. menganalisa penyelesaian persoalan
3. menulis program dalam kertas coding
4. mencoba melaksanakan program (test dengan komputer)
5. menyusun dokumentasi
a. Mengerti persoalan yang akan dilaksanakan
Tahap ini adalah langkah pertama yang harus ditempuh dalam
programming. Tanpa mengerti persoalan apa yang akan dipecahkan,
mustahil berhasil menyelesaikan kegiatan selanjutnya.
b. Menganalisa penyelesaian persoalan
Tahap ini menyusun suatu cara menyelesaikan persoalan yang dihadapi. Proses
apa yang harus dilakukan, langkah mana yang harus diambil, pekerjaan apa yang
1
harus dilaksanakan dengan menggunakan komputer untuk menyelesaikan suatu
masalah.
c. Menulis program dalam kertas coding
Setelah urutan langkah untuk menyelesaikan suatu persoalan digambarkan dengan
menggunakan algoritma atau flowchart maka tiap langkah diwujudkan dalam
bentuk intruksi kepada komputer mengikuti aturan-aturan tertentu.
d. Mencoba melaksanakan program (test dengan komputer)
Tahap ini mencoba melaksanakan program dengan menggunakan data-data
percobaan. Jika cara menulis intruksi salah, komputer memberitahukan mengenai
kesalahan tersebut dan proses tidak dilanjutkan.
Jika hasil proses tidak seperti diharapkan, berarti program belum berhasil. Pada
tahap ini, perbaikan-perbaikan dilakukan sampai didapat hasil yang diinginkan.
e. Membuat dokumentasi
Jika program selesai di-test dan tak ada kesalahan lagi berarti program telah
mampu menangani persoalannya. Maka kegiatan terakhir adalah membuat
dokumentasi.
1.2. PENTINGNYA ANALISA
Betul tidaknya program berarti berhasil atau tidaknya program itu memproses data.
Proses berhasil apabila hasil proses seperti yang diinginkan. Hasil proses sangat
bergantung pada jalnnya proses. Jalannya proses ditentukan oleh urutan intruksi-intruksi
tak lain berdasarkan analisa pemecahan suatu permasalahan. Sebelum menulis program
harus dipikirkan akibat dari intruksi-intruksi, juga urutan intruksi-intruksi terhadap hasil
proses. Analisa yang baik menentukan sebagian besar keberhasilan program. dengan
menggunakan algoritma atau flowchart maka tiap langkah diwujudkan dalam
bentuk instruksi kepada kornputer mengikuti aturan-aturan tertentu.
2
1. Mencoba pelaksanaan program.
Tahap ini mencoba melaksanakan program dengan menggunakan data-data percobaan.
Jika cara menulis instruksi salah, komputer memberitahukan mengenai kesalahan tersebut
dan proses tidak dilanjutkan.
Jika hasil proses tidak seperti yang diharapkan, berati program belum berhasil. Pada
tahap ini, perbaikan-perbaikan dilakukan sampai didapat hasil yang diinginkan.
2. Membuat dokumentasi.
Jika program selesai di-test dan tak ada kesalahan lagi berarti program telah mampu
menangani persoalannya. Maka kegiatan terakhir adalah membuat dokumentasi.
1.3 ALGORITMA
1.3.1 PENGERTIAN
Algoritma adalah bagan yang menggambarkan tahap-tahap urutan instruksi dengan
menggunakan susunan kalimat.
Kalimat-kalimat yang disusun menggambarkan dengan jelas penyelesaian dari suatu
persoalan sehingga langkah awal sampai akhir dari penyelesaian tersebut akan mudah
dimengerti dan merupakan salah satu alat bantu dalam pemograman.
Contoh 1
Langkah yang dapat digunakan ketika ingin mengirimkan surat kepada teman adalah :
1. Tulis surat pada secarik kertas surat.
2. Ambit sampul surat.
3. Masukkan surat ke dalam sampul.
4. Tutup sampul surat menggunakan perekat.
5. Jika kita ingat alamat teman tersebut, maka tulis alamat pada sampul Surat. Jika
tidak ingat, lihat lebih dahulu pada buku alamat, baru kemudian kita tulis alamat
pada sampul surat.
6. Tempel perangko pada surat.
7. Bawa surat ke kantot pos untuk diposkan.
Contoh 2:
Langkah mencari akar bulat positif dari suatu bilangan bulat (integer) positif a :
3
Baca a.
Masukkan x sama dengan 1.
Hitung y sebesar x * x.
Jika y sama dengan a maka cetak x sebagai akar dari a.Selesai.
Tambah nilai x dengan 1.
Pergi ke langkah 3.
Program yang dapat dibuat dalam bahasa BASIC:
10 INPUT A 20X=1
30 Y = X * X
40 IF Y = A THEN PRINT X : END
50 X = X + 1 60 GOTO 30
Kalau kita masukkan nilai 4 misalnya, jelas akan tercetak nilai 2 sebagai akar dari 4.
Namun bila dimasukkan nilai 5 misalnya, langkah akan berlanjut tak berhenti. Memang
untuk A=5, akar bulatnya tak ada.
1.3.2 Sifat-sifat algoritma
1. Banyaknya langkah instruksi yang terbatas.
Jumlah langkah yang sesungguhnya dibutuhkan sebenarnya tergantung dari
perincian isi (detail) dari algoritma yang bersangkutan.
Jumlah langkah yang terdapat di dalam algoritma (Jumlah instruksi dalam
program) biasanya-jarang sesuai dengan jumlan langkah operasional yang
dilaksanakan. Jumlah langkah yang benar-benar dilaksanakan sesuai program
tergantung dari data masukan (input) dan t1dak selalu dapat dipastikan
sebelumnya.
Diperlukan suatu algoritma yang menuju kepada suatu prograrr, dan dapat
terpakai daiam waktu cukup lama. Hal pokok dari metode algoritma ialah
terdiri dari ulangan langkah-langkah yang sama, mungkin dengan
beberapa modifikasi, seringkali dilaksanakan selanna suatu waktu tertentu.
4
2. Jelas.
Penulisan dari setiap langkah yang terdapat dalam sebuah algoritma harus
memiliki arti yang khusus atau spesifik. Penulisan langkah bagi komputer dapat
berbeda dengan penulisan bagi manusia. Manusia akan mudah mengerjakan
algoritma
yang terdiri dari simbol, sedang komputer membutuhkan algoritma dengan kode
yang dituangkan dalam program. Hal ini berarti bahwa setiap kali suatu algoritma
dilaksanakan dengan data masukan yang sama maka akan diperoleh hasil yang
sama pula.
3. Batasan dari rangkaian proses harus pasti.
Rangkaian proses yang berisi langkah-langkah dari suatu algoritma yang akan
dilaksanakan, harus ditetapkan dengan pasti. Sebuah algoritma harus memiliki
instruksi dasar tertentu (yang spesifik) dan setiap instruksi harus memiliki unsur
pelaksana yang memproses data masukan. Di dalam spesifikasi secara algoritmik,
termasuk spesifikasi program, instruksi dilaksanakan dari atas ke bawah kecuali
bila ada ketentuan lain, seperti alih kendali bersyarat atau tidak bersyarat
4. Efektif.
Instruksi dari sebuah algoritma dapat memerintahkan komputer agar hanya me-
laksanakan penugasan yang mampu dilaksanakannya saja. Komputer tidak dapat
melaksanakan instruksi, jika informasinya tidak lengkap atau jika hasil dari
pelaksanaan perintah tidak diberi batasan yang jelas.
1.4 FLOWCHART
Flowchart adalah bagan yang menggambarkan urutan instruksi untuk proses
dengan komputer dan hubungan antara suatu proses dengan proses lainnya dengan
menggunakan simbol-simbol.
Dibagi menjadi dua yaitu :
1. System flowchart
5
Adalah melukiskan urutan operasi pemrosesan data baik yang manual maupun
dengan komputer. Diberikan pula aliran data, file yang digunakan selama proses
dan pengontrolannya.
2.Program flowchart.
Adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan
proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan
proses lainnya dalam suatu program.
Simbol-simbol yang sering dipakai :
a. Simbol dasar
Simbol KegunaanProses proses/pengolahan
untuk perhitungan dan mengubah harga
Input-output
Operation
- operasi input-output (membaca dan
menulis data)
Connector - penghubung dalam satu halaman
Off-page
connector
- penghubung antar halaman
Arrow - tanda panah untuk menunjukkan arch
6
Decision - pertanyaan
- penentuan kepusan (ya/tidak)
Preparetion - Memberikan harga awal
- Memben harga dari switch
- Mengubah index register
Terminal - Menyatakan permulaan dan akhr dari
proses
- Kartu
- Magnetic tape
- disk
- dokumen
7
1.5 STRUKTUR DASAR LOGIKA
Untuk mengatur jalannya prosedure yang perlu dilaksanakan, diperlukan struktur dasar
logika. Dari struktur dasar ini akan terbentuk suatu program yang diperlukan untuk
menyelesaikan persoalan yang ada.
Macam-macam struktur dasar :
a. struktur sederhana.
Terdiri atas satu proses yang diikuti proses yang lain
Contoh :
1. Dalam suatu file yang terdiri dari 1 record yang berisi field nama, nim, nilai l dan
nilai2. Akan dihitung rata-rata dari kedua nilai dan cetak.
Penyelesaiannya:
Diminta untuk menghitung jumlah upah yang diterima oleh seorang karyawan, jika
diberikan ketentuan sebagai berikut
a. Input : - Nama Karyawan
- Nomor Induk
- Jumlah jam kerja
b. Output :
Nama : x----------------x
Nomor I nduk : x----------x
Jumlah Jam Kerja : xxx
Jumlah Upah : Rp. x-----x
Tabungan : Rp. x-----x
Jumlah Terima : Rp. x-----x
c. Rumus yang digunakan :
- Jumlah Upah = Jumlah jam kerja x upah per jam.
- Tabungan = 5 % dari jumlah upah.
8
- Jumlah terima = Jumlah upah - tabungan.
- Upah per jam = Rp. 1500,00.
Kerangka algoritma untuk soal diatas ialah sbb :
Mulai.
Baca input :
(Baca NAMA, NO-INDUK, JML-JAM)
Hitung jumlah upah :
(JML-UPAH = JML-JAM - 1500)
Hitung tabungan :
(iABUNGAN = 0.05 - JML-UPAH)
Kurangi jumlah upah dengan tabungan untuk mendapatkan jumlah terima:
(JML-TERIMA = JML-UPAH - TABUNGAN)
Cetak output :
(CETAK NAMA, NO-IND, JML-JAM, JML-UPAH, TABUNGAN, JML-
TERIMA) Selesai.
Bagan arusnya adalah :
b) struktur pilihan
Suatu kondisi adalah penetaan nilai variabel atau ketergantungan antara nilai-nilai dari 2
atau beberapa variabel. Nilai suatu kondisi dapat di test da menghasilkan kondisi benar
atau salah.
Untuk melakukan test kondisi biasanya digunakan operasi relasi sebagai berikut :
NOTASI ARTI
=
/ <>
>
<
Sama dengan
Tidak sarna dengan
Lebih besar
Lebih kecil
Lebih besar atau sama dengan
Lebih kecil atau sama dengan
9
Struktur pilihan terbagi atas :
1. pilihan sederhana
Contoh :
1. Dalam suatu file yang terdiri dari 1 record yang berisi field nama,nim dan
jenis kelamin. Akan diadakan pilihan untuk jenis kelamin wanita yang akan
dicetak.
2. Lihat kembali contoh 2. pada struktur sederhana, dikembangkan dengan di-
tambah ketentuan sebagai berikut :
Jika jumlah upah > Rp. 150.000,00 dikenakan pajak sebesar 5% nya, sehingga
jumlah terima dihitung dengan ketentuan sebagai berikut :
Jumlah terima = jumlah upah - tabungan - pajak
Output :
Nomor Induk xx
Jumlah Jam Kerja xxx
Jumlah Upah Rp. x x
Tabungan Rp. x x
Pajak Rp. x x
Jumlah Terima Rp. x x
Catatan : baris yang berisi pajak dicetak hanya untuk wajib pajak (jumlah
upah > Rp. 150.000,00)
2. Pilihan ganda
Contoh :
Dalam suatu file yang terdiri dari 1 record berisi field Hama, Him, nilail, nilai2. Hitung
rata-rata kedua nilai dan adakan pilihan untuk
* rata-rata >= 60 ket = lulus
* rata-rata < 60 ket = tak lulus
10
3. Pilihan Majemuk
Contoh :
Dalam suatu file berisi 1 record yang berisi field Hama, nim, nilail, nilai2 dan jenis
kelamin. Akan diadakan pilihan
jika jk = w, hit rata-rata jika >=60, ket=lulus
< 60, ket=tak lulus
jika tidak, hit rata-rata jika >=75, ket=lulus
< 75, ket=tak lulus
Cetak jk dan ket
Seringkali test kondisi yang dilakukan untuk pilihan majemuk berupa nilai dari kode-
kode tertentu, maka bentuk strukturnya adalah sebagai berikut (misal dengan 4 pilihan) :
Contoh :
Diberikan data pelanggan air minum dengan susunan sebagai berikut :
Nama
Nomor Pelanggan
Kriteria
jumlah pemakaian air (dalam m3)
Hitung dan cetak jumlah pembayaran dari pelanggan tersebut, jika diminta hasil output
sebagai berikut :
Nama : x------x
Nomor Pelanggan : x------x
Jumlah pemakaian air : x---x
Tarip Dasar : Rp. x---x
Tarip pemakaian : Rp. x---x
Jumlah Bayar : Rp. x---x
11
Ketentuan yang diberikan :
Tarip dasar dihitung berdasarkan kriteria pelanggan.
Tabel kriteria diberikan berikut ini :
KODE TARIP DASAR
1 (Rumah tangga) Rp. 4.000,00
2 (Industri) Rp. 15.000,00
3 (Instansi Pemerintah) Rp. 1.000,00
4 (Lembaga Sosial) Rp. 500,00
5 (Warung air) Rp. 2.500,00
b. Untuk menekan pemakaian air, digunakan tarip sebagai berikut :
PEMAKAIAN AIR (M3) TARIP PER M3
60
> 60 DAN 100
> 100
200
215
225
c) struktur berulang
Disebut juga loop yang menimbulkan pelaksanaan instruksi atau serangkaian instruksi
secara berulang sepanjang kondisi tertentu masih menghendaki.
Untuk setiap kali instruksi-instruksi yang berada di dalam sebuah loop atau body dari
loop dilaksanakan, paling tidak satu nilai variabel akan berubah.
Contoh :
Dalam file yang terdiri dari beberapa record yang berisi field Hama, Him, jenis kelamin.
Akan dicetak untuk jenis kelamin=w
Contoh 1 :
Di dalam system flowchart digambarkan :
12
1. hubungan antara file 1 dengan file lain.
2. media dari trap-trap file.
3. program yang digunakan untuk proses file-file tadi.
4. hubungan program 1 dengan program lainnya.
Dengan kata lain, system flowchart memberikan gambaran umum mengenai suatu
system.
System flowchart dibuat oleh system analist.
Contoh 2:
Program flowchart menunjukkan gambaran dari suatu program secara mendetail, berupa
urutan-urutan dari instruksi yang diberikan oleh programmer kepada komputer.
Program flowchart dibuat oleh progammer sebelum menulis program di kertas koding.
RINGKASAN
Dengan menyusun algoritma yang benar dan diterapkan pada pembuatan
flowchart yang benar pula maka penyusunan program untuk memecahkan persoalan
dalam berbagai bahasa akan mudah karena algoritma dan flowchart merupakan dasar
dalam pembuatan program.
LATIHAN
Tentukan bilangan terbesar diatas 3 bilangan bulat yang diberikan dan cetak
bilanganterbesar dan bilangan terkecil.
Seleksi calon mahasiswa sebuah perguruan tinggi komputer menggunakan alat bantu
komputer. Data hasil test masuk calon mahasiswa tersimpan dalam file dengan nama
TEST,terdiri no.test,nama,nilai matematika,nilai pancasila,nilai bahasa Inggris.
Proses penerimaan berdasarkan rata-rata ketiga nilai dengan bobot masing-masing
matematika=40%, pancasila=20%, Inggris=40%.
Dimana mereka yang diterima adalah apabila niai rata-ratanya >=70.
13
Tentukan algoritma untuk proses diatas.
Tentukan dengan algoritma proses pelaksanaan menelpon ke AMIK Dian Nuswantoro
dikarenakan Anda tidak bisa mengikuti pelajaran hari ini dikarenakan sakit.
Cari nilai rata-rata dari suatu data yang dimasukkan dan cetaklah nilai rata-rata itu.
14
BAB II
KONSEP PEMPROGRAMAN TERSTRUKTUR
PENDAHULUAN
Suatu program dikatakan baik jika :
1. bekerja sesuai dengan tujuan dan memenuhi spesifikasi yang telah ditentukan.
2. fleksibel.
3. tidak mengandung kesalahan.
4. didokumentasikan secara baik.
5. cepat dalam waktu pelaksanaannya.
6. efisien dalam penggunaan memori komputer.
Hal diatas dapat terlaksana dengan baik, jika tahap-tahap penyelesaiannya berurutan.
Karena pemrosesan data yang diolah yang memenuhi kriteria tertentu harus berurutan
maka penggunaan counter (perulangan) sangat membantu.
3.1 DASAR TEHNIK COUNTER
Counter adalah suatu variabel yang nilainya bertambah dengan 1 setiap kali
terjadi pengulangan proses.
Variabel adalah suatu nama yang digunakan untuk mewakili suatu besaran konstanta.
Sedangkan konstanta itu sendiri terbagi atas :
1. konstanta string
Merupakan deretan alphanumerik yang berada dalam double tanda petik.
Contoh :-AMIK Dian Nuswantoro"
-Rp. 500"
2. konstanta numerik
Merupakan bilangan positip atau negatip.
15
Beberapa penggunaan counter misalnya :
a. untuk menghitung jumlah record.
b. untuk menghitung jumlah suatu kasus tertentu.
c. untuk menghitung jumlah pengulangan.
Pandang: sederetan orang yang berdiri di luar ruangan.
Akan dihitung berapa banyaknya orang itu. Sediakan tempat untuk menampung
perhitungan. Namakan tempat itu JUM_OR dan mula-mula kosong.
Orang itu masuk satu persatu ke dalam ruangan. Tiap seorang masuk, isilah JUM_OR
dengan sebatang kayu. Dengankata lain isi JUM_OR ditambah dengan satu batang kayu
setiap satu orang masuk. Setelah semua orang masuk, banyaknya batang kayu pads
JUM_OR = jumlah orang. Atau isi JUM_OR = jumlah orang. Fungsi JUM_OR adalah
sebagai counter.
3.2 COUNTER SEDERHANA
Pandang : akan dihitung jumlah pegawai suatu kantor. Tiap pegawai diwakili
dengan sate record pegawai. Tiap record berisi : nama pegawai, gaji pegawai.
Contoh input : Contoh laporan :
Tiap record akan dicetak pada 1 baris diakhir laporan akan dicetak jumlah pegawai.
Orang memasuki ruangan analog dengan record masuk ke storage. Masuknya record ke
storage, ketika dibaca oleh input unit.
JUM_OR berupa satu lokasi dalam storage. Pada persoalan berikut, lokasi
tersebut diberi nama JUM_PEG. Karena yang akan dihitung jumlah pegawai,
JUM_PEG berlaku sebagai counter.
Pada saat pertama menghitung, JUM_OR harus kosong yang berarti JUM_PEG
juga harus kosong atau JUM_PEG = 0. Isi JUM_OR ditambah setiap kali prang masuk,
demikian pula dengan JUM_PEG.
Ketika /*masuk, JUM_PEG tak perlu ditambah 1
Pada aksi JUM_PEG ditambah 1'dilakukan jika / * belum dibaca.
16
3.3 COUNTER UNTUK KONDISI KHUSUS
Di dalam sebuah file siswa, terdiri dari record-record siswa kelas 1, 2, dan 3.
Ditanyakan jumlah siswa tiap-tiap kelas. Dalam hal seperti ini, konsep counter dan
kondisi aksi digabungkan. Karena harus memisahkan 3 macam total di atas maka harus di
chek kondisi tiap siswa : apakah kelas 1, 2, atau 3.
Jika field kelas berisi angka 1 berarti siswa tersebut kelas 1. Demikian juga untuk field
kelas yang berisi angka 1 dan 2. Tiap record siswa akan dicetak pada tiap baris dan pada
akhir daftar dicetak :
jumlah siswa kelas 1
jumlah siswa kelas 2
jumlah siswa kelas 3
Dengan demikian maka harus disediakan 3 macam variabel sebagai counter, yaitu
tk 1 : untuk total siswa kelas 1
tk 2 : untuk total siswa kelas 2
tk 3 : untuk total siswa kelas 3
Laporan yang diharapkan sebagai berikut:
NAMA KELAS
ALI 2
SRI 1
TONI 3
ARI 3
JULI 1
ATI 1
SISWA KELAS 1 = 3 ORANG
SISWA KELAS 2 = 1 ORANG
SISWA KELAS 3 = 2 ORANG
17
Kesimpulan :
Tiap record (bukan/*) masuk, tanyakan isi field kelas.
Jika field kelas = 1 tk 1 ditambah 1
Jika field kelas = 2 tk 2 ditambah 1
Jika field kelas = 3 tk 3 ditambah 1
Dan jika record /* cetak tk 1, tk 2, tk 3.
3.4 ACCUMULATOR
Accumulator adalah suatu variabel yang digunakan untuk menyimpan jumlah
kumulatif suatu elemen data tertentu.
Sebelum proses, akumulator berharga nol. Sebaliknya akumulator akan bertambah sesuai
dengan isi elemen data yang sedang dihitung jumlah kumulatifnya.
Pada bagian yang lalu telah dihitung jumlah orang yang memasuki ruangan.
Pada bagian ini dimisalkan tiap-tiap orang membawa sejumlah uang. Dan per-
masalahannya adalah menghitung berapa jumlah uang semua orang.
Tempat untuk menampung uang itu misalkan JU yang mula-mula kosong.
Setiap kali orang masuk, uang yang dibawa diletakkan pada JU. Sehingga isi JU tiap kali
bertambah seharga uang yang dibawa tiap-tiap orang. Setelah semua orang masuk, isi
JU=jumlah uang semua orang. JU berfungsi sebagai akumulator.
Contoh :
Tiap record dalam suatu file berisi : - nama
-tinggi badan
Output berupa daftar di mana akhir daftar dicetak tinggi rata-rata.
18
Penyelesaiannya :
Untuk mencari tinggi rata-rata, perlu dicari total tinggi semua orang. Kemudian total
tinggi dibagi jumlah orang, menghasilkan tinggi rata-rata.
Jumlah orang = JO
Total tinggi = TT
Tinggi rata-rata = TR
3.5 PEMAKAIAN COUNTER SEBAGAI PENGONTROL PENGULANGAN
PROSES
Apabila dalam suatu proses terdapat satu atau beberapa kegiatan yang perlu
dilaksanakan berulang kali, maka jumlah pengulangannya dapat dikontrol dengan
menggunakan konsep counter. Misalnya terjadi keadaan sbb :
urutan kegiatan adalah :
aksi A
aksi B
aksi C
aksi D
aksi B
aksi C
aksi D
aksi B
aksi C
aksi D
aksi C dst
Tampak bahwa rangkaian aksi B,C,D diulang 3 kali, sesudah A dan sebelum C. Pada
tahap pengulangan misalkan N, isi N bertambah 1 yaitu tiap kali B,C,D dilaksanakan.
Perlu diperhatikan berapa isi N sebelum rangkaian B, C, D dilaksanakan.
Misalnya N = 0, lalu bagaimana membatasi pengulangan agar hanya 3 kali saja. Tiap kali
sampai akhir rangkaian B, C, D periksa isi N.
19
Karena hanya 3 kali saja, maka tanyakan apakah N sudah mencapai 3. Kalau tidak, ulangi
aksi B.
3.6 PENGGUNAAN LANJUT COUNTER DAN ACCUMULATOR
Dalam bagian ini akan dibahas mengenai minor dan mayor total.
Minor total adalah penjumlahan untuk tiap-tiap bagian.
Mayor total adalah penjumlahan untuk seluruh bagian.
20
BAB III
MATRIK (ARRAY)
PENDAHULUAN
Dalam menyelesaikan persoalan pemrograman yang menggunakan jajaran
data, penggunaan dimension sangat diperlukan. Hal ini dilakukan agar semua
data yang dimasukkan akan tetap tampil.
Dengan penggunaan array, berarti kita memesan tempat dalam memory untuk
menyimpan data yang kita buat.
4.1 PENGERTIAN ARRAY
Telah kita kenal apa yang dinamakan variabel balk numerik maupun karakter.
Variabel-variabel itu dalam pengolahan mempunyai satu nilai tertentu. Setiap
satu variabel mempunyai satu nama yang spesifik clan mempunyai satu nilai
tertentu.
Cara ini hanya cocok untuk jumlah data yang sedikit. Bayangkan jika
harus menampung suatu data sebanyak 20 data. Menggunakan 20 nama
variabel akan menyulitkan dalam pengolahan. Cara untuk mengatasi masalah
ini adalah dengan menyusun suatu matrik (array) sebagai langkah penyederhanaan dari
nama variabel. Pembentukan matrik dilakukan dengan jalan memberikan subscript
terhadap suatu variabel. Misalkan tabel untuk data yang terdiri 10 data. Maka dengan
dibuat suatu matrik, tidak membutuhkan 10 variabel melainkan 1 variabel saja.
Subscript adalah bilangan yang menyatakan "nomor urut" variabel dari suatu
label. Sehingga untuk data seperti di atas, digunakan variabel nm$, nim$, nill, ni12
dengan ditambah subscriptnya. Misalkan untuk data ke 3, ditulis :
nm$(3) nim$(3) Hill (3) nil2(3)
nm$, nim$, nill, N12 adalah variabel dan 3 (ditulis di antara tanda kurung) adalah
subscript.
Dengan demikian, untuk menyatakan elemen matrik tertentu cukup dengan
merubah nilai subscriptnya.
21
Dapat disimpulkan bahwa matrik adalah sejumlah elemen data yang mempunyai
kesamaan bentuk maupun arti yang dinyatakan dalam satu Hama variabel yang diberi
subscript.
Dari soal di atas, bila kits ingin menghitung rata-rata dari Hill dan ni12 untuk
setiap mahasiswa, ditambah variabel rt dan bentuk flowchartnya:
Dengan pembacaan data seperti di atas maka jumlah data yang tersedia terbatas. Agar
data yang kita masukkan berlaku umum dalam arti tidak terbatas, gunakan pemasukan
data "banyaknya data = "n".
Sehingga soal di atas menjadi :
Dari contoh di atas terlihat bahwa data akan dibaca secara urut mulai dari 1 to n.
Penggunaan dimension dalam jajaran data sangat penting. Tanga menggunakan
dimension maka tampilan data hanya pads data yang terakhir.
4.2 MEMBERI DIMENSI JAJARAN VARIABEL
Untuk menyimpan beberapa bilangan atau string dalam sebuah jajaran, diperlukan
nilai subscript sebanyak minimal bilangan yang dimasukkan.
Kalau kita mempunyai 10 data maka nilai subscript yang dapat dipakai minimal 10. IN
berarti kita pesan dalam memory sebanyak 10 tampat. Jajaran data yang demikian
merupakan jajaran data 1 dimensi.
Kita dapat menggunakan jajaran data 2 dimensi. Jajaran data 2 dimensi dapat
digambarkan sebagai sebuah lemari yang memiliki beberapa deretan kotak-kotak
Sehingga kalau data seperti contoh di atas digambarkan dalam bentuk tabel adalah :
Hama Him Hill N12 rt
Sedangkan bentuk dimensinya adalah : nm$(i,1), nim$(i,2), Hill (i,3), nil2(i,4), ket$(i,5)
dengan i=baris, i=1, 2, ..., n dan j=kolom, j=1, 2, 3, 4, S.
22