Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

M1. Konsep dasar algoritma & pemrograman

Presentasi serupa


Presentasi berjudul: "M1. Konsep dasar algoritma & pemrograman"— Transcript presentasi:

1 M1. Konsep dasar algoritma & pemrograman
By : Guntur Eka Saputra, ST., MMSI.

2 SUBJECTIVES ALGORITMA SIFAT ALGORITMA CIRI ATAU KRITERIA ALGORITMA
KARAKTERISTIK ALGORITMA CARA PENYAJIAN ALGORITMA PROGRAM BAHASA PEMROGRAMAN

3 ALGORITMA

4 DEFINISI Secara pembahasan yang teoritis, harus mengenal pengertian PROSEDUR, SEMI-ALGORITMA, dan ALGORITMA. Namun, secara praktis, boleh menganggap ketiga pengertian di atas sebagai satu pengertian yang sama, yakni Prosedur atau Algoritma.

5 Example 1.1 (General) Jika ingin mengirimkan surat kepada teman, yaitu: Tulis surat pada secarik kertas surat Ambil sampul surat Masukkan surat ke dalam sampul Tutup sampul surat menggunakan perekat Jika kita ingat alamat teman tersebut, maka tulis alamat pada sampul surat. Jika tidak ingat, lihat lebih dahulu pada buku alamat, baru kemudian kita tulis alamat pada sampul surat. Tempel perangko pada surat. Bawa surat ke kantor pos untuk diposkan(kirim).

6 DEFINISI Sebuah Prosedur (yang efektif) didefinisikan sebagai himpunan hingga instruksi, yang bersifat diskrit dan jelas, serta dapat dijalankan secara mekanik. Untuk pemecahan dengan komputer, pengertian dapat dijalankan secara mekanik dapat diartikan sebagai dapat dibuatkan Program komputernya.

7 DEFINISI SEMI-ALGORITMA adalah Prosedur yang mampu menghasilkan pemecahan atau solusi masalah, bila solusi memang ada, dan kemudian berhenti. ALGORITMA adalah SEMI-ALGORITMA yang mampu mendeteksi tidak adanya solusi, bila memang tidak ada, dan mampu pula berhenti.

8 Example 1.2 (General) Berikut ini contoh Prosedur untuk menyelesaikan masalah komputasi akar bulat positif dari suatu bilangan bulat (integer) positif a, yaitu: Baca a Masukkan x sama dengan 1 Hitung y sebesar x * x Jika y sama dengan a, maka cetak x sebagai akar dari a. Selesai Tambah nilai x dengan 1 Pergi ke langkah 3.

9 DEFINISI ALGORITMA, mempunyai arti yang aneh, yaitu menghitung dengan menggunakan angka arab. Jadi, dapat dikatakan sebagai algorist jika menghitung dengan memakai angka arab.

10 DEFINISI Karena kerancuan itulah akhirnya para ahli matematika berusaha untuk menemukan asal kata itu dari seorang penulis buku terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al- Khuwarizmi. Al-Khuwarizmi dibaca menjadi alghorism oleh orang barat.

11 DEFINISI ALGORITMA adalah urutan langkah-langkah logis penyelesaian masalah yang disusun sistematis dan logis. Ada juga yang menyebut bahwa Algoritma adalah urutan akhsi-aksi yang dinyatakan dengan jelas untuk memecahkan masalah dalam waktu tertentu.

12 Of Algorithm In Informatic/Computer?
How the Of Algorithm In Informatic/Computer?

13 Example 1.3 (Informatic/Computer)
Prosedur menggunakan program bahasa BASIC. 10 INPUT A 20 X = 1 30 Y = X * X 40 IF Y = A THEN PRINT X : END 50 X = X + 1 60 GO TO 30

14 SIFAT ALGORITMA

15 SIFAT ALGORITMA Prosedur yang tidak memiliki sifat seperti tertera di dalam penjelasan berikut ini, BUKANLAH merupakan sebuah algoritma, dan tidak dapat membuahkan hasil yang diinginkan jika Program penyajian dari Prosedur seperti itu dimasukkan ke dalam komputer.

16 SIFAT ALGORITMA Sifat Algoritma Langkah Instruksi Hingga
Tidak ada keraguan (harus jelas) Sifat Algoritma Batasan dari rangkaian proses Batasan dari Input dan Output Efektivitas

17 SIFAT ALGORITMA Banyaknya langkah instruksi yang hingga
Pelaksanaan sebuah algoritma yang terprogram harus dapat diselesaikan setelah pelaksanaan sejumlah langkah langkah operasional yang hingga. Jika tidak demikian, tidak bisa mengharapkan bahwa pelaksanaan tersebut dapat membuahkan suatu hasil. Perhatikan Example berikut:

