SlideShare a Scribd company logo
1 of 21
Pengenalan Algoritma
By : Zarnelly, S.Kom, M.Sc
Beberapa Definisi Algoritma
1. Algoritma adalah urutan langkah-langkah
logis penyelesaian masalah yang disusun
secara sistematis
2. Algoritma adalah urutan logis pengambilan
keputusan untuk pemecahan masalah
Ciri - Ciri Algoritma
menurut Donald E. Knuth
Algoritma mempunyai lima ciri penting :
1. Algoritma harus berhenti setelah mengerjakan
sejumlah langkah terbatas.
2. Setiap langkah harus didefinisikan secara tepat
dan tidak berarti dua.
3. Algoritma memiliki nol atau lebih masukan
(input).
4. Algoritma mempunyai nol atau lebih keluaran
(output).
5. Algoritma harus sangkil (efektif)
Notasi Penulisan Algoritma
1. Notasi yang dinyatakan dalam kalimat deskriptif
• Dengan notasi ini, deskripsi setiap langkah
dijelaskan dengan bahasa yang jelas.
• Notasi ini cocok untuk algoritma yang pendek,
namun untuk masalah yang algoritmanya besar,
notasi ini jelas tidak efektif.
• Selain itu, pengkonversian notasi algoritma ke
notasi bahasa pemrograman cenderung relatif
sukar.
Contoh Notasi Kalimat Deskriptif
Algoritma Bilangan_Maksimum
Diberikan tiga buah bilangan bulat. Carilah bilangan bulat
maksimum diantara ketiga bilangan tersebut.
Deskripsi :
(1) baca bilangan 1
(2) baca bilangan 2
(3) bandingkan bilangan 1 dan bilangan 2, kita ambil yang
lebih besar, jika kedua bilangan tersebut sama besar,
dapat kita ambil bilangan 1, dan sebut bilangan
tersebut MAX
(4) baca bilangan 3
(5) bandingkan MAX dengan bilangan 3, dan pilih yang lebih
besar, jika keduanya sama besar, pilih MAX dan sebut
bilangan tersebut MAX.
(6) keluarkan sebagai output MAX
Notasi Penulisan Algoritma
2. Notasi yang dinyatakan dengan pseudo code
• Pseudocode adalah notasi yang menyerupai
bahasa pemrograman tingkat tinggi.
Keuntungan menggunakan notasi pseudo
code adalah kemudahan mengkonversinya
lebih tepat yang disebut mentranslasi ke
notasi bahasa pemrograman, karena terdapat
korespondensi antara setiap pseudo code
dengan notasi bahasa pemrograman.
Contoh Notasi Pseudo Code
Algoritma Bilangan_Maksimum
{ Dibaca tiga buah bilangan dari piranti masukan. Carilah
bilangan bulat maksimum diantara ketiga bilangan tersebut }
Deklarasi :
Bil1,Bil2,Bil3 : integer {bilangan yang dicari
maksimumnya}
MAX : integer {variabel bantu}
Deskripsi :
Read (Bil1,Bil2)
If Bil1 >= Bil 2 then
Bil1 = MAX
Else Bil2 = MAX
Read (Bil3)
If Bil3 >= MAX then
Bil3 = MAX
Write (MAX)
Notasi Penulisan Algoritma
3. Notasi yang dinyatakan dalam flowchart
• Sama halnya dengan notasi deskriptif, notasi
ini cocok untuk algoritma yang pendek,
namun untuk masalah yang algoritmanya
besar, notasi ini jelas tidak efektif. Selain itu,
pengkonversian notasi algoritma ke notasi
bahasa pemrograman cenderung relatif sukar.
Contoh Notasi Flowchart
Contoh Notasi Flowchart
Teks Algoritma
Teks algoritma disusun atas tiga bagian (blok) :
1. Bagian judul (header) Algoritma
2. Bagian deklarasi
3. Bagian deskripsi
Setiap bagian dapat diberi komentar untuk
memperjelas maksud teks yang dituliskan.
Komentar biasanya ditulis menggunakan kurung
kurawal.
Teks Algoritma - Judul Algoritma
Judul algoritma adalah bagian yang terdiri atas
nama algoritma dan penjelasan (spesifikasi)
tentang algoritma tersebut.
Contoh :
Algoritma Luas_Lingkaran
{ Menghitung luas lingkaran untuk ukuran jari-
jari tertentu. Algoritma menerima masukan
jari-jari lingkaran, menghitung luasnya, lalu
cetak luasnya ke piranti keluaran }
Teks Algoritma – Deklarasi Algoritma
Deklarasi nama adalah bagian untuk mendefinisikan
semua nama yang dipakai di dalam algoritma.
Nama tersebut dapat berupa nama terapan, nama
peubah, nama tipe, nama prosedur dan nama
fungsi.
Contoh :
Deklarasi :
Panjang = integer {tipe data bilangan bulat}
Lebar = integer
Luas = real {tipe data bilangan pecahan}
Teks Algoritma – Deskripsi Algoritma
Deskripsi adalah bagian terpenting dari struktur
algoritma. Bagian ini berisi uraian langkah-
langkah penyelesaian masalah.
• Langkah-langkah ini dituliskan dengan notasi
yang lazim dalam penulisan algoritma.
• Setiap langkah algoritma dibaca dari langkah
paling atas hingga langkah paling bawah.
• Urutan penulisan menentukan urutan
pelaksanaan perintah.
Teks Algoritma – Deskripsi Algoritma
Deskripsi :
Read (nama)
Read (NIM)
Read (nilai)
If (nilai < 45) then
Grade = E
Else if (nilai >= 45) and (nilai < 60) then
Grade = D
Else if (nilai >= 60) and (nilai < 70) then
Grade = C
Else if (nilai >= 70) and (nilai < 80) then
Grade = B
Else
Grade = A
Write (nama)
Write (NIM)
Write (nilai)
Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian
suatu masalah.
Langkah langkah tersebut dapat berupa :
1. Runtunan aksi
2. Pemilihan aksi
3. Pengulangan aksi
Struktur Dasar Algoritma –
Runtunan (sequence)
• Sebuah runtunan terdiri dari satu atau lebih
instruksi.
• Tiap instruksi dikerjakan secara berurutan
sesuai dengan urutan penulisannya, yakni
sebuah instruksi dilaksanakan setelah instruksi
sebelumnya selesai dikerjakan.
Struktur Dasar Algoritma –
Pemilihan (selection)
• Adakalanya sebuah instruksi dikerjakan jika
kondisi tertentu dipenuhi.
• Tiap-tiap instruksi akan diseleksi oleh kondisi,
apabila instruksi memenuhi kondisi yang
diminta, maka instruksi akan dijalankan.
Struktur Dasar Algoritma –
Pengulangan (repetition)
• Salah satu kelebihan komputer adalah
kemampuannya untuk mengerjakan pekerjaan
yang sama berulang kali tanpa mengenal
lelah.
• Kita tidak perlu menulis instruksi yang sama
berulang kali, tetapi cukup melakukan
pengulangan dengan instruksi yang tersedia.
OPTIMALKAN ALGORITMA
OPTIMALKAN ALGORITMA

