Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pengantar Algoritma dan pemograman

Presentasi serupa


Presentasi berjudul: "Pengantar Algoritma dan pemograman"— Transcript presentasi:

1 Pengantar Algoritma dan pemograman
Perkuliahan 2 Pengantar Algoritma dan pemograman

2 Algoritma 1. Pengertian Algoritma
Algoritma berasal dari kata penulis buku Arab terkenal Abu Ja’far Muhammad ibnu Musa Al-Khwarizmi. (Oleh orang Barat di baca algorism), dalam bahasa indonesia menjadi algoritma Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. 

3 Algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik.

4 Beda Algoritma dan Program
Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa : Program = Algoritma + Bahasa (Struktur Data) Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.

5 Pembuatan algoritma mempunyai banyak keuntungan di antaranya :
Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan  algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

6 Beberapa hal yang perlu diperhatikan dalam membuat algoritma :
Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.

7 Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.

8 Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu : a.  Pendeklarasian variabel Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila    tidak semua bahasa pemrograman membutuhkannya. b.  Pemilihan tipe data Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data.

9 c.  Pemakaian instruksi-instruksi
Beberapa instruksi mempunyai kegunaan yang sama tetapi masing-masing memiliki kelebihan dan kekurangan yang berbeda. d.  Aturan sintaksis Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan. e.  Tampilan hasil Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program. f.  Cara pengoperasian compiler atau interpreter. Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.

10 Bentuk Dasar Algoritma
Algoritma sendiri mempunyai tiga 3 bentuk dasar, antara lain:  Algoritma Sekuensial (Sequence Algorithm) Sequence algorithm atau algoritma sekuensial merupakan algoritma yang langkah-langkahnya secara urut dari awal hingga akhir. Bentuk dari algoritma sekuensial ini salah satu contohnya seperti algoritma memasak air. Langkah demi langkah yang dijalankan harus urut dari atas sampai bawah.Algoritma Perulangan (Looping Algorithm) Looping algorithm atau algoritma perulangan merupakan suatu algoritma yang menjalankan beberapa langkah tertentu secara berulang-ulang atau looping. Pada masalah yang kita hadapi, ada pula sebuah langkah yang harus kita lakukan secara berulang-ulang. Contoh dari algoritma looping ini adalah algoritma menjemur pakaian:

11 1) Siapkan jemuran. 2) Ambil satu pakaian yang nantinya akan dijemur
1) Siapkan jemuran. 2) Ambil satu pakaian yang nantinya akan dijemur. 3) Peras pakaian tersebut terlebih dahulu. 4) Letakkan pakaian tersebut pada tiang jemuran. 5) Ulangi langkah dari 2 sampai 4 hingga pakaian habis. Dari algoritma di atas, dapat diketahui bahwa dari langkah 2 sampai 4 harus dilakukan secara berulang-ulang hingga pakaian habis.

12 3. Algoritma Percabangan atau Bersyarat (Conditional Algorithm)
Conditional algorithm atau algoritma bersyarat merupakan algoritma yang menjalankan langkah berikutnya apabila terdapat syarat yang sudah dapat dipenuhi. Berikut salah satu contoh dari algoritma bersyarat :  1) Siapkan panci. 2) Masukkan air secukupnya ke dalam panci. 3) tutup panci tersebut. 4) letakkan panci tersebut di atas kompor. 5) Hidupkan kompor. 6) Apabila air sudah mendidih, lalu matikan kompor. 7) Angkat panci tersebut dari kompor. Algoritma bersyarat atau contional algorithm terdapat pada langkah ke 6. Apabila air sudah mendidih, lalu matikan kompor. Sehingga apabila air tersebut belum mendidih, maka kompor tidak dimatikan.

13

14 Mekanisme Pelaksanaan Algoritma oleh Pemroses
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer.

15 Algoritma adalah langkah-langkah penyelesaikan masalah, sedangkan program adalah realisasi algoritma dalam bahasa pemrograman. Program ditulis dalam salah satu bahasa pemrograman dan kegiatan membuat program disebut pemrograman (programming).Orang yang menulis programdisebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan komputer.

16 Contoh. membuat Kue 1. Sediakan bahan-bahan 2. Olah adonan
3. Letakan di atas kompor 4. Nyalakan kompor Urutan langkah membuat kue di atas disebut algoritma

17 Contoh Seorang pemuda tiba di tepi sebuah sungai. Pemuda tersebut membawa seekor kambing, seekor srigala dan sekerangjang sayur. Mereka bermaksud menyebrangi sungai dengan sebuah perahu yang hanya memuat dua beban. Masalahnya timbul karena jika srigala yang terlebih dahulu dibawa, maka sayur akan habis dimakan kambing.

18 2. Ciri-ciri Algoritma Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak bermakna ganda (ambiguous) Algoritma memiliki masukan. Masukan ialah besaran yang diberikan kepada algoritma Algoritma mempunyai keluaran (output). Keluaran ialah besaran yang memiliki hubungan dengan masukan. Setiap langkah algoritma yang dibuat harus efektif.

19 Pemograman 1. Pengertian Pemograman
Algoritma + struktur data (bahasa pemograman ) = pemograman program adalah serangkaian instruksi yang ditulis untuk melakukan suatu fungsi spesifik pada computer. Sebuah program biasanya memiliki suatu bentuk model pengeksekusian tertentu agar dapat secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang dapat dibaca oleh manusia disebut sebagai kode sumber, bentuk program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritma yang digunakan pada program tersebut. 