18 SIFAT ALGORITMA Banyaknya langkah instruksi yang hingga Example:
Input nilai A Hitung: hasil <- A mod 2 Jika hasil = 0, Output “Bilangan Genap”, then langkah 5 Jika hasil != 0, output “Bilangan Ganjil”, then langkah 5 SELESAI

19 SIFAT ALGORITMA Berdasarkan contoh maka perlu memperhatikan hal- hal sebagai berikut: Jumlah langkah yang sesungguhnya dibutuhkan, sebenarnya tergantung perincian isi (detail) dari algortima yang bersangkutan. Jumlah langkah operasional yang dilaksanakan biasanya jarang sesuai dengan jumlah langkah yang terdapat di dalam algoritma. Diperlukan suatu Algoritma yang menuju kepada suatu Program dan dapat terpakai dalam waktu cukup lama.

20 SIFAT ALGORITMA 2. Tidak ada keraguan (harus jelas)/ tidak ambigu
Penulisan dari setiap langkah yang terdapat di dalam sebuah Algoritma harus memiliki arti yang khusus atau spesifik. Penulisan langkah bagi komputer dapat berbeda dengan penulisan bagi manusia Manusia akan mudah mengerjakan Algoritma yang terdiri dari simbol (pseudocode, flowchart, natural language), sedangkan komputer membutuhkan sebuah Algoritma dengan kode yang dituangkan ke dalam Program. Pembaca harus mengerti apa yang di maksud dengan “m” dan “n” adalah bilangan bulat tak negatif (-). Contoh lainnya pernyataan ” bagilah p dengan beberapa sejumlah bilangan bulat positif” dapat bermakna ganda. Berapakah yang di maksud dengan “berapa” ?

21 SIFAT ALGORITMA 3. Batasan dari rangkaian proses
Rangkaian proses yang berisi langkah-langkah dari suatu Algoritma yang akan dilaksanakan, harus ditetapkan dengan pasti. Sebuah algoritma harus memiliki instruksi dasar tertentu (yang spesifik) dan setiap instruksi harus memiliki unsur pelaksana yang memproses data masukan.

22 SIFAT ALGORITMA 4. Batasan dari Input dan Output Input merupakan data yang dimasukkan ke dalam Algoritma. Input tersebut harus sesuai dengan jenis Algoritma yang bersangkutan Algoritma haruslah menghasilkan suatu output (jika tidak lalu apa gunanya).

23 SIFAT ALGORITMA 5. Efektivitas
Instruksi dari sebuah algoritma dapat memerintahkan komputer agar hanya melaksanakan penugasan yang mampu dilaksanakannya saja. Komputer tidka dapat melakukan instruksi, jika informasinya tidak lengkap atau jika hasil dari pelaksanaan perintah tidak diberi batasan yang jelas

24 CIRI ATAU KRITERIA ALGORITMA

25 Ciri atau Kriteria Algoritma yang Baik
Menurut Donald E. Knuth Input Output Ciri/Kriteria Finite (Terbatas) Definite (Pasti) Efisien

26 Ciri atau Kriteria Algoritma yang Baik
INPUT Dari sisi input, minimal program harus memiliki nol input atau lebih dari pengguna. Program pasti memiliki input Yang dimaksud nol input adalah program tidak mendapatkan masukan data dari pengguna secara langsung, namum semua data yang akan digunakan oleh prorgam sudah dideklarasikan di dalam kode program yang akan diseksekusi.

27 Ciri atau Kriteria Algoritma yang Baik
2. OUTPUT Dari sisi OUTPUT, minimal program harus memiliki 1 output. Progam pasti menghasilkan output karena program dibuat untuk tujuan tertentu. Tujuan itulah outputnya. Apa saja output yang bisa dihasilkan?

28 Ciri atau Kriteria Algoritma yang Baik
3. FINITE (terbatas) Program harus pasti dan berhenti, bukan tak terhingga Suatu yang dieksekusi haruslah berhenti dan selesai, bukan berjalan terus-menerus hingga HONG UP atau RESPONDING, dan akhirnya harus di KILL dengan paksa. Note : Memang ada program yang seolah-olah tidak pernah mati, misalnya Sistem Operasi, namun sebenarnya sistem operasi juga pasti akan berhenti, yaitu ketika sistem operasi tersebut di Shutdown.

29 Ciri atau Kriteria Algoritma yang Baik
4. DEFINITE Program harus jelas arah dan tujuannya. Suatu program harus jelas kapan mulai dan kapan berakhir, apa tujuannya, dan memiliki logika yang jelas agar dapat menghasilkan output yang sesuai dengan yang diharapkan.