More Related Content

Similar to OPTIMALKAN ALGORITMA

Similar to OPTIMALKAN ALGORITMA (20)

Algoritma pertemuan 1
Algoritma pertemuan 1Algoritma pertemuan 1
Algoritma pertemuan 1
 
Algo 1 2
Algo 1 2Algo 1 2
Algo 1 2
 
Bab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaBab 3. pengenalan algoritma
Bab 3. pengenalan algoritma
 
Alex algoritma-02
Alex algoritma-02Alex algoritma-02
Alex algoritma-02
 
Pengertian algoritma
Pengertian algoritmaPengertian algoritma
Pengertian algoritma
 
01_Pengenalan_Algoritma_ppt.ppt
01_Pengenalan_Algoritma_ppt.ppt01_Pengenalan_Algoritma_ppt.ppt
01_Pengenalan_Algoritma_ppt.ppt
 
Pengenalan_Algoritma_ppt.ppt
Pengenalan_Algoritma_ppt.pptPengenalan_Algoritma_ppt.ppt
Pengenalan_Algoritma_ppt.ppt
 
Bahan 2.pptx
Bahan 2.pptxBahan 2.pptx
Bahan 2.pptx
 
Pengenalan algoritma.ppt
Pengenalan algoritma.pptPengenalan algoritma.ppt
Pengenalan algoritma.ppt
 
2.sd 13.ok
2.sd 13.ok2.sd 13.ok
2.sd 13.ok
 
2.sd 13
2.sd 132.sd 13
2.sd 13
 
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .pptBab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
 
konsep & struktur algoritma
konsep & struktur algoritmakonsep & struktur algoritma
konsep & struktur algoritma
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchart
 
Tugas pak joko kamis, 20 nov 2014
Tugas pak joko kamis, 20 nov 2014Tugas pak joko kamis, 20 nov 2014
Tugas pak joko kamis, 20 nov 2014
 
DASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMADASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMA
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Algoritma adalah langkah
Algoritma adalah langkahAlgoritma adalah langkah
Algoritma adalah langkah
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 

Recently uploaded

UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxzidanlbs25
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfAuliaAulia63
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxImahMagwa
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxrikosyahputra0173
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxheru687292
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Shary Armonitha
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxmariaboisala21
 

Recently uploaded (7)

UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdf
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptx
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
 

