mlp1~algoritma pemrograman
TRANSCRIPT
MODUL 1
PENGERTIAN DASAR LOGIKA DAN ALGORITMA
A. Tujuan Pembelajaran
Setelah mempelajari modul ini diharapkan siswa dapat :
1. Menyebutkan pengertian dasar logika dan algoritma
2. Menyebutkan kriteria pemilihan algoritma
3. Menyebutkan contoh algoritma sederhana
4. Menyebutkan sifat-sifat algoritma
5. Menyebutkan tahapan analisis suatu algoritma
6. Menganalisis suatu algoritma
B. Materi
Pengertian Dasar Logika Dan Algoritma
Logika diperkenalkan pertama kali oleh Aristoteles (384-322SM). Logika
berasal dari kata Yunani kuno, λόγος (logos) yang berarti hasil pertimbangan akal
pikiran yang diutarakan lewat kata dan dinyatakan dalam bahasa. Definisi dari
logika adalah :
1. Penalaran atau bentuk pemikiran.
2. Ilmu yang memberikan prinsip-prinsip yang harus diikuti agar dapat berfikir
valid menurut aturan yang berlaku.
Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah
yang aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung
dengan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun
hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan
asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu
Ja’far Muhammad Ibnu Musa Al-Khuwarizmi.
Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis
buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran
1 | MLP1~Algoritma
Pemrograman
dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita
juga memperoleh akar kata “Aljabar” (Algebra).
Perubahan kata dari algorism menjadi algorithm muncul karena kata
algorism sering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah
menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang
biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode
perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.
Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma.
Definisi Algoritma sendiri adalah “Urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis”. Sedangkan dalam Kamus Besar Bahasa
Indonesia (KBBI) terbitan Balai Pustaka (1988);
Algoritma adalah urutan logis pengambilan putusan untuk pemecahan
masalah
Dari dua definisi tersebut diatas maka kata kuncinya adalah “Urutan” dan “logis”,
sehingga selain logis Algoritma juga mengharuskan agar langkah langkah tersebut
berurutan secara sistematis, agar hasil akhirnya sesuai dengan yang diharapkan.
Selain itu, ada juga definisi menurut suatu kamus bahasa Webster Dictionary
bahwa Algoritma adalah suatu metode khusus yang digunakan untuk
menyelesaikan suatu masalah yang nyata. Berikut adalah tahap penyelesaian
masalah:
2 | MLP1~Algoritma
Pemrograman
Gambar diatas menunjukkan sebuah skema atau diagram alir suatu proses dalam
menyelesaikan suatu masalah. Dari suatu masalah yang timbul, kemungkinan
terdapat lebih dari satu algoritma yang ditawarkan untuk menyelesaikannya.
Karena itu, timbul suatu pertanyaan, algoritma mana yang akan digunakan?
Kemudian, mengapa algoritma tersebut digunakan? Untuk menjawabnya kita
gunakan pedoman kriteria pemilihan algoritma.
Kriteria Pemilihan Algoritma
Dalam memilih algoritma terbaik dari sekian algoritma yang ditawarkan, kita
harus memperhatikan beberapa kriteria pemilihan algoritma. Kriteria pemilihan
algoritma adalah sebagai berikut :
a. Ada output
Mengacu pada definisi algoritma, suatu algoritma haruslah mempunyai output
yang harus merupakan solusi dari masalah yang sedang diselesaikan.
3 | MLP1~Algoritma
Pemrograman
b. Efektifitas dan Efisiensi
Dikatakan efektif jika algoritma tersebut menghasilkan suatu solusi yang sesuai
dengan masalah yang diselesaikan dalam arti algoritma harus tepat guna.
Dikatakan efisiensi jika waktu proses suatu algoritma relatif lebih singkat dan
penggunaan memori komputernya lebih sedikit.
c. Jumlah langkahnya berhingga
Maksudnya adalah barisan instruksi yang dibuat harus dalam suatu urutan
tertentu atau harus berhingga agar masalah yang dihadapi dapat diselesaikan
dengan tidak memerlukan waktu relatif lama.
d. Berakhir (Semi Algoritma)
Proses didalam mencari penyelesaian suatu masalah harus berhenti dan
berakhir dengan hasil akhir yang merupakan solusinya atau berupa informasi
yang tidak diketemukan solusinya. Artinya baik dalam kondisi solusi ada atau
tidak ada, proses akan tetap harus berakhir dan berhenti. Istilah lain dalam
algoritma dikenal sebagai SEMI ALGORITMA, yaitu suatu prosedur yang hanya
akan berhenti jika mempunyai atau menghasilkan solusi, sedangkan jika tidak
menghasilkan solusi, maka prosedur tersebut akan berjalan tanpa henti.
e. Terstruktur
Yaitu urutan barisan langkah-langkah yang digunakan harus disusun sedemikian
rupa agar proses penyelesaian tidak berbelit-belit sedemikian sehingga bagian-
bagian proses dapat dibedakan dengan jelas mana bagian input, proses, dan
output sehingga memudahkan user melakukan pemeriksaan ulang.
Kesimpulannya :
Suatu Algoritma yang terbaik (The Best) adalah harus menghasilkan output yang
tepat guna (efektif) dalam waktu yang relatif singkat & penggunaan memori yang
relatif sedikit (efisien) dengan langkah yang berhingga & prosedurnya berakhir baik
dalam keadan diperoleh suatu solusi ataupun tidak ada solusinya.
4 | MLP1~Algoritma
Pemrograman
Contoh Algoritma
Untuk lebih memahami definisi algoritma yang telah diuraikan diatas, maka
akan kami berikan contoh algoritma yang berhubungan dengan masalah sehari-hari.
Sebagai contoh mudah, berikut ini kami gunakan sebuah prosedur ketika kita akan
mengirimkan sepucuk surat kepada teman kita, yaitu :
a. Tulis surat pada secarik kertas surat
b. Ambil sampul surat atau amplop
c. Masukkan surat ke dalam amplop
d. Tutup amplop surat dengan lem perekat
e. Tulis alamat surat yang dituju, jika tidak diingat, lebih dahulu ambil buku alamat
dan cari alamat yang dituju, lalu tulis alamat tersebut pada amplop surat
f. Tempelkan perangko pada amplop surat
g. Bawa surat ke kantor pos untuk diserahkan pada pegawai pos atau menuju ke
bis surat untuk memasukkan surat ke datam kotak/bis surat.
Contoh lain dari penerapan algoritma adalah ketika kita akan menyeberang jalan
raya, algoritmanya adalah sebagai berikut :
a. Berjalan ke tepi jalan raya
b. Berdiri di tepi jalan raya
c. Tengok arah kanan
d. Apakah ada kendaraan dari arah kanan?
e. Jika Ya, kembali ke langkah c. jika Tidak, lanjut ke langkah f
f. Berjalan ke tengah jalan raya
g. Berdiri diatas garis marka
h. Tengok arah kiri
i. Apakah ada kendaraan dari arah kiri?
j. Jika Ya, kembali ke langkah h. jika Tidak, lanjut ke langkah k
k. Berjalan ke seberang jalan
Contoh lain dari penerapan algoritma yang sering kita lakukan di pagi hari sebelum
ke sekolah yaitu membuat segelas susu. Algoritmanya adalah sebagai berikut :
5 | MLP1~Algoritma
Pemrograman
a. Ambil gelas dan sendok
b. Ambil susu
c. Tuangkan susu ke dalam gelas
d. Tuangkan air panas/hangat ke dalam gelas berisi susu
e. Aduk gelas tersebut sampai susu larut
f. Segelas susu hangat siap dihidangkan
Tahapan Analisa Algoritma
a. Bagaimana Merencakan Suatu Algoritma
Menentukan beberapa model atau desain sebagai penyelesaian dari suatu
masalah untuk mendapat sebuah solusi yang mungkin. Dengan demikian, akan
banyak terdapat variasi desain atau model yang dapat diambil yang terbaik.
b. Bagaimana Menyatakan Suatu Algoritma
Menentukan model suatu algoritma yang digunakan sehingga dapat membuat
barisan langkah secara berurutan guna mendapatkan solusi penyelesaian
masalah. Menentukan model tersebut agar dapat digunakan dengan cara :
1) Dengan Bahasa semu (Pseudocode); yaitu dengan menggunakan bahasa
sehari-hari, tetapi harus jelas dan terstruktur, seperti telah penulis sebutkan
pada contoh-contoh sebelumnya (Contoh prosedur berkirim surat).
Contoh :
a) Untuk mengitung Luas Segitiga
b) Masukan Nilai Alas
c) Masukan Nilai Tinggi
d) Hitung Luas = (Alas * Tinggi)/2
e) Cetak Luas
2) Dengan diagram alir atau flowchart; yaitu dengan membuat suatu penulisan
atau penyajian algoritma berupa diagram yang menggambarkan susunan alir
logika dari suatu permasalahan.
Contoh :
6 | MLP1~Algoritma
Pemrograman
3) Dengan Statement Program/Penggalan Program.
Contoh:
a. Read Alas
b. Read Tinggi
c. Luas=(Alas*Tinggi)/2
d. Write(luas)
c. Bagaimana Validitas Suatu Algoritma
Yakni jika penyelesaian memenuhi solusi yang sebenarnya, artinya solusi yang
didapat merupakan penyelesaian suatu masalah dan bukannya membuat
masalah baru.
d. Bagaimana Menganalisis Suatu Algoritma
Caranya melihat running time atau waktu tempuh yang digunakan dalam
menyelesaikan masalah serta jumlah memori yang digunakan dalam
penyelesaian masalah tersebut.
e. Bagaimana Menguji Program Dari Suatu Algoritma7
| MLP1~Algoritma Pemrograman
Yaitu dengan cara menyajikannya datam sarah satu bahasa pemrogramana,
misalnya BASIC, PASCAL, FORTRAN, dBase, atau yang lainnya. Dalam proses uji
program oleh komputer akan melalui beberapa tahap yaitu :
1) Fase Debugging, yaitu fase dari suatu proses program eksekusi yang akan
melakukan koreksi terhadap kesalahan program. Yang dimaksud disini
adalah error atau salah dalam penulisan program baik logika maupun
sintaknya.
2) Fase Profilling, yaitu fase yang akan bekerja jika program tersebut sudah
benar atau telah melalui proses pada fase debugging. Fase ini bekerja untuk
melihat dan mengukur waktu tempuh atau running time yang diperlukan
serta jumlah memori/storage yang digunakan dalam menyelesaikan suatu
algoritma.
Analisis Suatu Algoritma
Untuk melihat faktor efisiensi & efektifitas dari algoritma tersebut), dapat
dilakukan terhadap suatu algoritma dengan melihat pada:
a. Waktu tempuh (Running Time) dari suatu algoritma
Waktu tempuh (Running Time) adalah satuan waktu yang ditempuh atau
diperlukan oleh suatu algoritma dalam menyelesaikan suatu masalah.
Hal-hal yang dapat mempengaruhi daripada waktu tempuh adarah:
1) Banyaknya langkah
Makin banyak langkah atau instruksi yang digunakan dalam menyelesaikan
masalah, maka makin lama waktu tempuh yang dibutuhkan dalam proses
tersebut.
2) Besar dan jenis input data
Besar dan jenis input data pada suatu algoritma akan sangat berpengaruh
pada proses perhitugan yang terjadi. Jika jenis data adalah tingkat ketelitian
tunggal (Single precision), maka waktu tempuh akan menjadi relatif lebih
cepat dibandingkan dengan tingkat ketelitian ganda (double precesion)
8 | MLP1~Algoritma
Pemrograman
3) Jenis operasi
Waktu tempuh juga dipengaruhi oleh jenis operasi yang digunakan. Jenis
operasi tersebut meliputi operasi matematika, nalar atau logika, atau yang
lainnya. sebagai contoh, operasi perkalian atau pembagian akan memakan
waktu lebih larna dibandingkan operasi penjumlahan atau pengurangan.
4) Komputer dan kompilator
Hal terakhir yang mempengaruhi waktu tempuh suatu proses algoritma
adalah komputer dan kompilatornya, walaupun sebenarnya faktor ini diluar
tahap rancangan atau tahap pembuatan algoritma yang efisien. Algoritma
dibuat untuk mencapai waktu tempuh yang seefektif dan seefisien mungkin,
tetapi kesemuanya itu akan sangat bergantung pada kemampuan komputer
yang tentunya harus sesuai dengan jumlah program atau langkah yang
diperlukan oleh algoritma, begitu juga dengan kompilator tersebut, misalnya
PC XT 8086 akan kalah cepat dibandingkan 8088 atau dengan AT 80286 atau
80386 atau 80486 dan seterusnya.
b. Jumlah Memori Yang Digunakan
Banyaknya langkah yang digunakan dan jenis variabel data yang dipakai dalam
suatu algoritma akan sangat mempengaruhi penggunaan memori. Dalam hal ini,
diharapkan dapat memperkirakan seberapa banyak kebutuhan memori yang
diperlukan selama proses berlangsung hingga proses selesai dikerjakan. Dengan
demikian, dapat disiapkan storage yang memadai agar proses suatu algoritma
berjalan tanpa ada hambatan atau kekurangan memori.
Sifat-Sifat Algoritma
a. Banyaknya langkah instruksi harus berhingga
Pelaksanaan sebuah algoritma yang terprogram haruslah dapat diakhiri atau
diselesaikan melalui sejumlah langkah operasional yang berhingga. Jika tidak
demikian, kita tidak akan dapat mengharapkan bahwa pelaksanaan algoritma
tersebut dapat menghasilkan suatu solusi yang baik.
9 | MLP1~Algoritma
Pemrograman
b. Langkah atau instruksi harus jelas
Artinya bahwa penulisan setiap langkah yang terdapat didalam sebuah
algoritma harus memiliki arti yang khusus atau spesifik sehingga dapat
dibedakan antara penulisan langkah untuk komputer (program/pemrograman)
dengan penulisan langkah bagi manusia (pseudocode). Manusia akan lebih
mudah memahami algoritma yang terdiri atas simbol-simbol (Contoh:
pembuatan algoritma dengan diagram alir/flowchart) sedangkan komputer
hanya membutuhkan sebuah penulisan algoritma dengan kode-kode yang
dituangkan dalam bahasa yang dimengerti oleh komputer itu sendiri (bahasa
pemrograman).
c. Proses harus jelas dan mempunyai batasan
Rangkaian suatu proses yang berisi langkah-langkah instruksi dari suatu
algoritma yang akan dilaksanakan harus ditetapkan dengan jelas, baik dan pasti
sebab sebuah algoritma harus memiliki instruksi dasar tertentu dimana setiap
instruksi harus memiliki unsur pelaksana yang berfungsi sebagai pemroses data
yang akan dimasukkan dalam sebuah komputer. Dengan demikian, sebuah
algoritma harus ditulis dengan jelas tentang batasa-batasan proses yang akan
dilaksanakan oleh komputer.
d. Input dan Output harus mempunyai batasan
Input merupakan data yang dimasukkan ke dalam algoritma yang untuk
kemudian akan dilaksanakan oleh komputer. Dengan begitu, input yang
diberikan harus sesuai dengan jenis dari bahasa pemrograman yang digunakan,
sedangkan output merupakan hasil yang diperoleh dari pekerjaan yang
dilaksanakan komputer untuk kepentingan user yang merupakan pihak diluar
komputer. Algoritma harus menghasilkan output karena merupakan solusi yang
diharapkan dari suatu masalah yang timbul.
e. Efektifitas
10 | MLP1~Algoritma
Pemrograman
Instruksi yang diberikan pada komputer agar hanya menjalankan atau
melaksanakan proses yang mampu dilaksanakannya. Yang dimaksud mampu
adalah bahwa suatu algoritma atau instruksi-instruksi dalam sebuah program
hanya akan dapat dilaksanakan jika informasi yang diberikan oleh instruksi-
instruksi tersebut lengkap, benar dan jelas.
f. Adanya batasan ruang lingkup
Sebuah algoritma yang baik adalah hanya ditujukan bagi suatu masalah tertentu
saja. Susunan input harus ditentukan lebih dulu sebab susunan tersebut
menentukan sifat umum dari algoritma yang bersangkutan.
Konsep Algoritma dengan Peubah
a. Algoritma Variabel Peubah
Adalah variabel yang nilainya BUKAN konstanta (selalu berubah – sesuai dengan
kondisi Variabel terKINI)
Sintaks : P=Q
Algoritma : P Q
Arti : Bahwa Nilai P diberi harga Nilai Q
Nilai P akan SAMA DENGAN nitai Q dan Nilai Q TETAP
Contoh Soal 1 :
Diketahui Algoritma P=10, P=P+1 dan Q=P. Berapakah nilai P dan Q?
Jawab :
Algoritma :
P = 10 Pada saat ini nilai dari Variabel P akan diberi nilai 10
P = P+1 Pada saat ini nilai dari Variabel P yang baru adalah nilai dari variable
P yang lama ditambah 1 (10+1 = 11)
Q = P Pada saat ini nilai dari variaber Q diberi nilai dari variabel P yang baru
(Q = l l)
Contoh Soal 2 :
Diketahui 3 varibael peubah P, Q dan R. Agar isi Q ditaruh di P, isi R ditaruh di Q
dan isi P ditaruh di R, maka Algoritma yang dapat ditulis adalah …?
11 | MLP1~Algoritma
Pemrograman
Jawab :
Agar isi Q ditaruh di P, algoritma yang dapat ditulis adalah (P Q atau P=Q)
Agar isi R ditaruh di Q, algoritma yang dapat ditulis adalah (Q R atau Q=R)
Agar isi P ditaruh di R, algoritma yang dapat ditulis adalah (R P atau R=P)
b. Algoritma Variabel Pertukaran
Berfungsi mempertukarkan masing-masing isi Variabel sedemikian sehingga
Nilai dari tiap Variabel akan berubah/bertukar.
Contoh Soal :
Diketahui 2 peubah K = 10 dan L = 20. Buat Algoritma untuk mempertukarkan
isi K dan L …!
Jawab :
Untuk menyelesaikan algoritma pertukaran, dibutuhkan satu buah peubah
(variabel) tambahan untuk menyimpan nilai dari salah satu peubah. Algoritma
pertukaran untuk masalah diatas adalah (dimisalkan variable tambahan adalah
T).
T = K Pada algoritma ini nilai dari Variabel T (variabel tambahan) akan diisi
dengan nilai dari variabel K (T = 10)
K = L Pada algoritma ini nilai dari Variabel K akan diisi dengan variable L (K =
20)
L = T Pada algoritma ini nilai dari Variabel L akan diisi dengan variabel T (L =
10)
Setelah algoritma ini dijalankan dapat dilihat bahwa algoritma diatas telah
mempertukarkan nilai dari variabel-variabel tersebut. Sebelumnya variable K =
10 dan L = 20, menjadi variabel K = 20 dan L = 10
C. Evaluasi
1. Sebutkan definisi logika!
2. Sebutkan definisi algoritma!
3. Siapakah tokoh yang pertama kali memperkenalkan algoritma?
4. Sebutkan kriteria dalam pemilihan algoritma!
12 | MLP1~Algoritma
Pemrograman
5. Apakah maksud dari salah satu kriteria pemilihan algoritma yaitu terstruktur?
6. Bagaimanakah algoritma dalam memasang sebuah prosesor ke dalam
motherboard?
7. Sebutkan 3 model dalam menyatakan algoritma!
8. Sebutkan maksud dari fase debugging dalam program!
9. Sebutkan apa sajakah yang mempengaruhi running time dari suatu algoritma!
10. Sebutkan sifat-sifat dari algoritma!
MODUL 2
KONSEP TIPE DATA
13 | MLP1~Algoritma
Pemrograman
A. Tujuan Pembelajaran
Setelah mempelajari modul ini diharapkan siswa dapat :
1. Mengenal salah satu bahasa pemrograman tingkat tinggi, yaitu PASCAL
2. Memahami struktur program
3. Menyebutkan macam-macam tipe data
4. Mengetahui penerapan masing-masing tipe data dalam program sederhana
B. Materi
Algoritma berisi urutan langkah-langkah penyelesaian masalah. Ini berarti
algoritma adalah proses yang prosedural. Pada program prosedural, program
dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi terdiri dari
atas runtunan (sequence) instruksi yang dilaksanakan satu per satu secara
berurutan oleh sebuah pemroses. Alur pelaksanaan instruksi dapat berubah karena
adanya pencabangan kondisional. Data yang disimpan di dalam memori
dimanipulasi oleh instruksi secara beruntun. Kita katakana bahwa tahapan
pelaksanaan program mengikuti pola beruntun atau prosedural. Paradigma
pemrograman seperti ini dinamakan pemrograman prosedural.
Bahasa-bahasa tingkat tinggi seperti Cobol, Basic, Pascal, Fortran, dan C/C++
mendukung kegiatan pemrograman prosedural, karena itu mereka dinamakan juga
bahasa prosedural. Selain paradigma pemrograman prosedural, ada lagi paradigma
yang lain yaitu pemrograman berorientasi objek (Object Oriented Programming atau
OOP). Paradigma pemrograman ini merupakan trend baru dan sangat popular
akhir-akhir ini. Pada paradigma OOP, data dan instruksi dibungkus (encapsulation)
menjadi satu. Kesatuan ini disebut kelas (class) dan instansiasi kelas pada saat run-
time disebut objek (object). Data di dalam objek hanya dapat diakses oleh instruksi
yang ada di dalam objek itu saja.
Paradigma pemrograman yang lain adalah pemrograman fungsional,
pemrograman deklaratif, dan pemrograman konkuren. Modul ini hanya menyajikan
14 | MLP1~Algoritma
Pemrograman
paradigma pemrograman prosedural saja. Paradigma pemrograman yang lain di
luar cakupan modul ini.
Pengenalan Bahasa Pemrograman PASCAL
Pascal merupakan salah satu bahasa pemrograman tingkat tinggi yang
orientasinya pada segala tujuan. Pascal dirancang sekitar tahun 1970 oleh Prof.
Niklaus Wirth dari Technical University di Zurich, Switzerland. Nama pascal diambil
sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan philosophi
terkenal abad 17 dari Perancis yang menemukan mesin hitung pertama kali.
Bahasa Pascal dirancang untuk menyelesaikan masalah dari berbagai
kalangan pemakai, mulai dari para mahasiswa, pendidik, dan ilmuwan. Salah satu
kompiler Pascal yang terkenal dan tercepat adalah Turbo PASCAL yang dibuat oleh
perusahaan Borland (http://www.borland.com ).
Struktur Program
Struktur dari suatu program Pascal terdiri dari sebuah judul program dan
suatu blok program atau badan program. Blok program dibagi lagi menjadi dua
bagian, yaitu : bagian deklarasi dan bagian pernyataan. Secara ringkas, struktur
suatu program pascal dapat terdiri dari :
1. Judul program
2. Blok program
a. Bagian deklarasi
deklarasi unit
deklarasi label
deklarasi konstanta
deklarasi tipe
deklarasi variabel
deklarasi prosedur
deklarasi fungsi
b. Bagian pernyataan
15 | MLP1~Algoritma
Pemrograman
Judul Program PROGRAM nama_program;
Blok Program
Bagian Deklarasi
deklarasi unit USES nama_unit;
deklarasi label LABEL nama_label;
deklarasi konstanta CONST nama_konstanta;
deklarasi tipe TYPE nama_tipe;
deklarasi variabel VAR nama_variabel;
deklarasi prosedur PROCEDURE nama_prosedur;
……………………………………………………………;
deklarasi fungsi FUNCTION nama_fungsi;
……………………………………………………;
Bagian Pernyataan
Begin
(statement)
…………………………;
…………………………;
End.
Contoh : Program menghitung luas persegi panjang dengan panjang P dan lebar L
PROGRAM Luas_Persegi_Panjang; {Judul program}
USES Crt; {Deklarasi unit}
VAR P,L,Luas: real; {Deklarasi variabel}
BEGIN
Read(P,L); {Statemant}
Luas := P*L; {Statement}
Write(P,L,Luas); {Statement}
END.
1. Judul Program
16 | MLP1~Algoritma
Pemrograman
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak
pada awal dari program dan diakhiri dengan titik koma. Judul program didalam
pascal umumnya berisi nama dari program yang bersangkutan. Judul program
diawali dengan kata “PROGRAM” yang diikuti dengan nama program. Sebagai
contoh sebuah program untuk menghitung luas persegi panjang, kepala program
dapat ditulis sebagai berikut:
PROGRAM Luas_Persegi_Panjang;
Judul program tidak terikat dengan apa harus ditulis tetapi ada beberapa
hal yang harus diperhatikan dalam menuliskan Judul program. Ketentuan-
ketentuan dalam menuliskan Judul program adalah sebagai berikut :
Judul program adalah satu kesatuan sehingga Judul program tidak boleh
lebih dari dua kata yang dipisahkan dengan spasi. Apabila Judul program
lebih dari dua kata maka sebaiknya digabungkan dengan menghilangkan
spasi atau menggantinya dengan tanda underscore ( _ ).
Judul program tidak dapat diawali dengan angka.
Judul program tidak boleh mengandung karakter bukan huruf kecuali
underscore ( _ ).
2. Bagian Deklarasi
Seperti yang telah digambakan pada bagian struktur program pascal,
bagian deklarasi terdiri atas deklarasi unit, deklarasi konstanta dan lain
sebagainya.
a. Deklarasi Unit
Perintah-perintah didalam pascal sebagian besar tersimpan dalam
sebuah file unit. Sebagai contoh ketika didalam program utama terdapat
perintah untuk membersihkan layar dengan statemen clrscr; maka definisi
dari clrscr ini terdapat dalam sebuah file unit yang disebut crt. Pascal tidak
akan memahami perintah tersebut apabila dibagian deklarasi unit tidak
disebutkan file unit yang direferensi yaitu unit crt.
17 | MLP1~Algoritma
Pemrograman
Berdasarkan ilustrasi diatas, deklarasi unit digunakan untuk
menuliskan unit-unit file yang berisi definisi dari perintah-perintah yang
dipakai didalam program utama. Deklarasi unit dilakukan dengan
menuliskan statemen “USES” yang diikuti dengan nama unit yang disertakan.
Contoh deklarasi unit adalah sebagai berikut :
Uses Crt;
Deklarasi unit yang terdiri dari dua file unit atau lebih, penulisannya
dilakukan setelah klausa USES diikuti dengan nama-nama file unit yang
dipisahkan denga tanda koma (,) kemudian diakhiri dengan tanda titik koma
(;). Contoh penulisan unit yang lebih dari satu file adalah sebagai berikut:
Uses Wincrt,WinDos;
Daftar file unit yang dapat digunakan untuk menuliskan program
terdapat pada tabel berikut ini.
Tabel 1. Daftar file uni didalam pascal
Nama Unit KeteranganCrt Berisi rutin yang berkaitan dengan layar, keyboard,
dan suara. Unit ini ada pada pascal untuk dos.Wincrt Hampir sama dengan unit crt tetapi digunakan
untuk pascal for windows.Dos Unit yang berisi rutin yang digunakan untuk operasi
terhadap system operasi dan penanganan dos.WinDos Hampir sama dengan unit dos tetapi digunakan
dalam pascal for windows.Printer Berisi fasilitas untuk melakukan operasi yang
berkaitan dengan pencetakan data melalui printer.Graph Berisi rutin yang digunakan untuk melakukan
operasi berkaitan dengan grafis.System Berisi sejumlah pustaka yang digunakan saat
eksekusi (runtime library). Rutime berisi hal-hal berikut:- penanganan input / output file- penanganan string- alokasi dinamis
18 | MLP1~Algoritma
Pemrograman
Selain unit yang telah disebutkan diatas, masih terdapat beberapa unit yang
lain.
b. Deklarasi Konstanta
Konstanta adalah sebuah nilai tetapan yang tidak berubah. Salah satu
contoh yang dapat dijadikan sebagai sebuah konstanta adalah nilai phi untuk
menghitung luas lingkaran. Konstanta yang akan digunakan didalam sebuah
program harus terlebih dahulu didefinisikan pada bagian deklarasi
konstanta. Cara mendeklarasikan sebuah konstanta, digunakan sebuah
klausa “CONST” dan diikuti dengan nama konstanta beserta dengan nilai
tetapannya. Contoh sebuah deklarasi konstanta adalah sebagai berikut:
Const phi=3.14;
Nama konstanta diberikan oleh pemrogram. Untuk mendeklarasikan
konstanta yang lebih dari satu maka dapat dituliskan dengan menambahkan
konstanta berikutnya setelah sebuah konstanta dideklarasikan dan diakhiri
dengan tanda titik koma (;).
Const phi=3.14;Huruf:char=’A’;
Pada contoh diatas terdapat dua jenis konstanta. Konstanta yang
pertama adalah konstanta yang nilai tetapannya tidak dapat diubah didalam
program. Pada konstanta yang kedua, nilai tetapan awal adalah huruf ‘A’,
nilai ini dapat diubah pada program utama.
c. Deklarasi Tipe
Terdapat dua kelompok tipe data yang dibedakan secara mendasar
yaitu tipe data yang sudah ada di mengerti oleh bahasa pemograman pascal
dan tipe data bentukan. Tipe data bentukan adalah tipe data yang
didefinisikan oleh seorang pemrogram.
Untuk mendeklarasikan sebuah tipe data, digunakan klausa “TYPE”
kemudian diikuti dengan nama tipe data bentukan serta tipe data asli.
Contoh deklarasi sebuah tipe data adalah sebagai berikut:
19 | MLP1~Algoritma
Pemrograman
Type status : Boolean;
Dalam contoh diatas, tipe data bentukan dengan nama status bertipe
boolean. Tipe status tersebut dapat digunakan oleh variabel yang akan di
deklarasikan pada bagian deklarasi variable
d. Deklarasi Variabel
Variabel adalah sebuah perubah yang dapat digunakan untuk
menyimpan data. Variabel juga dapat diperlakukan sebagaimana data atau
nilai yaitu dengan operasi-operasi aritmatika maupun operasi logika. Setiap
variabel yang akan digunakan untuk menyimpan data, akan ditentukan
tipenya. Sebuah veriabel yang bertipe data numeric tidak akan dapat
digunakan untuk menyimpan data huruf. Beberapa tipe data yang sangat
umum digunakan adalah integer, real, char, dan string.
Deklarasi sebuah variabel dilakukan dengan menuliskan klausa “VAR”
kemudian diikuti dengan tipe data yang digunakan. Sebagai contoh sebuah
variabel dengan nama jumlah dengan tipe bilangan bulat maka dapat
dituliskan sebagai berikut:
Var jumlah:integer;
Tipe data pada variabel juga dapat menggunakan tipe data bentukan yang
deklarasikan oleh pemrogram pada bagian deklarasi tipe data. Contoh:
Type status:Boolean;Var jumlah:integer;
Chek:status;
e. Deklarasi Prosedur
Prosedur adalah subprogram yang menerima masukan tetapi tidak
mempunyai keluaran secara langsung atau tidak mengembalikan suatu nilai
ke program utama. Prosedur merupakan bagian dari program utama yang
memiliki fungsi untuk menyelesaikan tugas tertentu yang menjadi bagian
dari program utama.
20 | MLP1~Algoritma
Pemrograman
Untuk mendeklarasikan prosedur dapat digunakan klausa
“PROCEDURE” kemudian diikuti dengan nama prosedur. Setelah
mendeklarasikan nama prosedur, berikutnya akan diikuti oleh bagian
prosedur yang diawali dengan pernyataan BEGIN dan diakhiri pernyataan
END;.
Contoh penulisan prosedur adalah sebagai berikut:
Procedure bacainput(n:integer);Begin. . .End;
f. Deklarasi Fungsi
Fungsi adalah subprogram yang menerima masukan dan mempunyai
keluaran secara langsung atau mengembalikan suatu nilai ke program utama.
Fungsi merupakan bagian dari program utama yang memiliki fungsi untuk
menyelesaikan tugas tertentu yang menjadi bagian dari program utama.
Untuk mendeklarasikan fungsi dapat digunakan klausa “FUNCTION”
kemudian diikuti dengan nama fungsi. Setelah mendeklarasikan nama fungsi,
berikutnya akan diikuti oleh bagian fungsi yang diawali dengan pernyataan
BEGIN dan diakhiri pernyataan END;.
Contoh penulisan fungsi adalah sebagai berikut:
Function jumlah(n1:integer; n2:integer):integer;Begin. . .End;
3. Bagian Pernyataan / Program utama
Bagian program utama adalah bagian yang berisi langkah-langah dalam
program. Statemen-statemen yang ada pada program utama adalah statemen
untuk input pogram, proses, dan output program. Didalam program utama juga
dapat dilakukan pemanggilan prosedur dan fungsi yang telah dideklarasikan
21 | MLP1~Algoritma
Pemrograman
sebelumnya. Penulisan statemen pada program utama terletak diantara klausa
“BEGIN” dan “END.”
a. Perintah Input
Perintah input digunakan untuk membaca masukan data pada sebuah
program. Data dapat berasal dari sebuah file atau dimasukan langsung
melalui keyboard. Perintah input ini dinyatakan dengan klausa “READ” atau
“READLN”. Perintah READ adalah perintah membaca masukan data dari user
setelah user menekan tombol enter. Sedangkan perintah READLN adalah
perintah untuk membaca input data dari user setelah user menekan tombol
enter pada keybord kemudian memindah posisi kursor pada baris baru.
Penggunaan perintah input didalam program sebaiknya diawali
dengan perintah output yang menjelaskan suatu hal yang berkaitan dengan
input tersebut. Dengan cara ini, program akan mencadi lebih interaktif.
Untuk memberikan ilustrasi yang baik terhadap penggunaan perintah input
dan output, berikut ini akan diberikan beberapa contoh program yang
menyertakan kedua perintah tersebut.
Contoh :
Program 1. Menghitung luas persegi panjang 1
Program luas_pp1;Uses crt;Var panjang,lebar:integer; Luas:integer;
Begin Readln(panjang); Readln(lebar); Luas:=panjang * lebar; Writeln(luas); Readln;End.
Hasil Output :
4520
22 | MLP1~Algoritma
Pemrograman
Pada program diatas, ketika dijalankan program akan langsung
meminta input dengan tampilan layar kosong dan hanya terdapat kursor
aktif. Pengguna yang menjalankan ini kemungkinan besar tidak akan
mengerti dengan maksud program. Perbedaan terlihat jika program yang
dibangun seperti pada contoh berikut ini.
Program 2. Menghitung luas persegi panjang 2.
Program luas_pp2;Uses crt;Var panjang,lebar:integer; Luas:integer;
Begin Writeln(‘Program Hitung Luas Persegi Panjang’); Write(‘Masukan Sisi Panjang =’); Readln(panjang); Write(‘Masukan Sisi Lebar=’); Readln(lebar); Luas:=panjang * lebar; Writeln(‘Luas Persegi Panjang=’,luas); Readln;End.
Hasil Output :
Program Hitung Luas Persegi PanjangMasukan Sisi Panjang =4Masukan Sisi Lebar=5Luas Persegi Panjang=20
Pada program yang kedua, ketika dijalankan program akan
menampilkan statemen yang pertama yaitu Progam Hitung Luas Persegi
Panjang kemudian pada baris kedua akan muncul statemen Masukan Sisi
Panjang= dan kursor aktif untuk menerima input data. Dengan demikian
pengguna yang menjalankan program ini akan mengerti apa maksud dari
program tersebut.
b. Perintah Output
Perintah yang lain, yaitu perintah untuk menampilkan suatu output
pada layar monitor dengan menggunakan perintah “WRITE” dan
“WRITELN”. Perintah WRITE digunakan untuk menampilkan output pada
layar monitor, sedangkan perintah “WRITELN” sama dengan perintah write,
23 | MLP1~Algoritma
Pemrograman
hanya saja setelah menuliskan output ke layar monitor kemudian memindah
kursor keposisi baris yang baru.
Contoh :
Program 3. Menampilkan pesan
Program pesan;Uses crt;
Begin Write(‘Selamat Datang’); Write(‘Ini Program Pertama Saya’); Readln;End.
Dari contoh program diatas, terdapat dua perintah write tanpa
adanya perintah untuk memindah kusor pada baris baru sehingga walaupun
perintah tersebut ditulis dalam dua baris maka output yang keluar akan ada
pada satu baris.
Selamat DatangIni Program Pertama Saya
Hasil tampilan output tersebut akan berbeda apabila pada perintah
pertama digunakan perintah writeln (‘Selamat Datang’);, maka
output yang dihasilkan adalah penulisan kalimat yang pertama kemudian
ganti baris dan dilanjutkan dengan kalimat yang kedua.
Selamat DatangIni Program Pertama Saya
Penulisan perintah output diatas, data yang ditulis adalah data berupa
string atau text sehingga dalam penulisan write atau writeln diapit dengan
tanda petik (‘). Dalam penulisan angka, tanda petik tidak digunakan.
4. Komentar Program
Komentar program merupakan tulisan-tulisan yang berfungsi untuk
memberikan keterangan pada program atau instruksi-instruksi yang ada di
dalam program. Komentar program ini tidak akan diekseksi oleh program. Cara
24 | MLP1~Algoritma
Pemrograman
penulisan komentar adalah dengan memberikan tanda kurung kurawal buka
dan tutup ({…})pada awal komentar dan akhir komentar.
Macam-Macam Tipe Data
Tipe data adalah sebuah tipe atau jenis data yang mungkin untuk disimpan
kedalam sebuah perubah atau variabel. Seperti yang telah dijelaskan pada bagian
deklarasi variabel bahwa untuk mendeklarasikan sebuah variabel harus diikuti
dengan tipe datanya. Sebagai contoh sebuah variabel dengan nama nilai dan bertipe
data integer maka variabel tersebut hanya dapat menyimpan data yang berupa
bilangan bulat seperti 1, 2, -3, dan lain sebagainya. Variabel tersebut tidak dapat
digunakan untuk menyimpan data yang berupa bilangan desimal seperti 2.5, 4.25,
dan lain sebagainya.
Didalam bahasa pemrograman pascal terdapat dua macam tipe data yaitu
tipe data dasar dan tipe data bentukan. Tipe data dasar merupakan tipe data yang
telah disediakan dan dikenali oleh program sedangkan tipe data bentukan adalah
tipe data yang dibuat dan didefinisikan oleh programmer.
1. Tipe Data Ordinal
Tipe data ordinal adalah sebuah tipe data yang memiliki nilai ordinalitas
pada sebuah himpunan yang berurutan (orderet set). Pada tipe data ordinal,
nilai pertama memiliki nilai ordinalitas 0, berikutnya memiliki nilai ordinal 1
dan seterusnya. Khusus untuk tipe integer nilai ordinalitasnya adalah nilai
integer itu sendiri.
Pada tipe data ordinalitas, setiap nilai memiliki nilai pendahulu kecuali
pada nilai yang pertama dan memiliki nilai yang mengikutinya kecuali nilai
terakhir. Standar fungsi yang digunakan untuk mengetahui nilai ordinalitas dari
suatu data ordinal adalah Ord( ). Fungsi Pred( ) digunakan untuk mengetahui
nilai pendahulunya. Fungsi ini tidak dapat diterapkan pada nilai yang petama.
Fungsi Succ( ) digunkan untuk mengetahui nilai yang mengikutinya. Fungsi ini
tidak dapat diterapkan pada nilai yang terakhir.
25 | MLP1~Algoritma
Pemrograman
Pada tipe data ordinal terdapat beberapa jenis tipe data, yaitu tipe
Integer, tipe Char, dan tipe Boolean.
a. Tipe Integer
Tipe data integer adalah tipe data yang berupa bilangan bulat. Tipe
data ini tidak memiliki nilai hasil pembagian yang berupa pecahan. Dalam
tipe data integer terdapat beberapa jenis yang membedakan ukurannya.
Kelompok tipe data tersebut dapat dilihat ada tabel berikut ini.
Tabel 2. Tipe data integer
Tipe Rentang Nilai UkuranByte 0..125 8 bit
Shortint -128 .. 127 8 bitWord O .. 65535 16 bit
Integer -32768..32767 16 bitlongint -2147483648..2147483647 32 bit
Contoh:
Var a,b,c:integer;Begin A:=5; B:= -10; C:=A+B; Write(C);End;
b. Tipe Char
Tipe char digunakan untuk mendefinisikan sebuah himpunan
karakter yang ada pada kode ASCII. Untuk menuliskan sebuah karakter
didalam program dengan menyertakan tanda petik (‘) awal dan akhir
karakter tersebut. Sebagai contoh ‘A’, ‘B’, ‘C’, ‘0’, ‘1’, ‘2’ dan sebagainya. Tipe
data char hanya terdiri dari satu karakter dan sama dengan tipe data
string[1].
Fungsi-fungsi yang telah dijelaskan sebelumnya dapat diterapkan
pada tipe data ini. Fungsi ord( ) akan menghasilkan sebuah nilai ordnalitas
dari sebuah karakter. Sebagai contoh Ord(‘A’) akan menghasilkan nilai 65.
Fungsi pred() akan menghasilkan nilai sebelumnya. Sebagai contoh pred(‘B’)
26 | MLP1~Algoritma
Pemrograman
akan menghasilkan karakter ‘A’. Demikian juga dengan fungsi succ( ) yang
akan menghasilkan nilai sesudahnya. Sebagai contoh Succ(‘B’) akan
menghasilkan karakter ‘C’.
Untuk menghasilkan sebuah nilai karakter dari suatu nilai ordinal
juga dapat digunakan dengan sebuah fungsi chr( ). Sebagai contoh pada kode
ASCII nilai 68 adalah sebuah karakter ‘D’, maka untuk memperoleh nilai ‘D’
dari suatu data integer dapat dilakukan dengan perintah Chr(68).
Sebagai ilustrasi yang lebh detail dapat dilihat pada contoh program berikut.
Program 4. Karakter ASCII
Program karakter;Uses crt;Var nilai:integer;K:char;
Begin Writeln(‘Program Cetak Karakter dari ASCII’); Write(‘Masukan nilai karakter ASCII [0-255]=’); Readln(nilai); K:=chr(nilai); Write(‘Karakter=’,K); Readln;End.
Hasil Output:
Program Cetak Karakter dari ASCIIMasukan nilai karakter ASCII [0-255]=68Karakter=D
c. Tipe Boolean
Tipe data Boolean merupakan tipe data logika dengan dua buah nilai
kebenaran yaitu true (benar) dan false (salah). Nilai true memiliki nilai biner
1 dan nilai false memiliki nilai biner 0. Operator yang digunakan adalah AND,
OR, atau NOT.
Contoh:
Var x:Boolean;Begin X:=true;
27 | MLP1~Algoritma
Pemrograman
Writeln(x); Readln;End.Dalam contoh diatas, x adalah variabel dengan tipe Boolean. Variabel x
tersebut kemudian diberikan nilai true. Tampilan dari pogram tersebut
adalah menampilkan nilai true.
2. Tipe Data Real
Tipe data real adalah tipe data bilangan yang mengandung nilai pecahan.
Bilangan ini disebut dengan bilangan desimal. Penulisan data desimal tidak
mengunakan tada koma (,) tetapi menggunakan tanda titik (.), sebagai contoh
2.25.
Sebagaimana tipe integer, didalam tipe data real juga terdapat beberapa
jenis tipe data yang memiliki jangkauan yang berbeda. Kelompok tipe data
tersebut dapat dilihat pada tabel berikut.
Tabel 3. Tipe data real
Tipe Rentang nilai Angka signifikan Byte
Real 2.9e-39..1.7e38 11 – 12 6Single 1.5e-45..3.4e38 7 -8 4
Double 5.0e-324..1.7e308 15 – 16 8Extended 3.4e-4932..1.1e4932 19 -20 10
Comp -2E63+ 1 .. 2E63-1 19 -20 8
Pada rentang nilai dituliskan dalam bentuk notasi dengan huruf e. notasi
ini memiliki arti perkalian dengan pangkat berbasis 10. Sebagai contoh 2.3E2,
bilangan ini memiliki nilai 2.3 X 102 yaitu 230.
Program 5. Program Pembagian
Program pembagian;Uses crt;Var a,b:integer; C:real;Begin Writeln(‘Program Operasi Pembagian’); Write(‘Masukan Nilai A=’); Readln(a); Write(‘Masukan Nilai B=’); Readln(b); C:=A/B;
28 | MLP1~Algoritma
Pemrograman
Writeln(‘Hasil Pembagian=’,C); Readln;End.
Hasil Output:Program Operasi PembagianMasukan Nilai A=20Masukan Nilai B=3Hasil Pembagian= 6.66666666666667E+0000
Pada program diatas, user pada awalnya akan diminta untuk memasukan
data bilangan bulat yang disimpan dalam variabel A. Berikutnya user akan
diminta untuk memasukan sebuah bilangan bulat yang akan disimpan dalam
variabel B. Program akan melakukan pembagian yang hasilnya akan disimpan
dalam variabel C yang bertipe real. Terakhir program akan menampilkan output
yang ada pada variabel C dengan menggunakan notasi perkalian pangkat 10
yaitu dengan huruf E. Untuk mengubah tampilan ini dapat disertakan format bit
signifikan. Pernyataan terakhir dapat diganti dengan perintah:
Writeln(‘Hasil Pembagian=’,C:8:2);
3. Tipe Data Terstruktur
Tipe data terstruktur adalah tipe data yang dapat menyimpan lebih dari
satu nilai. Masing-masing nilai tersebut disebut sebagai elemen yang memiliki
tipe tersendiri. Struktur pembentukan tipe data ini akan menentukan
karakteristik penyimpanan dan pengaksesan data. Didalam tipe data terstruktur
terdapat beberapa jenis tipe data yaitu tipe string, tipe himpunan (set), tipe larik
(array), tipe rekaman (record) dan tipe berkas (file).
a. Tipe String
Tipe data string adalah tipe data yang berisi kumpulan karakter.
Untuk mendefinisikan tipe data string dapat diikuti dengan jumlah karakter
yang dispesifikasikan. Jika jumlah karakter yang boleh disimpan tidak
didefinisikan maka data yang disimpan tidak dibatasi. Untuk
29 | MLP1~Algoritma
Pemrograman
menspesifikasikan jumlah karakter yang dapat disimpan dalam sebuah
variabel dapat dituliskan dengan tanda kurung siku ( [ ] ).
Contoh:
Var S:string;A:string[10];
Jika sebuah variabel dideklarasi dengan tipe data string dan dispesifikasikan
jumlah karakter yang dapat disimpan maka variabel tersebut hanya mampu
menyimpan sejumlah karakter tersebut meskipun diberikan sebuah input
yang jumlah karakternya lebih banyak. Pada contoh diatas, variablel hanya
mampu menyimpan 10 karakter. Apabila variabel tersebut diberi input
‘ABCDEFGHIJKLMN’ maka data yang akan tersimpan hanya ‘ABCDEFGHIJ’
sesuai dengan jumlah yang telah ditentukan.
Contoh:
Program 6. Menampilkan salam
Program salam;Uses crt;Var nama:string[20];Begin Writeln(‘Masukan nama Anda=’); Readln(nama); Writeln(‘Selamat Datang ’,Nama); Readln;End.
Hasil Output program:
Masukan nama Anda=AndiSelamat Datang Andi
b. Tipe Himpunan (Set)
Himpunan adalah kumpulan data yang memiliki tipe yang sama.
Sebagaimana pengertian himpunan di dalam matematika, himpunan adalah
kumpulan objek yang memiliki karakteristik yang sama. Misalnya himpunan
bilangan bulat 0 sampai 10 maka himpunan tersebut adalah kumpulan nilai
yang memiliki tipe yang sama yaitu 0,1,2,3,4,5,6,7,8,9, dan 10.
30 | MLP1~Algoritma
Pemrograman
Didalam bahasa pemrograman pascal, himpunan ditulis dengan tanda
kurung siku ( [ ] ). Himpunan bilangan bulat positif dari 0 sampai dengan 10
dapat dinyatakan dengan [0,1,2,3,4,5,6,7,8,9,10]. Urutan dalam himpunan
tidak mempengaruhi karakteristiknya. Dua buah himpunan dikatakan sama
apabila masing-masing himpunan memiliki anggota yang sama. Himpunan
[0,1,2,3,4,5,6,7,8,9,10] sama dengan himpunan [10,9,8,7,6,5,4,3,2,1,0].
Untuk mendeklarasikan sebuah tipe data himpunan digunakan perintah
dengan klausa “SET”.
Contoh:
Var X : set of 1..10;Karakter: set of char
Untuk mengetahui apakah suatu data merupakan anggota dari suatu
himpunan dapat digunakan perintah In. Pada program dibawah ini akan
memberikan gambaran yang lebih jelas.
Program 7. Program Himpunan
Program himpunan;Uses crt;Var x:Boolean;Y:integer;Begin Y:=5; X:=y in [1..10]; Writeln(x);End.
Dari contoh program diatas, nilai output dari program tersebut adalah true.
Variabel X bernilai true karena varibael y yang berisi angka 5 adalah bagian
dari bilangan dari 1 sampai 10.
c. Tipe Larik (Array)
Array adalah tipe data yang berisi beberapa data yang ditampung
dalam satu variabel yang memiliki tipe data yang sama. Masing-masing data
yang tertampung dalam sebuah array akan ditandai sebagai elemen pertama
sampai ke - n. Array dapat dibuat beberapa dimensi, misalnya untuk
menggambarkan matrix kita perlu menggunakan Array 2 dimensi.31
| MLP1~Algoritma Pemrograman
Bentuk umum penulisan :
Type pengenal = array[tipe index] of tipe;
Dengan :
Pengenal = nama tipe data
Tipe index = tipe data untuk tiap nomor index
Tipe = tipe data komponen
Parameter tipe index akan menentukan banyaknya komponen array
tersebut.
Contoh :
Type vek = array[1..100] of integer;
Akan menunjukkan bahwa vek adalah tipe data yang berupa array yang
komponennya bertipe integer dan banyaknya adalah 100 buah. Deklarasi
yang disebutkan diatas disebut dengan deklarasi array dimensi satu atau
dapat disebut juga dengan vektor, sedangkan untuk array dimensi banyak
dapat dilihat pada contoh deklarasi berikut :
Type Tbl = array[1..100 ] of array [1..5] of real;
Atau
Type Tbl = array[1..100,1..5] of real;
d. Tipe Rekaman (Record)
Record adalah kumpulan data yang setiap elemennya bisa mempunyai
tipe data yang berbeda satu sama lainnya. Pada array, semua elemen harus
bertipe sama. Sebuah record rekaman disusun oleh beberapa field. Tiap field
berisi data dari tipe dasar/bentukan tertentu. Record mempunyai kelebihan
untuk menyimpan suatu sekumpulan elemen data yang berbeda-beda
tipenya (dibanding array).
e. Tipe Berkas (File)
File adalah kumpulan sejumlah komponen yang bertipe sama yang
jumlahnya tidak tertentu dan biasanya tersimpan dalam suatu media
penyimpanan luar.
4. Tipe data pointer
32 | MLP1~Algoritma
Pemrograman
Tipe data pointer adalah tipe data terstruktur yang dipakai pada
deklarasi variabel sehingga variabel tersebut bersifat dinamis. Sebagai ilustrasi,
sebuah variabel dideklarasi dengan tipe string[20] maka variabel tersebut
berukuran tetap yaitu 20. Pada saat program berjalan ukuran variabel tersebut
tidak akan berubah. Dengan menggunakan sebuah tipe data pointer sebagai
contoh pointer char maka variabel tersebut ukuran dapat berubah sesuai
dengan kebutuhan program.
Deklarasi sebuah tipe data pointer digunakan sebuah perintah dengan
menuliskan tanda topi (^) kemudian diikuti dengan jenis tipe data dasar.
Contoh:
X : ^char;
5. Tipe Data Bentukan
Tipe data bentukan adalah sebuah tipe data yang didefinsikan oleh
pemrogram. Tipe data bentukan ini terdapat dua jenis taitu tipe terbilang
(enumerated) dan tipe subjangkauan.
a. Tipe terbilang (enumerated)
Tipe terbilang adalah sebuah tipe data yang didefinisikan satu
persatu. Sebagai contoh untuk mendeklarasikan sebuah tipe data hari maka
semua nama hari harus disebutkan satu persatu yaitu senin, selasa, rabu,
kamis, jumat, sabtu, dan minggu. Bentuk umum deklarasinya adalah pengenal
= <tipe>. Pendeklarasian tipe data ini ada pada bagian deklarasi tipe
sebagaimana yang telah dijelaskan pada bagian sebelumya.
Contoh:
Type Hari=(minggu,senin,selasa,rabu,kamis,jumat,sabtu);
Untuk mendeklarasikan sebuah variabel yang bertipe hari dideklarasikan
pada bagian deklarasi variabel.
Contoh:
Var
33 | MLP1~Algoritma
Pemrograman
NamaHari:hari;
Variabel NamaHari yang telah dideklarasikan dengan tipe hari hanya dapat
menyimpan data yang berupa nama-nama hari yang telah disebutkan pada
bagian deklarasi tipe data.
Contoh:
NamaHari:=senin;
b. Tipe subjangkauan
Tipe subjangkauan adalah sebuah tipe yang menunjukkan adanya
rentang nilai. Tipe subjangkauan dapat diambil dari sembarang nilai ordinal.
Bentuk umum untuk menyatakan notasi ini adalah dengan sintak:
Type
Pengenal1=konstanta1 .. konstanta 2
Dimana:
Pengenal= nama tipe subjangkauan
Konstanta1=nilai yan menyatakan batas awal jangkauan.
Konstanta2= nilai yang menyetakan batas akhir jangkauan.
Contoh:
Type Nilai=1..100HurufBesar=’A’..’Z’
Sebuah variabel yang dideklarasikan sebagai tipe data maka variabel
tersebut hanya dapat menerima data yang ada didalam rentang nilai
tersebut. Program berkut ini adalah program yang menyajikan tipe data
subjangkuan.
Program 8. Nilai siswa1.
Program Nilai_Siswa1;Uses crt;Type nilai=1..100;var nilaisiswa:nilai;
34 | MLP1~Algoritma
Pemrograman
begin writeln(‘Program Nilai Siswa’); write(‘Masukkan Nilai Siswa =’); readln(nilaisiswa); writeln(‘Nilai Siswa =’,nilaisiswa); Readln;end.
Hasil Output Program:
Program Nilai SiswaMasukkan Nilai Siswa =98Nilai Siswa =98
Pada program diatas, nilai adalah sebuah tipe subjangkauan dengan batas
awal 1 dan batas akhir 100. variabel nilaisiswa yang dideklarasikan dengan
tipe nilai maka variabel tersebut hanya dapat menerima masukan data yang
ada diantara subjangkauan tersebut seperti 25, 40, 80 dan lain sebagainya.
Variabel tersebut tidak dapat menerima nilai diluar subjangkauan tersebut
seperti 125, -5,110 dan lain sebagainya.
Operator
Operator adalah suatu simbol yang digunakan untuk melakukan operasi
terhadap data. Operasi yang dimaksud adalah memanipulasi dan mengolah data.
Data dengan tipe tertentu dapat dilakukan operasi dengan operator tertentu.
1. Operator Penugasan
Operator penugasan adalah operator yang digunakan untuk memberikan
nilai pada suatu perubah. Sebagai contoh sebuah variabel dideklrasikan dengan
tipe data integer. Untuk memberikan sebuah nilai pada variabel tersebut
digunakan operator penugasan. Didalam bahasa pascal operator penugasan ini
dituliskan dengan simbol titik dua dan sama dengan (:=);
Contoh:
Nilai:=100;
A:=10;
B:=25;
C:=A*B;
35 | MLP1~Algoritma
Pemrograman
Dari contoh diatas dapat dilihat bahwa untuk memberikan nilai 100 pada
variable nilai digunakan operator penugasan yaitu titik dua dan sama dengan
(:=). Demikian juga pemberian nilai pada variabel-variabel yang lain.
2. Operator Aritmatika
Operator aritmatika adalah operator yang digunakan untuk
mengoperasikan data-data numerik. Operasi yang dilakukan adalah operasi
aritmatika seperti penjumlahan, perkalian, pembagian dan lain sebagainya.
Operator aritmatika memeliki beberapa simbol dengan fungsi yang
berbeda-beda. Masing-masing simbol juga memiliki prioritas yang berbeda jika
didalam suatu notasi terdapat lebih dari satu operator aritmatika. Simbol-simbol
operator arimatika dan hierarki urutan prioritasnya dapat dilihat pada tabel
berikut.
Tabel 4. Operator Aritmatika
Operator Operasi
- Tanda negative* , / Pekalian dan pembagianDiv Pembagian integer
Mod Modulo (sisa hasil bagi)+ , - Penambahan dan pengurangan
Keterangan:
Operasi tanda negatif akan memberikan nilai negasi dari nilai yang
disebutkan.
Contoh:
-5 + 10 = 5
Operasi div akan menghasilkan nilai pembagian dalam bilangan bulat tanpa
nilai pecahan.
Contoh:
8 div 3 = 24 div 5 = 015 div 3 = 5
36 | MLP1~Algoritma
Pemrograman
16 div 3 = 5 Operasi mod akan menghasilkan nilai sisa hasil bagi.
Contoh:
5 mod 2 = 13 mod 5 = 311 mod 5 = 1
Didalam proses operasi yang dilakukan dengan operator aritmatika, prioritas
yang lebih tinggi akan dilaksananakan terlebih dahulu.
Contoh:
4 + 2 * 8
Proses operasi tersebut akan dilakukan dengan perkalian terlebih dahulu
kemudian dilakukan proses penjumlahan. Hasil dari operasi tersebut adalah:
= 4 + 16= 20
Untuk memberikan prioritas operasi yang lebih tinggi terhadap operator
yang berprioritas rendah agar dikerjakan lebih dulu maka perlu adanya notasi
penulisan dengan tanda kurung buka dan kurung tutup. Misalnya dari notasi
yang telah dicontohkan diatas apabila proses penjumlahan ingin dilakukan lebih
dulu dari pada proses perkalian maka notasi tersebut dapat diubah menjadi
(4+2)*8 sehingga hasil yang diperoleh yaitu 8 * 8 = 64.
Operator aritmatika tersebut secara keseluruhan digunakan untuk
melakukan proses perhitungan data-data numerik. Hanya ada satu operastor
yang digunakan untuk melakukan operasi terhadap jenis data yang lain yaitu
untuk tipe string. Operator tersebut adalah penjumlahan (+) yang dapat
digunakan untuk menggabungkan dua buah string.
Contoh:
NamaDepan:=’AGUS’NamaBelakang:=’SETYIAWAN’NamaLengkap :=NamaDepan + NamaBelakang;
3. Operator Logika
37 | MLP1~Algoritma
Pemrograman
Operator logika adalah simbol-simbol yang digunakan untuk melakukan
ekspresi terhadap data-data logika. Proses operasi tersebut akan menghasilkan
salah sat dari dua jenis nilai kebenaran yatu TRUE dan FLASE. Simbol-simbol
operator logika tersebut dapat dilihat pada tabel yang ada dibawah ini.
Tabel 5. Operator Logika
Operator Keterangan
NOT TidakAND DanOR Atau
XOR Exclusive OR
Sebagaimana operator matematika, operator logika juga memiliki urutan
prioritas dalam melakukan prosesnya apabila dalam suatu pernyataan terdapat
lebih dari satu operator.
a. Operator NOT
Operasi NOT merupakan operasi unary yang digunakan untuk sebuah
nilai Boolean tunggal dan menghasilkan nilai kebalikanya (negasi). Jika
sebuah ekspresi bernilai true kemudian diberikan operator NOT memakai
akan menghasilkan nilai baru yaitu false.
Tabel 6. Nilai kebenaran Operator NOT
Ekspresi Hasil Operasi NOT
True FalseFalse True
Contoh:
A:=true;B:=Not A;
Hasil yang ada pada variable B adalah FALSE.
38 | MLP1~Algoritma
Pemrograman
b. Operator AND
Operator AND dilakukan untuk dua buah ekspresi Boolean. Operator
AND akan menghasilkan nilai true jika kedua ekspresi tersebut memiliki nilai
true. Tabel berikut menunjukan hasil operasi AND pada dua buah ekspresi
Boolean.
Tabel 7. Nilai kebenaran Operator AND
Ekspresi1 Ekspresi2 Ekspresi 1 AND Ekspresi2
False False FalseFalse True FalseTrue False FalseTrue True True
Contoh:
A:=true;B:=false;C:=A and B
Variabel C mengandung nilai hasil operasi AND yaitu false.
c. Operator OR
Operator OR dilakukan untuk dua buah ekspresi sebagimana operator
AND. Operator OR akan manghasilkan nilai true apabila salah satu ekspresi
bernilai true. Operator OR akan menghasilkan nilai false apabila kedua
ekspresi bernilai false. Tabel berikut adalah tabel kebenaran yang
menunjukan hasil operasi OR.
Tabel 8. Nilai kebenaran Operator OR
Ekspresi1 Ekspresi2 Ekspresi 1 OR Ekspresi2
False False FalseFalse True TrueTrue False TrueTrue True True
39 | MLP1~Algoritma
Pemrograman
Contoh:
A:=true;B:=false;C:=A or B
Variabel C mengandung nilai hasil operasi OR yaitu true.
d. Operator XOR (Exclusive OR)
Sebagaimana operator AND dan operator OR, operator XOR juga
merupakan operator yang digunakan untuk dua buah ekspresi. Operator XOR
akan menghasilkan nilai true jka kedua ekpresi memiliki nilai yang berbeda.
Operator XOR akan menghasilkan nilai false jika kedua espresi bernilai sama.
Tabel 9. Nilai kebenaran Operator XOR
Ekspresi1 Ekspresi2 Ekspresi 1 XOR Ekspresi2
False False FalseFalse True TrueTrue False TrueTrue True False
Contoh:
A:=true;B:=true;C:=A Xor B
Variabel C mengandung nilai hasil operasi XOR yaitu false.
4. Operator Relasi / Perbandingan
Operator relasi/perbandingan digunakan untuk membandingkan suatu
data (ekspresi) dengan data (ekspresi) yang lain dan menghasilkan nilai logika
(benar atau salah). Dua buah data atau ekspresi yang dibandingkan mempunyai
40 | MLP1~Algoritma
Pemrograman
tipe data yang sama. Tabel berikut adalah daftar simbol-simbol operator
perbandingan.
Tabel 10. Operator Perbandingan
Operator Keterangan
= Sama dengan<> Tidak sama dengan< Lebih kecil> Lebih besar
<= Lebih kecil atau sama dengan>= Lebih besar atau sama dengan
Operasi perbandingan akan mengasilkan nilai kebenaran true jika
pernyataannya bernilai benar dan akan menghasilkan nilai false apabila
pernyataannya salah.
Contoh:
Tes = 5 > 4 {variabel tes berisi true}A:=true;B:=false;C:=A=B {Variabel C berisi false karena A tidak sama dengan B}
5. Operator Himpunan
Operator hmpunan adalah operator yang digunakan untuk melakukan
operasi terhadap data-data yang bertipe himpunan. Pada tipe data himpunan
dapat diberlakukan beberapa operator yaitu interseksi, union, dan selisih. Selain
operator tersebut, pada tipe data himpunan juga dapat diberlakukan operator
perbandingan.
Untuk memberikan gambaram yang jelas akan diberikan dua buah data
himpunan yaitu:
A:= [1,2,3,4,5,6]B:= [5,6,7,8,9,10]
41 | MLP1~Algoritma
Pemrograman
Operator interseksi dinyatakan dengan symbol bintang (*). Operator ini
akan menghasilkan himpunan anggota yang ada pada kedua himpunan tersebut.
A*B akan menghasilkan himpunan anggota interseksi yaitu [5,6].
Operator union dinyatakan dengan symbol plus (+). Operator ini akan
menghasilkan himpunan yang anggotanya adalah gabungan dari kedua
himpunan. A + B akan menghasilkan himpunan yang anggotanya adalah
gabungan dari himpunan A dan himpunan B yaitu [1,2,3,4,5,6,7,8,9,10]
Operator selisih dinyatakan dengan symbol minus (-). Operator ini akan
menghasilkan himpunan yang anggotanya merupakan anggota himpunan
pertama tetapi bukan anggota himpunan kedua. A – B akan menghasilkan
himpunan yang anggotanya merupakan anggota himpunan A dan bukan anggota
himpunan B yaitu [1,2,3,4]. B – A akan menghasilkan himpunan [7,8,9,10].
Untuk melakukan operasi perbandingan, pada tipe data himpunan dapat
diberlakukan operator perbandingan yang telah dijelaskan pada bagian
sebelumnya. Selain operator tersebut masih terdapat satu operator
perbandingan yang ada pada data himpunan. Operator tersebut adalah operator
in. Penggunaan operator in telah dijelaskan pada bagian tipe data himpunan.
C. Evaluasi
1. Siapakah tokoh yang merancang bahasa pemrograman PASCAL?
2. Sebutkan struktur dari suatu program Pascal!
3. Sebutkan pengertian dari tipe data!
4. Sebutkan dua macam tipe data yang digunakan dalam bahasa pemrograman
Pascal!
5. Buatlah sebuah program untuk menghitung keliling lingkaran menggunakan
bahasa pemrograman PAscal!
42 | MLP1~Algoritma
Pemrograman
MODUL 3
FLOWCHART
D. Tujuan Pembelajaran
Setelah mempelajari modul ini diharapkan siswa dapat :
1. Menyebutkan pengertian diagram alir (flowchart)
2. Memahami flowchart secara umum
3. Memahami flowchart untuk program computer
4. Memahami cara pembuatan flowchart
5. Memahami macam-macam struktur flowchart
E. Materi
Penggunaan komputer di era globalisasi sekarang ini merupakan solusi dari
perkembangan teknologi yang sangat pesat baik di bidang industri, pendidikan,
pemerintahan, ilmu pengetahuan maupun sosial dan budaya.
Komputer tak hanya digunakan sebagai alat penghitung namun dapat pula
digunakan sebagai alat pemroses dan penyimpan data serta informasi. Dalam
pemrosesan data, suatu komputer biasanya melakukan komputasi-komputasi yang
cepat, tepat, dan akurat. Untuk melakukan komputasi tersebut, diperlukan suatu
program sebagai alat bantu.
Program adalah sederetan instruksi (dalam bahasa yang dimengerti
komputer) yang mengatur kerja komputer untuk memperoleh suatu output/hasil
yang diharapkan. Untuk memudahkan dalam pembuatan suatu program maka
dibuat terlebih dahulu suatu logika/urutan-urutan instruksi program dalam suatu
diagram yang disebut dengan diagram alir atau flowchart.
Pengertian diagram alir (flowchart)
Secara umum flowchart dapat dijelaskan dalam contoh masalah sehari-hari
yang sering kita temui, contohnya adalah langkah-langkah yang kita lakukan ketika
mengganti ban mobil yang pecah. Flowchart-nya seperti gambar dibawah ini.
43 | MLP1~Algoritma
Pemrograman
Contoh 1:
Gambar 1. Flowchart proses mengganti ban mobil
Pada contoh flowchart diatas, langkah-langkah dilakukan tanpa adanya suatu
syarat. Langkah flowchart berlangsung dari atas ke bawah. Biasanya masalah tidak
sesederhana itu. Berikut ini adalah contoh penggambaran masalah penggantian ban
mobil yang pecah dengan kemungkinan ban serep kempis.
44 | MLP1~Algoritma
Pemrograman
Contoh 2:
Gambar 2. Flowchart proses mengganti ban mobil dengan kemungkinan ban serep
kempis
45 | MLP1~Algoritma
Pemrograman
Berikut ini adalah beberapa pengertian flowchart :
1. Flowchart adalah serangkaian bagan-bagan yang menggambarkan alir program.
2. Flowchart adalah penyajian yang sistematis tentang proses dan logika dari
kegiatan penanganan informasi.
3. 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.
4. Flowchart adalah bagan (chart) yang menunjukkan alir (flow) di dalam program
atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat
bantu komunikasi dan untuk dokumentasi.
5. Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti
dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol,
dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu.
6. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri
dengan penampilan output.
7. Flowchart adalah bagan yang menggambarkan urutan logika dari suatu prosedur
pemecahan masalah.
8. Flowchart adalah suatu diagram yang menggambarkan susunan logika suatu
program.
9. Flowchart adalah penggambaran secara fisik dari langkah-langkah dan urut-
urutan prosedur dari auatu program. Flowchart menolong analis dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih
kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam
pengoperasian. Flowchart biasanya mempermudah penyelesaian suatu masalah
khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
Di atas telah dijelaskan pengertian flowchart secara umum dengan contoh
pada masalah sehari-hari yaitu penggantian ban mobil dan beberapa pengertian
flowchart yang berhubungan dengan penyajian suatu algoritma penyelesaian
masalah. Kemudian muncul pertanyaan mengapa menggunakan flowchart untuk
menyajikan suatu algoritma penyelesaian masalah? Jawabannya adalah :
46 | MLP1~Algoritma
Pemrograman
Alasan menggunakan flowchart :
1. Relationship
Flowchart dapat memberikan gambaran yang efektif, jelas, dan ringkas
tentang prosedur logic. Teknik penyajian yang bersifat grafis jelas akan lebih
baik dari pada uraian-uraian yang bersifat teks khususnya dalam menyajikan
logika-logika yang bersifat kompleks.
2. Analysis
Dengan adanya pengungkapan yang jelas dalam model atau chart, maka
para pembaca dapat dengan mudah melihat permasalahan atau memfokuskan
perhatian pada area-area tertentu system informasi.
3. Communication
Karena simbol-simbol yang digunakan mengikuti suatu standar tertentu
yang sudah diakui secara umum, maka flowchart dapat merupakan alat bantu
yang sangat efektif dalam mengkomunikasikan logika suatu masalah atau dalam
mendokumentasikan logika tersebut.
Telah dijelaskan di atas sebab penggunaan flowchart untuk menyajikan suatu
algoritma penyelesaian masalah. Kemudian muncul pertanyaan lagi bagaimana cara
membuat flowchart? Apakah ada pedoman dalam pembuatan flowchart? Sebelum
menjawab pertanyaan tersebut terlebih dahulu akan dijelaskan simbol-simbol
flowchart.
Simbol Flowchart
There are five type of flowchart that is :
1. System flowchart
2. Document flowchart
3. Schematic flowchart
4. Program flowchart
5. Process flowchart
But from type five of flowchart will only be studied just two that is System flowchart
and program flowchart.
47 | MLP1~Algoritma
Pemrograman
CPU
Keyboardd
VDU
Disket
System flowchart depict system equipments of used computer in course data
processing and also relation between equipment. Flowchart System not be used to
depict sequence not used to depict sequennce do step to solve problem. Flowchart
System just for depicting procedure in formed system. Excample of usage of the
following flowchart system :
Picture 3. Example of usage flowchart system
Program of flowchart depict logic sequence from trouble-shooting
procedure. Program of Flowchart represent diagram explaining in detail steps of
program process. Program of Flowchart made of flowchart system. Two method
type depiction of program of flowchart :
Conceptual flowchart, trouble-shooting path globally depicting
Detail flowchart, depicting trouble – shooting path in detail
Usage example of flowchart program are :
48 | MLP1~Algoritma
Pemrograman
Picture 4. Example usage of flowchart program
Flowchart can show clearly current operation of algoritm, namely how
network execution of program activity. A flowchart will give picture two dimension
in the form of symbols which is the each the symbol have been preset by function
and its meaning. This is symbols that used to depict flowchart :
1. Flow direction symbols
Used to link the symbol to another.
Can called connecting line
Te esymbol are :
Symbol Name Function
Flow Depict the way of flow on
proces
49 | MLP1~Algoritma
Pemrograman
Communication Link Expressing data transmission
from one location to other
location
Connector Expressing extension of
process to other process in
same page
Offline Connector Expressing extension of
process to other process in
different page
2. Processing symbols
Depict the system operate for processing in proces / procedure
The symbols are :
Symbol Name Function
Process Expressing proces to doing by
another computer
Manual Expressing proces that can’t be
doing by another computer
Decision Showing certain condition to
yield two possibility of
answer : Yes / not.
Predefined process Expressing is ready of
repository processing to give
price early.
Terminal Expressing start or final of
program.
50 | MLP1~Algoritma
Pemrograman
Keying operation Expressing all processed
operation type by using an
machine having keyboard
Offline-storage Indicating that data in this
symbol will be kept to a[n
certain media
Manual input Including data manually by
using keyboard online
3. Input / Output symbols
Menunjukkan jenis peralatan yang digunakan sebagai media input atau
output Showing equipments type tsht used input media or of output
The symbols are :
Symbol Name Function
Input/output Expressing input process or of
output without depended its
equipments type
Punched Card Expressing input come from or
card of output written to card
Magnetic Tape Expressing input come from
magnetic ribbon or output
kept to magnetic ribbon
Disk Storage Expressing input come from or
disk of output kept to disk
51 | MLP1~Algoritma
Pemrograman
Way giving price to an variable of flowchart
1. Way of 1
An variable can be interpreted as value able to fluctuate its price, example is way
of depicting gift of price to an variable is :
Besides, box process or assignation can function for example to :
a.
Variable of C given price equal to variable price of P less variable price of Q
( price of P and of Q should have there is )
b.
Newest price of variable of N are old price of variable of N added by 1
c.
New price of variable of S are old price of S added at the price of variable of T.
All written variable above at the example is number variable or numerik
variable. Assignation box is also used to depict gift of price at one particular
variable of string, the example : :
2. Way of II
By using input box / read / input / read, data which we include we place
separate in an data gathering. Later, Then data read from the gathering. then
passed to an variable as its price.
52 | MLP1~Algoritma
Pemrograman
Way to make Flowchart
When a programmer and analyst will make flowchart, there are some guide
which must be paid attention, like :
1. Flowchart depicted from page;yard to the downwards and from left to right.
2. Activity have to be defined neglectlessly and this definition have to earn to be
understood by its reader.
3. When activity started and end have to be determined clearly.
4. Every step of activity have to be elaborated by using verb.
5. Every step of activity have to reside in [at] real correct sequence.
6. Scope and of range of activity which is depicting have to trace carefully. crosscut
ramifications of activity which depicting needn't be depicted by same flowchart.
symbol of Conector have to be used and its ramification of separate give on page
or eliminate entirely when its ramification not relate to system.
7. Use symbols of flowchart that standard..
Some principle which must adhere in making flowchart :
1. There no schema hanging
2. Ramification there's only 2 with indication Yes and No. Yes to express that
condition fulfilled, No to express on the contrary
3. Always early Started and Finish or Start and Stop with schema of terminator
4. Exploiting appropriate konektor if flowchart will be divided to become some
part
5. Use simple Ianguage at used schema
Flowchart Structure
Flowchart consist of 3 structure, that is sequence, branching, and looping.
1. Structure of Sequence / Simple
Diagram that its path emit a stream of alternately the from the top to
downwards or equally ramification inexistence or repetition. Form the the
flowchart like :
53 | MLP1~Algoritma
Pemrograman
Example flowchart with structure of sequence this like algorithm to calculate
wide trilateral, wide square length, and area of circle.
2. Structure of Branching / Ramification
Diagram that its path happened / there are displacing control in the form of
ramification. Flowchart with ramification stuktur used for selection the
condition and take choice process hereinafter. Become, we given on to two
condition of choice, that is CORRECTNESS or is WRONG. Form of Flowchart the
like following : :
54 | MLP1~Algoritma
Pemrograman
If A>B, Right condition, current to path.
(1) if wrong condition, current to path (2)
Example : flowchart of algorithm determine the number which even or
anomalous input.
a. Structure displace conditional band
Happened ramification or switchover of path to other statement, because
there are condition which must fulfill. This structure divided of some part,
that is :
1) Structure IF – THEN – ELSE
Statement Decision that have band ' branch' representing the mechanism
to specify so that two choice which must be selected at one of its branch
that executed as action of decision statement. This will happened if there
are certain condition which claiming itsone of the choice and otherwise
happened the condition of which is expected hence other choice to be
done. Its depiction at] diagram emit a stream of to use decision box or of
decision table. Condition which have camputered above will be expressed
with Logic expression.Common Form writing is : :
IF K THEN S1 ELSE S2
55 | MLP1~Algoritma
Pemrograman
With K in condition, S1 and of S2 is statement to be done or often referred
also as multi statement, that is statement that branch. Diagram emit a
stream of from usage of structure of IF - THEN - ELSE described as by
following:
2) Structure of IF – THEN
This represent to form of dicision statement to happened at one
particular condition, if happened certain condition will be felt by S
statement, while otherwise happened the condition of which specified,
hence will be executed by statement below / under direct him. Common
Form writing ::
IF K THEN
S
ELSE may be written / not
With K is in a condition
S is statement to be done or often referred also as multi statement, that is
statement to be executed at branch alternative. Continuation of ELSE
vacuous statement, that is statement which not contain comand of
something. Diagram emit a stream of from usage of structure of IF - THEN
described as by following : :
56 | MLP1~Algoritma
Pemrograman
3) Structure of Branching compile
At this structure will there are some alternative as choice at one
particular condition of which specified, by using structure have a nest or
compile from IF - THEN - ELSE, that is that in IF - THEN - ELSE there are
IF - THEN - Other ELSE. Following common form picture writing of
structure compile : :
IF K1 THENIF K2 THENS1ELSES2
ELSEIF K3 THENS3ELSES4
Depiction of its path diagram shall be as follows :
57 | MLP1~Algoritma
Pemrograman
Depiction above can be watered down to become::
b. Structure displace band without is conditional.
58 | MLP1~Algoritma
Pemrograman
Referred that way, because happened an certain conditionthat oblige path
execute certain statement without minding its place in program
path.common Form writing is GO TO lable, with lable as symbol direction
from program which its naming follow the way of naming variable..
Example :
BEGIN FSGO TO HITUNG HITUNG; NILAI:=0 END.
3. Structure Looping/pengulangan
Flowchart with Structure restating used for previous stages until an condition
fufilled. To be referred also twiddling return. Happened when transferring
diagram current run back to to the so that some recuring path return several
times. Earn also conceived of execution with refer to statement by repeatedly
during certain condition still go into effect or is up to standard. If entering a
Loop, hence statement residing in depth ( body) have to enable process change
over to statement early inclusion. Otherwise happened, hence process will take
place to continue without end. Each time and loop of body the executed, hence
at least one variable value will change so that process loop will generate
influence having the character of comulated.
Form the flowchart like :
59 | MLP1~Algoritma
Pemrograman
Statement not be executed
Example of this flowchart for example algorithm to determine anomalous
number below / under value 20. So that process to print the the number will be
done until the condition of fufilled that is 20.
Diagram example emit a stream of structure of looping :
Common Form writing with WHILE K DO S statement with K and condition of S
represent one or a group of statement to be run. Condition will be tried, if Value
60 | MLP1~Algoritma
Pemrograman
of condition TRUE, hence S statement will be executed and operation of program
returned to WHILE statement because to later condition will be try again. If
condition of or ineligibility of FALSE, hence step hereinafter with statement after
S or exit of process of loop.
Note :
Third structure of flowchart above that is sequence, branching, and looping can be
used concurrently one diagram emit a stream of
F. Evaluation
1. Mention congeniality of flowchart!
2. Make a Flowchart process make a cup of coffee!
3. Flowchart How way of making flowchart?
4. Mention symbols which used in making flowchar!
5. Mention 3 structure of flowchart!!
61 | MLP1~Algoritma
Pemrograman