30 Ciri atau Kriteria Algoritma yang Baik
5. EFISIEN Artinya, program harus efisien, tidak memakan banyak memori, tidak melakukan hal-hal yang tidak perlu. Suatu operasi/kegiatan yang tidak perlu, misalnya: X = 5 + 0; Y = 100*0. Hasilnya adalah bilangan itu sendiri

31 Ciri dan Kriteria Algoritma yang Baik
Sumber lain menyatakan bahwa Kriteria Algoritma yang baik adalah sebagai berikut Kriteria Semua operasi terdefinisi Tepat, benar, sederhana, standar dan efektif Ditulis dengan bahasa yang standar dengan format pemrograman Logis, Terstruktur, dan sistematis Semua proses harus berakhir setelah sejumlah langkah dilakukan

32 CARA PENYAJIAN ALGORITMA

33 Penyajian Algoritma Secara garis besar, penyajian algoritma dapat dilakukan menjadi 2 bagian, yaitu dengan menggunakan tulisan dan dengan menggunakan gambar. Algoritma yang menggunakan tulisan yaitu dengan struktur bahasa tertentu (Bahasa Indonesia atau Bahasa Inggris) dan Pseudocode. Sedangkan, Algoritma yang menggunakan gambar yaitu dengan memakai flowchart atau diagram alir.

34 Natural Language

35 Penyajian Algoritma Natural Language
Bahasa Natural (natural language) merupakan car apenyajian suatu algoritma yang paling sederhana dan paling mudah dimengerti. Bahasa natural adalah bahasa yang bisa digunakan sehari-hari namum tetap sesuai kaidah bahasa yang baku. Ada beberapa hal yang perlu diperhatikan jika akan menyajikan suatu algoritma sebuah program dengan bahasa natural, antara lain Start dan End harus dituliskan secara eksplisit.

36 Penyajian Algoritma Natural Language
Start bisa dituliskan ‘inisialisasi’ atau ‘mulai’ yang merupakan langkah pertama dalam algoritma END dituliskan ‘selesai’ dan dituliskan pada akgir algoritma.

37 Penyajian Algoritma Natural Language Contoh 1: Natural Language
Inisialisasi Masukkan nilai panjang (p) dan lebar (l) Menyiapkan variabel luas dengan rumus p*l Menghitung nilai luas = p*l Cetak luas persegi panjang Selesai

38 Penyajian Algoritma Natural Language Contoh 2: Natural Language
Inisialisasi Input sebuah bilangan, masukkan ke dalam sebuah variabel, misalkan saja bil. Apakah bil modulus 2 sama dengan nol? - Jika ya, maka bilangan tersebut adalah bilangan genap. –  Jika tidak, maka sudah dapat dipastikan bahwa bilangan tersebut adalah bilangan ganjil. 4. Tampilkan jenis bilangan (genap, atau ganjil). 5 Apakah ingin mengulang proses? –  Jika ya, kembali ke langkah 2. –  Jika tidak, langsung ke langkah 6 (selesai). 6 Selesai.

39 Pseudocode

40 Penyajian Algoritma Pseudocode
Pseudocode adalah deskripsi dari algoritma pemrograman computer yang menggunakan struktur sederhana dari beberapa bahasa pemrograman agar dapat dikomunikasikan dengan pemrogram. Secara umum, pseudocode mengekspresikan ide- ide secara informal dalam proses penyusunan Algoritma. URL :

41 Penyajian Algoritma Pseudocode
Biasanya yang ditulis dari pseudocode adalah variable dan fungsi. Tidak ada syntax standar yang resmi. Dapat menggunakan pseudocode dalam berbagai bahasa pemrograman. Tujuannya adalah untuk membantu manusia dalam memahami suatu algoritma.

42 Pseudocode Penyajian Algoritma Contoh 1: Penyajian Pseudocode

43 Penyajian Algoritma Pseudocode Contoh 2: Penyajian Pseudocode
Program Luas_lingkaran Deklarasi   π:3.14    :integer  jari-jari  :integer  Luas       :integer Deskripsi      Read(π:3.14, jari-jari)      Luas = π:3.14 * jari-jari      write (luas) end 

44 Pseudocode Example 3:

45 FLOWCHART

46 Penyajian Algoritma FLOWCHART
Flowchart adalah bagan (chart) atau diagram alir (flow) di dalam program atau prosedur sistem secara logika. Flowchart dinyatakan dengan simbol, sehingga setiap simbol mempunyai makna tersendiri. Antara proses yang satu dengan yang lain dalam flowchart digambarkan dengan suatu garis penghubung.

47 Penyajian Algoritma FLOWCHART
Menggunakan flowchart menjadi mudah untuk melakukan pengecekan terhadap suatu masalah (menganalisis masalah)