20 Algoritma Bahasa Tingkat Tinggi Bahasa Mesin Operasi
2. Mekanisme pemgoraman Algoritma Translasi Bahasa Tingkat Tinggi Kompilasi Bahasa Mesin Intepretasi CPU Operasi

21 3. Langkah-langkah pemograman
Mendefinisikan masalah Memahami persoalan, menentukan input dan output, seberapa kompleks program yang akan dibuat Menentukan solusi penyelesaian bagaimana program seharusnya dibuat. Jika program terlalu banyak, maka dipecah menjadi beberapa modul Menentukan algoritma berdasarkan algoritma berdasarkan kebutuhan program Menulis program Menguji program Menuliskan dokumentasi Merawat program

22 4. Bahasa Pemograman 1. Berdasarkan aplikasi:
a. Bahasa pemograman bertujuan khusus (bahasa pemograman yang digunakan untuk tujuan tertentu) Cobol (bisnis), fortran (pemograman saintifik), assembly (aplikasi pemograman mesin komputer), prolog (aplikasi kecerdasan buatan) b. Bahasa pemograman bertujuan umum : pascal, C, C++, basic

23 2. Berdasarkan kedekatan dengan manusia
1. Bahasa tingkat rendah (low level programming language) yaitu: bahasa pemograman yang dirancang agar setiap intruksinya langsung dikerjakan oleh komputer (menggunakan kode 0 dan 1). sifat : machine dependet (bahasa pemograman suatu jenis komputer akan berbeda dengan jenis lainnya) Contoh: bahasa assembly 2. Bahasa tingkat tinggi (high level programming language), yaitu : bahasa pemograman yang dirancang agar lebih dimengerti oleh manusia (lebih manusiawi). sifat: semua jenis komputer dapat menggunakan bahasa pemograman yang sama Contoh: Fortran, C, C++, Pascal, Cobol, basic, dll

24 5. Jenis Pemograman Pemograman prosedural
pemograman yang dibuat berdasarkan langkah-langkah prosedural (menggunakan pola algoritma) Pemograman berorientasi objek (Object Oriented Programming) Pemograman fungsional

25 1. Struktur Teks Algoritma
Judul Adalah bagian yang terdiri atas nama program dan penjelasan (spesifikasi) tentang program tersebut. Nama program sebaiknya menrepresentasikan apa yang dilakukan oleh algoritma b. Deklarasi Digunakan untuk mengumumkan sebuah nama yang dipakai dalam algoritma beserta propertinya (misalnya: tipe). Nama-nama yang dimaksud adalah, nama konstanta, nama peubah, nama prosedur. Algoritma Bagian yahg berisi langkah-langkah penyelesaian yang digunakan berupa pernyataan-pernyataan.

26 2. Struktur Dasar Algoritma
a. Runtunan (Sequence) Runtunan berisi lebih dari satu pernyataan (pernyataan gabungan/Compound statement) yang dikerjakan secara berurutan b. Pemilihan (Selection) Dalam sebuah program, sering kita jumpai aksi (statement) yang melibatkan syarat untuk sebuah pemilihan. c. Pengulangan (Repitition)

27 Karakteristik algoritma
Tidak ambigu harus memiliki tafsiran atau maksud tunggal Tepat urutan-urutan langkah harus tepat sampai tujuan / hasil Pasti hasil yang diperoleh harus pasti untuk serangkaian langkah yang dilakukan harus menghasilkan nilai yang selalu sama

28 3. Notasi Algoritma Diagram Alir (Flow Chart)
Diagram alir atau flow chart adalah tehnik yang digunakan untuk mendeskripsikan suatu algoritma dengan menggunakan simbol-simbol gambar 1. Kotak mulai/berhenti Mulai, berhenti berhenti mulai

29 2. Masukan Kotak masukan : untuk membaca data yang diberikan pada suatu variabel Masukan a

30 3. Kotak Penugasan Kotak penugasan : untuk melakukan perhitungan matematis yang hasilnya diberikan pada suatu variabel x  a + b x  2

31 4. Keluaran (ouput) Kotak keluaran digunakan untuk mencetak atau sebagai putput dari algoritma Contoh. cetak x

32 5. Kotak Keputusan Kotak keputusan digunakan untuk memutuskan arah atau percabangan yang diambil sesuai dengan kondisi yang disyaratkan. kondisi ya tidak contoh

33 6. Kotak Pengulangan Kotak pengulangan digunakan untuk pengulangan yang diambil sesuai dengan kondisi yang disyaratkan. kondisi i  i+ 1 contoh

34 7. Kotak Penghubung Kotak digunakan untuk menyambung sebuah algoritma yang terputus, misalnya disebabkan oleh pergantian halaman.

35 b. Pseudocode pseudocode adalah teknik penulisan algoritma dengan menggunakan sintak secara langsung Contoh. sebuah pernyataan dalam notasi deskriptif: gantikan nilai 2 ke x maka pseudo-code dalam notasi algoritmik adalah: x  2

36 Terima kasih


Download ppt "Pengantar Algoritma dan pemograman"

Presentasi serupa


Iklan oleh Google