Top Banner
Pengertian Algoritma & Pemrograman 1. Algoritma Asal usul kata algoritma dapat Anda baca dalam buku “The Art of Computer Programming Second Edition Volume I” yang ditulis oleh Donald E.Knuth (1973,p1) 2). Menurut Donald E. Knuth (1973,p4), algoritma dalam pengertian modern mempunyai kemiripan dengan istilah resep, proses, metode, teknik, prosedur,rutin. Algoritma adalah sekumpulan aturan-aturan berhingga yang memberikan sederetan operasi-operasi untuk menyelesaikan suatu jenis masalah yang khusus. Menurut Rinaldi Munir, algoritma adalah urutan langkah- langkah logis penyelesaian masalah yang disusun secara sistematis. Berdasarkan dua pengertian algoritma di atas, dapat
69

Alpro 01.ppt

Oct 21, 2015

Download

Documents

Adhika Dhaffa
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Alpro 01.ppt

Pengertian Algoritma & Pemrograman

1. Algoritma Asal usul kata algoritma dapat Anda baca dalam buku “The Art of Computer Programming Second Edition Volume I” yang ditulis oleh Donald E.Knuth (1973,p1)

2). Menurut Donald E. Knuth (1973,p4), algoritma dalam pengertian modern mempunyai kemiripan dengan istilah resep, proses, metode, teknik, prosedur,rutin.

Algoritma adalah sekumpulan aturan-aturan berhingga yang memberikan sederetan operasi-operasi untuk menyelesaikan suatu jenis masalah yang khusus.

Menurut Rinaldi Munir, algoritma adalah urutan langkah-langkah logispenyelesaian masalah yang disusun secara sistematis. Berdasarkan dua pengertian algoritma di atas, dapat disimpulkan bahwa algoritma merupakan suatu istilah yang luas, yang tidak hanya berkaitan dengan dunia komputer.

Page 2: Alpro 01.ppt

2. Pemrograman Pemrograman berasal dari kata program yang diberi awalan pe– dan akhiran –an. Dalam buku ini, program berarti program komputer. Pengertian program komputer menurut John M. Zelle, Ph.D.dalam bukunya yang berjudul “Python Programming: An Introduction to Computer Science” (2002, p1) adalah sekumpulan instruksi langkah per langkah yang memberitahukan mengenai yang harus dilakukan komputer secara tepat. Pemrograman adalah segala kegiatan pembuatan program komputer. Kemudian terdapat pula istilah bahasa pemrograman yang berarti bahasa yang digunakan dalam pembuatan program komputer.

Berdasarkan pengertian algoritma dan pemrograman, maka dapat dikatakan bahwa program merupakan hasil penerapan dari algoritma-algoritma. Akan tetapi, dalam buku ini tidak dibahas materi mengenai pembuatan program komputer. Buku ini memfokuskan teknik-teknik pembuatan algoritma itu sendiri, mempelajari pembuatan algoritma-algoritma yang dapat diterapkan dalam pemrograman.

Page 3: Alpro 01.ppt

B. Tipe-tipe Algoritma Berdasarkan Format Penulisan Algoritma adalah independen terhadap bahasa pemrograman tertentu, artinya algoritma yang telah dibuat tidak boleh hanya dapat diterapkan pada bahasa pemrograman tertentu. Penulisan algoritma tidak terikat pada suatu aturan tertentu, tetapi harus jelas maksudnya untuk tiap langkah algoritmanya.

Namun pada dasarnya algoritma dibagi menjadi beberapa macam berdasarkan format penulisannya, yaitu:

1. Deskriptif Algoritma bertipe deskriptif maksudnya adalah algoritma yang ditulis dalam bahasa manusia sehari-hari (misalnya bahasa Indonesia atau bahasa Inggris) dan dalam bentuk kalimat. Setiap langkah algoritmanya diterangkan dalam satu atau beberapa kalimat.

Page 4: Alpro 01.ppt

Sebagai contoh misalnya algoritma menentukan bilangan terbesar dari 3 bilangan berikut ini:

Algoritma Menentukan_bilangan_terbesar_dari_3_bilangan

1. Meminta input 3 bilangan dari user, misalkan bilangan a, b, dan c.