48 Penyajian Algoritma FLOWCHART
Berikut simbol-simbol yang digunakan dalam flowchart: Flow Direction Symbol (Symbol Pengarah Alur)

49 FLOWCHART Penyajian Algoritma Processing Symbol

50 FLOWCHART Penyajian Algoritma Processing Symbol

51 FLOWCHART Penyajian Algoritma Input-Output Symbol

52 FLOWCHART Penyajian Algoritma Input-Output Symbol

53 Penyajian Algoritma FLOWCHART
Flowchart yang menggambarkan proses dengan komputer ada dua macam, yaitu : Flowchart System : Bagan dengan simbol-simbol yang menggambarkan urutan prosedur dan proses dari media satu menjadi media yang lain. Flowchart Program : Bagan dengan simbol-simbol yang menggambarkan proses secara mendetail dalam suatu program

54 FLOWCHART Penyajian Algoritma Flowchart System

55 FLOWCHART Penyajian Algoritma Example of Flowchart System

56 FLOWCHART Penyajian Algoritma Example of Flowchart Program

57 Bagaimana jika membuat flowchart bilangan genap ganjil?
Penyajian Algoritma Example of Flowchart Program Bagaimana jika membuat flowchart bilangan genap ganjil?

58

59 PROGRAM

60 Program SUKRISNO Program adalah kata, ekspresi, atau pernyataan yang disusun dan dirangkai menjadi satu kesatuan prosedur, yang berupa urutan langkah, untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksesuksi oleh komputer SINDHUNATA Program adalah kelompok pernyataan yang persis dan berurutan yang gunanya adalah utuk memberi tahu komputer bagaimana melaksanakan sesuatu pekerjaan

61 Program Program merupakan instruksi-instruksi yang diberikan kepada komputer agar dapat melaksanakan tugas- tugas tertentu. Suatu Program dalam mencapai tujuan akan tersusun dengan melakukan perencanaan program. Sebuah program berisi sekumpulan kode. Kode-kode yang digunakan bisa bermacam-macam dan bergantung oleh bahasa pemrograman yang digunakan.

62 BAHASA PEMROGRAMAN

63 BAHASA PEMROGRAMAN Seperti halnya manusia yang mempunyai bermacam-macam bahasa, begitu juga komputer. Namun berbeda dengan manusia yang bahasa dasarnya bervariasi, tergantung Suku, Bangsa atau tempat bermukim, komputer hanya mampu mengenal bahasa dasar yang berupa bahasa mesin.

64 BAHASA PEMROGRAMAN Bahasa mesin adalah bahasa yang hanya mengenal kode biner yang berisi angka 0 dan 1 saja. Menulis program dengan bahasa mesin sungguh sangat menjemukan dan menyita waktu bagi penulisnya (programmer) dan menuntut pengetahuan tentang mesin itu sendiri.

65 BAHASA PEMROGRAMAN Dua golongan bahasa pemrograman komputer
Bahasa pemrograman tingkat tinggi (high-level language) Bahasa pemrograman tingkat rendah (low-level language)

66 BAHASA PEMROGRAMAN Bahasa pemrograman tingkat rendah adalah bahas ayang berorientasi kepada mesin. Yaitu : Bahasa mesin (machine language) Bahasa rakitan (assembly language)

67 BAHASA PEMROGRAMAN Membuat program dalam bahasa mesin sangat sulit dan butuh ketelitian tinggi Bahasa Assembly dibuat unuk memudahkan pemrograman ke dalam bahasa mesin. Menggunakan translator untuk mengubah bahasa assembly menjadi bahasa mesin.

68 BAHASA PEMROGRAMAN Example :

69 BAHASA PEMROGRAMAN Bahasa Tingkat Tinggi (high level language)
Bahasa yang berorientasi kepada bahasa manusia, Umumnya menggunakan kata-kata dalam bahasa Inggris.

70 BAHASA PEMROGRAMAN Bahasa Tingkat Tinggi (high level language)
Contoh : PRINT ‘Selamat Belajar’ Bisa digunakan dalam bahasa PYTHON atau BASIC.

71 BAHASA PEMROGRAMAN

72 Langkah Dalam Pemrograman
Tahap penulisan program adalah sebagai berikut: Menulis Program Menjalankan program untuk menguji kebenaran program Jika ada kesalahan (logika maupun kaidah), program diperbaiki dan kembali ke langkah 2.

73 Istilah Beberapa istilah pada pemrograman yang kiranya perlu diperkenalkan adalah bug dan debugging. Bug menyatakan suatu kesalahan dalam program Debugging adalah upaya untuk mencari kesalahan pada program.


Download ppt "M1. Konsep dasar algoritma & pemrograman"

Presentasi serupa


Iklan oleh Google