Anda di halaman 1dari 36

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

MODUL LOGIKA DAN ALGORITMA

Page 2

C. Struktur Dasar Algoritma 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 (3 * 5) + 5 = 20

B 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

MODUL LOGIKA DAN ALGORITMA

Page 3

Repeat ... Until

D. Penulisan Algoritma Algoritma dapat ditulis dengan cara berikut: 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 2 3 4 5 7 Mulai Masukkan Nilai Panjang Persegi Panjang Masukkan Nilai Lebar Persegi Panjang Hitung Luas Persegi (Luas = Panjang x Lebar) Tampilkan Nilai Luas Persegi Panjang Selesai

Pseude Code 1 2 3 4 5 7 Start Input (Panjang) Input (Lebar) Luas := Panjang * Lebar Output (Luas) End

MODUL LOGIKA DAN ALGORITMA

Page 4

E. Teks Algoritma Teks algoritma tersusun dalam tiga bagian, yaitu: 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

MODUL LOGIKA DAN ALGORITMA

Page 5

Contoh-2 Algoritma: A. Algoritma untuk mengirimkan surat 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 & 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 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 0 c. Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari Nilai A, lalu stop d. Jika tidak, maka nilai B akan bertambah 1 e. 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
MODUL LOGIKA DAN ALGORITMA Page 6

5. Cetak Luas

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

Anda mungkin juga menyukai