modul logika algoritma (pascal)
DESCRIPTION
coba3TRANSCRIPT
BAB I
MENGENAL LOGIKA ALGORITMA
A. PENGERTIAN LOGIKA DAN ALGORITMA
Logika berasal dari dari bahasa Yunani yaitu LOGOS yang berarti ilmu. Logika
dapat diartikan ilmu yang mengajarkan cara berpikir untuk melakukan aksi dengan
tujuan tertentu.
Algoritma berasal dari nama seorang Ilmuwan Arab yang bernama Abu Ja‟far
Muhammad Ibnu Musa Al Khuwarizmi penulis buku berjudul Al Jabar Wal Muqabala
(Buku Pemugaran dan Pengurangan). Kata Al Khuwarizmi dibaca orang barat menjadi
Algorism yang kemudian lambat laun menjadi Algorithm diserap dalam bahasa
Indonesia menjadi Algoritma. Algoritma dapat diartikan urutan langkah-langkah
(instruksi-instruksi / aksi-aksi) terbatas untuk menyelesaikan suatu masalah.
Dari pengertian diatas maka dapat diartikan Logika dan Algoritma adalah ilmu
yang mempelajari cara penyelesaian masalah berdasarkan langkah-langkah terbatas
yang logis dan sistematis dengan tujuan tertentu.
Contoh Algoritma:
Permasalahan:
Diberikan dua gelas (A dan B), gelas A berisi air kopi dan gelas B berisi air teh.
Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A semula berisi air kopi
menjadi berisi air teh dan gelas B yang semula berisi air teh menjadi berisi air kopi.
Penyelesaian:
Untuk mempertukarkan isi gelas dengan benar, maka diperlukan gelas
tambahan yang kita namakan gelas C sebagai tempat penampungan sementara.
Berikut Algoritmanya:
MODUL LOGIKA DAN ALGORITMA Page 1
Algortima Tukar_Isi_Gelas Ada dua gelas (gelas A dan gelas B), gelas A berisi Kopi dan gelas B berisi Teh. Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi Kopi menjadi berisi Teh dan gelas B yang semula berisi Teh menjadi berisi Kopi Deskripsi
1. Tuangkan isi gelas A ke gelas C
2. Tungkan isi gelas B ke gelas A
3. Tuangkan isi gelas C ke gelas B
Gambar 1. Algoritma Tukar Isi Gelas
(Sumber Rujukan: Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )
Hasil akhir dari algoritma pertukaran isi gelas menjadi:
A : berisi Teh
B : berisi air Kopi
B. Syarat-Syarat Algoritma
Syarat-Syarat Algoritma menurtu Donald E. Knuth, yaitu:
1. Finiteness (Keterbatasan)
Algoritma harus berakhir setelah melakukan sejumlah langkah proses
2. Definiteness (Kepastian)
Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak
menimbulkan makna ganda
3. Input (Masukan)
Sebuah algoritma memiliki nol atau lebih masukan (input) yang diberikan
kepada algoritma sebelum dijalankan
4. Output (Keluaran)
Setiap algoritma memberikan satu atau beberapa hasil keluaran
5. Effectiveness (Efektivitas)
Langkah-langkah algoritma dikerjakan dalam waktu yang “wajar”
C. Struktur Dasar Algoritma
MODUL LOGIKA DAN ALGORITMA Page 2
Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan,
pemilihan dan pengulangan. Berikut Penjelasan ringkas dari tiga struktur tersebut :
1. Runtunan
Runtunan yaitu satu atau lebih instruksi yang dikerjakan secara berurutan
sesuai dengan urutan penulisannya. Urutan dari instruksi menentukan hasil
akhir dari suatu algoritma. Bila urutan penulisan berubah maka mungkin juga
hasil akhirnya berubah.
Perhatikan contoh operasi aritmatika berikut:
A B
(3 * 5) + 5 = 20 3 * (5 + 5) = 30
Dari contoh diatas dapat dilihat ternyata hasil akhirnya dapat berubah apabila
urutan pengerjaannya berbeda.
2. Pemilihan
Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi
adalah persyaratan yang dapat bernilai benar atau salah. Instruksi hanya
dilaksanakan apabila kondisi bernilai benar, sebaliknya apabila salah maka
instruksi tidak akan dilaksankan. Pernyataaan kondisi menggunakan statemen
If (jika) dan Then (maka).
Contoh pernyataaan kondisi
Jika suatu bilangan habis dibagi dua
Maka bilangan itu bilangan genap
3. Pengulangan
Pengulangan merupakan pengulangan sejumlah aksi yang sama sebanyak
jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan. Beberapa
statemen pengulangan yaitu:
- For … To ... Do / For ... Downto ... Do
- While … Do
- Repeat ... Until
D. Penulisan Algoritma
Algoritma dapat ditulis dengan cara berikut:
MODUL LOGIKA DAN ALGORITMA Page 3
1. Menggunakan bahasa natural
2. Menggunakan kode semu (pseudo-code)
Teknik penulisan yang mendekati bahasa pemrograman tertentu
3. Menggunakan diagram alir (flow chart)
Teknik penyajian dengan menggunakan symbol-simbol.
Dari ketiga cara ditas untuk mempermudah translasi teks algoritma kedalam
teks program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa
pemrograman (pseudo-code).
Contoh:
Tulislah algoritma untuk mencari Luas Persegi Panjang, apabila diketahui nilai
panjang 8 dan nilai lebar 5.
Bahasa Natural
1 Mulai
2 Masukkan Nilai Panjang Persegi Panjang
3 Masukkan Nilai Lebar Persegi Panjang
4 Hitung Luas Persegi (Luas = Panjang x Lebar)
5 Tampilkan Nilai Luas Persegi Panjang
7 Selesai
Pseude Code
1 Start
2 Input (Panjang)
3 Input (Lebar)
4 Luas := Panjang * Lebar
5 Output (Luas)
7 End
E. Teks Algoritma
Teks algoritma tersusun dalam tiga bagian, yaitu:
MODUL LOGIKA DAN ALGORITMA Page 4
1. Bagian Kepala
2. Bagian Deklarasi
3. Bagian Deskripsi
Setiap bagian disertai dengan penjelasan tentang maksud penulisan teks.
Penjelasan ini ditulis dalam kurung seperti ini { }
Algoritma nama_algoritma {penjelasan singkat uraian yang dilakukan oleh
algoritma}
Deklarasi {semua nama yang digunakan, meliputi nama-nama: tipe,
konstanta, variable juga nama sub program dinyatakan dibagian ini}
Deskripsi {semua langkah penyelesaian dituliskan disini}
(Sumber : Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )
Kesimpulannya:
Suatu Algoritma yang terbaik(The Best) : “Suatu algoritma harus menghasilkan output yan 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”
Contoh-2 Algoritma:
MODUL LOGIKA DAN ALGORITMA Page 5
A. Algoritma untuk mengirimkan surata. Tulis surat pada secarik kertas suratb. Ambil sampul surat atau amplopc. Masukkan surat ke dalam amplopd. Tutup amplop surat dengan lem perekate. Tulis alamat surat yang dituju, jika tidak diingat, lebih dahulu ambil buku
alamat & cari alamat yang dituju, lalu tulis alamat tersebut pada amplop surat
f. Tempelkan perangko pada amplop suratg. Bawa surat ke kantor pos untuk diserahkan pada pegawai pos atau
menuju ke bis surat untuk memasukkan surat ke dalam kotak/bis surat.B. Algoritma untuk menentukan bilangan akar kuadrat dari suatu bilangan bulat
positif yang diinput.a. Baca bilangan bulat positif yang diinput, sebut saja sebagai A.b. Dinyatakan Nilai B adalah 0c. Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari Nilai A, lalu
stopd. Jika tidak, maka nilai B akan bertambah 1e. Kembali ke langkah pada No.3
Contoh-2 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:
a. 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 berikirm surat)
Contoh:
1. Untuk mengitung Luas Segitiga:
2. Masukan Nilai Alas
3. Masukan Nilai Tinggi
4. Hitung Luas = (Alas * Tinggi)/2
5. Cetak Luas
MODUL LOGIKA DAN ALGORITMA Page 6
b. Dengan diagram alur atau flowchart: yaitu dengan membuat suatu penulisan atau penyajian algoritma berupa diagram yang menggambarkan susunan alur logika dari suatu permasalahan
Contoh:
c. Dengan Statement Program/Penggalan Program
Contoh:
1. Read Alas
2. Read Tinggi
3. Luas=(Alas*Tinggi)/2
4. Write(luas)
MODUL LOGIKA DAN ALGORITMA Page 7
BAB II
MENGENAL PASCAL
A. Sejarah
Pascal merupakan pengembangan dari bahasa ALGOL 60 yang diperuntukkan
untuk sains dan komputasi. Pada tahun 1960 beberapa ahli komputer
mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari Swiss
Federal Institute of Technology (ETH-Zurich), yang merupakan anggota group ALGOL.
Nama PASCAL diambil dari nama seorang filsuf dan ahli matematika dari Perancis.
Pascal adalah bahasa pemrograman terstruktur yang membedakan blok-blok
pendeklarasian tipe, variable dan penulisan kode program. Pascal memiliki
keunggulan untuk dipelajari oleh pemula karena struktur yang jelas serta tidak
bersifat case sensitive (tidak membedakan huruf besar dan huruf kecil). TPW 1.5
merupakan bahasa pemrograman pasacal yang berjalan dibawah sistem operasi
windows.
B. Struktur Bahasa Pascal
Struktur bahasa pascal terdiri dari:
1. Judul Program
2. Blok Program
a. Bagian Deklarasi
Deklarasi Tipe
Deklarasi Konstanta
Deklarasi Variabel
Deklarasi Label
Deklarasi Prosedur
Deklarasi Fungsi
b. Bagian Pernyataan
MODUL LOGIKA DAN ALGORITMA Page 8
Keterangan:
1. Judul Program bersifat optional boleh disertakan boleh juga tidak, tapi
sebaiknya dituliskan untuk keperluan dokumentasi. Penulisan judul program
terletak pada awal penulisan dan diakhiri dengan tanda titik koma. Contoh:
2. Bagian Deklarasi merupakan bagian untuk menuliskan pengenal (identifier),
yang dapat berupa label, konstanta, tipe, variabel dan fungsi.
Identifier terdiri atas:
a. Identifier Umum
Identifier umum merupakan identifier yang didefenisikan sendiri oleh
pemrogram yang tidak boleh sama dengan identifier standard maupun
identifier “reserved word”
b. Identifier Standar
Identifier standar merupakan identifier yang terdapat pada library
compiler. Library berisi procedure, fungsi, unit yang siap pakai.
Contoh identifier standar:
Read, readln, write, writeln
c. Identifier “reserved word”
Identifier yang telah ada atau telah didefenisikan dan digunakan bahasa
Pascal.
Contoh identifier:
Begin, end, if, else
2.1. Deklarasi Variabel dan Konstanta
Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili
suatu nilai tertentu didalam proses program. Berbeda dengan konstanta yang
nilainya selalu tetap, nilai dari suatu variabel dapat berubah sesuai kebutuhan.
MODUL LOGIKA DAN ALGORITMA Page 9
2.2. Deklarasi Tipe
Tipe data dalam pascal dibedakan dalam dua macam, yaitu : tipe data dasar
dan tipe data bentukan. Tipe data dasar terdiri dari: bilangan logic, bilangan
bulat, bilangan Riil dan Karakter. Sedangkan tipe data bentukan terdiri dari:
string, Rekaman dan tipe bentukan yang dibentuk dari tipe dasar.
2.2.1 Bilangan Logika
MODUL LOGIKA DAN ALGORITMA Page 10
Operator Not merupakan operator Unary (hanya 1 operand)
Operator AND, OR, XOR merupakan operator Binary
(operator yang memerlukan 2 operand)
Contoh:
2.2.2 Bilangan Bulat (Integer)
MODUL LOGIKA DAN ALGORITMA Page 11
2.2.3 Bilangan Real (Pecahan)
Bilangan Real merupakan bilangan pecahan yang dinyatakan dalam bentuk
eksponensial. Bilangan real memiliki beberapa macam tipe, yaitu:
2.2.4 CHAR
Char adalah semua character yang terdapat pada tombol keyboard atau
semua karakter yang terdapat dalam kode ASCII.
Operasi yang ada pada tipe ini hanya operasi perbandingan
MODUL LOGIKA DAN ALGORITMA Page 12
2.2.5 STRING
String adalah deretan karakter dengan panjang tertentu
Operasi yag terdapat pada tipe string, yaitu:
a. Operasi Penyambungan (Concatenation)
Operasi penyambungan menggunakan operator „+‟
Contoh : „AKMI‟ + „ Baturaja‟ hasilnya: „AKMI Baturaja‟
b. Operasi Perbandingan
2.2.6 REKAMAN
Rekaman disusun oleh satu atau lebih field. Tiap field menyimpan data dari
tipe dasar tertentu yang sudah didefenisikan sebelumnya. Rekaman juga
disebut dengan tipe terstruktur.
2.2.7 TIPE BENTUKAN DARI TIPE DASAR
Nama baru untuk tipe bentukan dapat dibuat dengan kata kunci type.
MODUL LOGIKA DAN ALGORITMA Page 13
BAB III
FLOW CHART
A. Flow Chart
Flowchart adalah bagan-bagan yang mempunyai arus yang menggambarkan
langkah-langkah penyelesaian suatu masalah. Flowchart merupakan cara
penyajian dari suatu algoritma.
Ada 2 jenis Flowchart :
1. System Flowchart
Menggambarkan urutan proses dalam system dengan menunjukkan alat
media input, output serta jenis media penyimpanan dalam proses
pengolahan data.
2. Program Flowchart
Menggambarkan urutan instruksi yang digambarkan dengan symbol
tertentu untuk memecahkan masalah dalam suatu program.
B. Simbol Flow Chart
Secara garis besar simbol Flowchart terdiri dari:
1. Simbolpenghubung alur (Flow Direction Symbols)
2. Simbol Proses (Processing Symbols)
3. Simbol Input-Output (Input-Output Symbols)
MODUL LOGIKA DAN ALGORITMA Page 14
Bentuk umum dari symbol-simbol Flow Chart antara
lain:
MODUL LOGIKA DAN ALGORITMA Page 15
MODUL LOGIKA DAN ALGORITMA Page 16
MODUL LOGIKA DAN ALGORITMA Page 17
BAB IV
PEMROGRAMAN PADA PASCAL
A. Translasi Teks Algoritma kedalam Pascal
Teks Algoritma dapat dijalankan pada komputer setelah ditranslasi kedalam
bahasa pemrograman tertentu. Bahasa pemrograman yang digunakan pada bahasan
ini adalah bahasa pascal.
Sebagai contoh perhatikan algoritma berikut in
MODUL LOGIKA DAN ALGORITMA Page 18
MODUL LOGIKA DAN ALGORITMA Page 19
MODUL LOGIKA DAN ALGORITMA Page 20
MODUL LOGIKA DAN ALGORITMA Page 21
MODUL LOGIKA DAN ALGORITMA Page 22
MODUL LOGIKA DAN ALGORITMA Page 23
MODUL LOGIKA DAN ALGORITMA Page 24
MODUL LOGIKA DAN ALGORITMA Page 25
MODUL LOGIKA DAN ALGORITMA Page 26
MODUL LOGIKA DAN ALGORITMA Page 27
MODUL LOGIKA DAN ALGORITMA Page 28
MODUL LOGIKA DAN ALGORITMA Page 29
MODUL LOGIKA DAN ALGORITMA Page 30
MODUL LOGIKA DAN ALGORITMA Page 31
MODUL LOGIKA DAN ALGORITMA Page 32
MODUL LOGIKA DAN ALGORITMA Page 33
MODUL LOGIKA DAN ALGORITMA Page 34
MODUL LOGIKA DAN ALGORITMA Page 35
DAFTAR PUSTAKA
Jogiyanto H.M. 1997. Turbo Pascal. Andi Offset Yogyakarta
Rinaldi Munir. 2001. Algoritma dan Pemrograman Dalam Bahasa Pascal dan C, Buku
1. Informatika Bandung
MODUL LOGIKA DAN ALGORITMA Page 36