2. Apabila bilangan a lebih besar dari b maupun c, maka bilangan a merupakan bilangan terbesar

3. Jika tidak (bilangan a tidak lebih besar dari b atau c) berarti bilangan a sudah pasti bukan bilangan terbesar. Kemungkinannya tinggal bilangan b atau c.

Apabila bilangan b lebih besar dari c, maka b merupakan bilangan terbesar.

Sebaliknya apabila bilangan b tidak lebih besar dari c, maka bilangan c merupakan yang terbesar.

4. Selesai.

Page 5: Alpro 01.ppt

2. Flow Chart (Diagram Alir) Selain dalam bentuk tulisan, algoritma juga dapat ditulis dalam bentuk diagram-diagram dengan anak panah sebagai penunjuk urutan langkah algoritmanya. Algoritma yang ditulis dengan simbol-simbol demikian yang dinamakan flow chart.

Mengenai lambang-lambang yang digunakan akan dibahas pada bagian selanjutnya. Sekarang diberikan suatu contoh algoritma menentukan bilangan terbesar dari 3

bilangan seperti yang dicontohkan sebelumnya, tetapi ditulis dalam bentuk flow chart.

Page 6: Alpro 01.ppt

3. Pseudocode Pseudo berarti imitasi dan code berarti kode yang dihubungkan dengan instruksi yang ditulis dalam bahasa komputer (kode bahasa pemrograman). Apabila diterjemahkan secara bebas, maka pseudocode berarti tiruan atau imitasi dari kode bahasa pemrograman.

Pada dasarnya, pseudocode merupakan suatu bahasa yang memungkinkan programmer untuk berpikir terhadap permasalahan yang harus dipecahkan tanpa harus memikirkan syntax dari bahasa pemrograman yang tertentu. Tidak ada aturan penulisan syntax di dalam pseudocode. Jadi pseudocode digunakan untuk menggambarkan logika urut-urutan dari program tanpa memandang bagaimana bahasa pemrogramannya.

Walaupun pseudocode tidak ada aturan penulisan syntax, di dalam buku inidiberikan suatu aturan-aturan penulisan syntax yang cukup sederhana agar kita dapat lebih mudah dalam mempelajari algoritma-algoritma yang ada di dalam buku ini. Pseudocode yang ditulis di dalam buku ini akan menyerupai (meniru) syntax-syntax dalam bahasa Pascal.

Page 7: Alpro 01.ppt

Contoh algoritma menentukan bilangan terbesar dari tiga bilangan yang ditulis dalam bentuk pseudocode dengan gaya buku ini.

Page 8: Alpro 01.ppt
Page 9: Alpro 01.ppt
Page 10: Alpro 01.ppt
Page 11: Alpro 01.ppt
Page 12: Alpro 01.ppt
Page 13: Alpro 01.ppt
Page 14: Alpro 01.ppt
Page 15: Alpro 01.ppt

RUNTUNAN

A. Pengertian Runtunan merupakan struktur algoritma yang mempunyai ciri-ciri sebagai berikut: 1. tiap instruksi dikerjakan satu per satu 2. tiap instruksi dikerjakan tepat hanya sekali, dengan kata lain tidak ada instruksi yang diulang3. instruksi dikerjakan berurutan mulai dari instruksi pertama hingga instruksi terakhir 4. akhir dari instruksi terakhir merupakan akhir algoritma. Dalam algoritma, urutan instruksi adalah penting. Hal ini dapat dilihat dalam contoh berikut ini.

Page 16: Alpro 01.ppt
Page 17: Alpro 01.ppt
Page 18: Alpro 01.ppt
Page 19: Alpro 01.ppt
Page 20: Alpro 01.ppt
Page 21: Alpro 01.ppt
Page 22: Alpro 01.ppt

6. Algoritma Pembulatan Seratusan Buatlah algoritma untuk membulatkan suatu data harga ke dalam ratusan. Data harus dibulatkan ke atas. Misalnya harga suatu barang adalah 8374 rupiah. Maka harga dibulatkan menjadi 8400 rupiah. Analisis: input : data harga (harga) output : hasil pembulatan (hasil)