OPTIMALKAN ALGORITMA

  • 1. Pengenalan Algoritma By : Zarnelly, S.Kom, M.Sc
  • 2. Beberapa Definisi Algoritma 1. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis 2. Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah
  • 3. Ciri - Ciri Algoritma menurut Donald E. Knuth Algoritma mempunyai lima ciri penting : 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2. Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua. 3. Algoritma memiliki nol atau lebih masukan (input). 4. Algoritma mempunyai nol atau lebih keluaran (output). 5. Algoritma harus sangkil (efektif)
  • 4. Notasi Penulisan Algoritma 1. Notasi yang dinyatakan dalam kalimat deskriptif • Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas. • Notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. • Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
  • 5. Contoh Notasi Kalimat Deskriptif Algoritma Bilangan_Maksimum Diberikan tiga buah bilangan bulat. Carilah bilangan bulat maksimum diantara ketiga bilangan tersebut. Deskripsi : (1) baca bilangan 1 (2) baca bilangan 2 (3) bandingkan bilangan 1 dan bilangan 2, kita ambil yang lebih besar, jika kedua bilangan tersebut sama besar, dapat kita ambil bilangan 1, dan sebut bilangan tersebut MAX (4) baca bilangan 3 (5) bandingkan MAX dengan bilangan 3, dan pilih yang lebih besar, jika keduanya sama besar, pilih MAX dan sebut bilangan tersebut MAX. (6) keluarkan sebagai output MAX
  • 6. Notasi Penulisan Algoritma 2. Notasi yang dinyatakan dengan pseudo code • Pseudocode adalah notasi yang menyerupai bahasa pemrograman tingkat tinggi. Keuntungan menggunakan notasi pseudo code adalah kemudahan mengkonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa pemrograman, karena terdapat korespondensi antara setiap pseudo code dengan notasi bahasa pemrograman.
  • 7. Contoh Notasi Pseudo Code Algoritma Bilangan_Maksimum { Dibaca tiga buah bilangan dari piranti masukan. Carilah bilangan bulat maksimum diantara ketiga bilangan tersebut } Deklarasi : Bil1,Bil2,Bil3 : integer {bilangan yang dicari maksimumnya} MAX : integer {variabel bantu} Deskripsi : Read (Bil1,Bil2) If Bil1 >= Bil 2 then Bil1 = MAX Else Bil2 = MAX Read (Bil3) If Bil3 >= MAX then Bil3 = MAX Write (MAX)
  • 8. Notasi Penulisan Algoritma 3. Notasi yang dinyatakan dalam flowchart • Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
  • 11. Teks Algoritma Teks algoritma disusun atas tiga bagian (blok) : 1. Bagian judul (header) Algoritma 2. Bagian deklarasi 3. Bagian deskripsi Setiap bagian dapat diberi komentar untuk memperjelas maksud teks yang dituliskan. Komentar biasanya ditulis menggunakan kurung kurawal.
  • 12. Teks Algoritma - Judul Algoritma Judul algoritma adalah bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Contoh : Algoritma Luas_Lingkaran { Menghitung luas lingkaran untuk ukuran jari- jari tertentu. Algoritma menerima masukan jari-jari lingkaran, menghitung luasnya, lalu cetak luasnya ke piranti keluaran }
  • 13. Teks Algoritma – Deklarasi Algoritma Deklarasi nama adalah bagian untuk mendefinisikan semua nama yang dipakai di dalam algoritma. Nama tersebut dapat berupa nama terapan, nama peubah, nama tipe, nama prosedur dan nama fungsi. Contoh : Deklarasi : Panjang = integer {tipe data bilangan bulat} Lebar = integer Luas = real {tipe data bilangan pecahan}
  • 14. Teks Algoritma – Deskripsi Algoritma Deskripsi adalah bagian terpenting dari struktur algoritma. Bagian ini berisi uraian langkah- langkah penyelesaian masalah. • Langkah-langkah ini dituliskan dengan notasi yang lazim dalam penulisan algoritma. • Setiap langkah algoritma dibaca dari langkah paling atas hingga langkah paling bawah. • Urutan penulisan menentukan urutan pelaksanaan perintah.
  • 15. Teks Algoritma – Deskripsi Algoritma Deskripsi : Read (nama) Read (NIM) Read (nilai) If (nilai < 45) then Grade = E Else if (nilai >= 45) and (nilai < 60) then Grade = D Else if (nilai >= 60) and (nilai < 70) then Grade = C Else if (nilai >= 70) and (nilai < 80) then Grade = B Else Grade = A Write (nama) Write (NIM) Write (nilai)
  • 16. Struktur Dasar Algoritma Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah langkah tersebut dapat berupa : 1. Runtunan aksi 2. Pemilihan aksi 3. Pengulangan aksi
  • 17. Struktur Dasar Algoritma – Runtunan (sequence) • Sebuah runtunan terdiri dari satu atau lebih instruksi. • Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai dikerjakan.
  • 18. Struktur Dasar Algoritma – Pemilihan (selection) • Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. • Tiap-tiap instruksi akan diseleksi oleh kondisi, apabila instruksi memenuhi kondisi yang diminta, maka instruksi akan dijalankan.
  • 19. Struktur Dasar Algoritma – Pengulangan (repetition) • Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan pekerjaan yang sama berulang kali tanpa mengenal lelah. • Kita tidak perlu menulis instruksi yang sama berulang kali, tetapi cukup melakukan pengulangan dengan instruksi yang tersedia.