Caranya: 1. Ambil dua angka terakhirnya dengan cara di mod dengan 100. Dalam kasus di atas, 8374 mod 100 = 74. 2. Kemudian hitunglah 100 dikurangi 2 angka terakhir tersebut. Dalam kasus di atas, 100 – 74 = 26. 3. Hasil pembulatannya: harga ditambah hasil langkah ke-2. pada kasus di atas, hasil pembulatan dari 8374 adalah 8374 + 26 = 8400.

Page 23: Alpro 01.ppt
Page 24: Alpro 01.ppt
Page 25: Alpro 01.ppt
Page 26: Alpro 01.ppt
Page 27: Alpro 01.ppt
Page 28: Alpro 01.ppt
Page 29: Alpro 01.ppt
Page 30: Alpro 01.ppt
Page 31: Alpro 01.ppt
Page 32: Alpro 01.ppt
Page 33: Alpro 01.ppt
Page 34: Alpro 01.ppt
Page 35: Alpro 01.ppt
Page 36: Alpro 01.ppt
Page 37: Alpro 01.ppt
Page 38: Alpro 01.ppt
Page 39: Alpro 01.ppt
Page 40: Alpro 01.ppt
Page 41: Alpro 01.ppt
Page 42: Alpro 01.ppt
Page 43: Alpro 01.ppt
Page 44: Alpro 01.ppt
Page 45: Alpro 01.ppt
Page 46: Alpro 01.ppt
Page 47: Alpro 01.ppt
Page 48: Alpro 01.ppt
Page 49: Alpro 01.ppt

PERULANGAN

(LOOPING)

Page 50: Alpro 01.ppt
Page 51: Alpro 01.ppt
Page 52: Alpro 01.ppt
Page 53: Alpro 01.ppt
Page 54: Alpro 01.ppt
Page 55: Alpro 01.ppt
Page 56: Alpro 01.ppt
Page 57: Alpro 01.ppt
Page 58: Alpro 01.ppt

Program LAT_DERET;use crt;var i, n, Jum : integer;

BEGINclrscr;jum:= 0;

write(‘masukan nilai ‘); readln(n);

FOR i:= 1 to n do jum:= jum + i ; writeln(‘ hasil Jumlah adalah ‘,jum); readln;END.

Page 59: Alpro 01.ppt
Page 60: Alpro 01.ppt
Page 61: Alpro 01.ppt
Page 62: Alpro 01.ppt

Masukan psrt : 5

nilai 1 : 55nilai 2 : 65nilai 3 : 60nilai 4 : 46nilai 5 : 78

jumlah peserta yg lulus : 3

Page 63: Alpro 01.ppt

Program Lulusan;uses crt ;var n, i, lulus, gagal : integer; nilai : integer;Beginwrite (‘masukan jum peserta : ‘);readln(n);lulus :=0 ;gagal :=0;For i := 1 to n do begin write (‘nilai peserta ’, i ,’ : ’); readln(nilai) IF nilai >= 60 THEN Lulus:= lulus+1 ELSE gagal:= gagal+1; end;writeln(‘jumlah peserta yg lulus : ’, Lulus);writeln(‘jumlah peserta yg gagal : ’, gagal);readln;End.

Page 64: Alpro 01.ppt
Page 65: Alpro 01.ppt

Program Nested_loop;uses crt ;var n, i, j : integer;

Beginwrite (masukan jum peserta : ‘);readln(n); 5

For i := 1 to n do begin

For j := 1 downto i do write ( ‘ * ’ ); end;readln;End.

* 1** 22*** 333**** 4444***** 55555

Page 66: Alpro 01.ppt
Page 67: Alpro 01.ppt

Gabungan hal : 21-22Nama 1: joko, Nilai 1: 70Nama 2: dewi, Nilai 2: 50Nama 3: erna, Nilai 3: 90Nama 4: kiki, Nilai 4: 85Nama 5: romi, Nilai 5: 55

Output : Nilai tertinggi : 90Namanya : ernaPada index ke :3

Hal : 27 : GRADE NILAI

TUGAS

Page 68: Alpro 01.ppt

Input : Jenis koleksi : Koleksi / BiasaJum buku : misal : 2Lama pinjam : misal : 12

Output : Biaya Denda

Page 69: Alpro 01.ppt

Input : Jenis Area : A, B, C, DJum m3 pemakaian : misal : 75

Output : Biaya Pemakaian