Anda di halaman 1dari 27

Pengantar Algoritma dan

Pemrograman

MK: ALGORITMA PEMROGRAMAN


Persoalan

Persoalan atau masalah adalah sesuatu yang harus diselesaikan atau


dipecahkan.
Terkadang kita akan menggunakan istilah persoalan untuk hal-hal
tertentu dan menggunakan kata masalah untuk sebagian hal lainnya.
Persoalan 1

Diberikan setumpuk kartu, kemudian


urutkan kartu-kartu tersebut supaya
tersusun menaik berdasarkan nomor
sedemikian sehingga nomor kecil di atas
dan Nomor besar di bawah?

PERSOALAN PENGURUTAN
Persoalan 2

Diberikan sebuah daftar berisi


nama-nama siswa dari suatu
sekolah yang sudah diurutkan
berdasarkan NIS, apakah ada NIS
20.xxxxx?

PERSOALAN PENCARIAN
Persoalan 3

Diberikan sebuah daftar yang


berisi nilai siswa, tentukan
nama dengan nilai tertinggi?

PERSOALAN PENENTUAN NILAI TERBESAR


Persoalan 4

Menghitung luas tanah.

PERSOALAN MENGHITUNG NILAI


Algoritma
• Apabila persoalan-persoalan yang melibatkan jumlah yang relatif kecil, maka kita dengan
mudah akan menyelesaikannya. Seperti mengurutkan 10 bilangan, tetapi apabila
jumlahnya sampai ribuan misalnya 1000 bilangan?, tentunya kita akan mengalami
kesulitan untuk mengurutkannya. Sehingga diperlukan bantuan mesin untuk mengurutkan
1000 bilangan.
• Agar perintah kita dapat dijalankan oleh mesin (misalnya komputer), maka kita
menuliskan prosedur yang berisi langkah-langkah untuk mengurutkan bilangan.
Sehingga mesin akan menjalankan prosedur tersebut untuk memberikan solusi dari
persoalan yang diberikan. Prosedur yang berisi langkah-langkah penyelesaian
persoalan disebut Algoritma.
Algoritma
Algoritma adalah urutan langkah-langkah untuk menyelesaikan suatu
persoalan

Langkah-Langkah mengurutkan KTM dari NIM terkecil ke terbesar


1) Cari KTM dengan NIM terkecil
2) Letakkan KTM pada posisi yang tepat
3) Ulangi langkah 1) dan 2) sampai tersisa 1 kartu saja
Persoalan Mempertukarkan Misalkan terdapat dua gelas, Gelas A dan
Isi Gelas Gelas B yang berisi larutan berwarna.
Gelas A berisi larutan berwarna merah,
sedangkan Gelas B berisi larutan
berwarna biru. Volume air dalam kedua
gelas sama banyaknya. Bagaimana cara
mempertukarkan isi kedua gelas
tersebut, sedemikian sehingga nantinya
Gelas A akan berisi larutan berwarna
biru dan Gelas B berisi larutan berwarna
merah?
Persoalan Mempertukarkan Isi Gelas

Agar kita dapat menukar isi kedua gelas, maka kita memerlukan 1 gelas ketiga
sebagai tempat penampungan sementara. Sehingga kita dapat menulis algoritma
penukaran isi gelas adalah sebagai berikut:
1) Tuangkan larutan dari Gelas A ke Gelas C
2) Tuangkan larutan dari Gelas B ke Gelas A
3) Tuangkan larutan dari Gelas C ke Gelas B
Persoalan
Mempertukarkan
Isi Gelas
Persoalan Mengambil • Misalkan Anda mempunya dua buah
ember, masing-masing bervolume 5-
Air 4 Liter liter dan 3-liter. Anda diminta
mendapatkan air sebanyak 4 liter
dengan menggunakan hanya kedua
ember tersebut (tidak ada peralatan
lain yang tersedia). Anda boleh
memindahkan air dari satu ember
ke ember lain, membuang seluruh
air dari ember, dan sebagainya.
• Bagaimanakah penyelesaiannya?
Penyelesaian Persoalan Membuat Larutan 4
liter:
1) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3 liter)
2) Tuangkan dari Ember 3-liter ke dalam Ember 5-liter (Ember 5-liter sekarang berisi 3 liter
air)
3) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3 liter)
4) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter hingga penuh, sehingga di dalam
Ember 3-liter tersisa air sebanyak 3 liter.
5) Buang seluruh air dari Ember 5-liter (Ember 5-liter kosong)
6) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter (Ember 5-liter berisi 1 liter air)
7) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3 liter)
8) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter, sehingga sekarang Ember 5-liter
berisi 1+3 = 4 liter air.
Persoalan
Mengambil Air 4
Liter
Persoalan Pemindahan Cakram
Bagaimana memindahkan 3 tumpukan cakram dari tiang pertama (1) ke
tiang kedua (2), dengan ketentuan hanya boleh memindah cakram satu
persatu dan apabila ada dua cakram dalam satu tiang, maka cakram lebih
besar terletak dibawah.

Sumber gambar : https://www.okedroid.com

KB 1 MODUL DARING PEMROGRAMAN


KOMPUTER 1
Persoalan Pemindahan Cakram
Penyelesaian:
▪ Kita bisa memberi label A, B, dan C untuk ketiga cakram.
▪ Dimana cakram A berada di atas cakram B, dan cakram B berada di
atas cakram C (Cakram paling bawah adalah C, dan yang paling atas
adalah A).

Sumber gambar : https://www.okedroid.com

KB 1 MODUL DARING PEMROGRAMAN


KOMPUTER 1
Persoalan Pemindahan Cakram
Berikut adalah langkah-langkah penyelesaiannya:

Animasi penyelesaian dapat dilihat pada link berikut:


https://bit.ly/v1kb1modulprokom1

KB 1 MODUL DARING PEMROGRAMAN


KOMPUTER 1
Persoalan Petani
Di suatu desa nan jauh di sana, seorang Petani ingin menyeberangi sungai. Ia tidak sendiri
tapi bersama barang bawaan berupa Kambing, Serigala dan Sayur Kubis. Adapun aturannya,
Kambing tidak bisa ditinggal bersamaan dengan Sayur atau Serigala. Bagaimanakah Petani
dapat menyeberangi sungai?

Sumber gambar : https://alusinfo.blogspot.com

KB 1 MODUL DARING PEMROGRAMAN


KOMPUTER 1
Persoalan Petani
Berikut adalah salah penyelesaian persoalannya:
1) Petani membawa kambing untuk menyeberang. Yang tinggal adalah
serigala dan sayur kubis.
2) Kambing di tinggal di seberang, lalu petani kembali sendiri.
3) Petani membawa serigala untuk menyeberang.
4) Serigala di tinggal di seberang. Ketika akan kembali, petani membawa
serta kambing.
5) Petani meninggalkan kambing dan membawa sayur kubis untuk
menyeberang.
6) Petani meninggalkan sayur kubis di seberang dan kembali seorang diri.
7) Petani membawa serta kambing untuk menyeberang.
8) Selesai.
Animasi penyelesaian dapat dilihat pada link berikut:
https://bit.ly/v2kb1modulprokom1
KB 1 MODUL DARING PEMROGRAMAN
KOMPUTER 1
• Menurut id.wikipedia.org, kata
algorism berasal dari nama al-
Khwarizmi, seorang matematikawan
di awal abad ke-9. Nama tersebut
juga menjadi asal kata algoritme.
• Kata algorism berubah menjadi
algorithm kemudian diserap dalam
Bahasa Indonesia menjadi Algoritma.
Kata Algoritma pertama kali dipakai
pada Euclid’s Algoritm (Algoritma

Sejarah Algoritma Euclid) pada tahun 1950.


Karakteristik Algoritma
Prinsip dasar algoritma adalah menerima masukan (input), memprosesnya dalam urutan
langkah-langkah, dan menghasilkan luaran (output). Sebuah algoritma harus memiliki lima
ciri penting berikut:
1) Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
2) Setiap langkah harus didefinisikan dengan tepat dan tidak boleh berarti dua (ambigu).
3) Algoritma memiliki nol atau lebih masukan (input).
4) Algoritma menghasilkan nol atau lebih luaran (output).
5) Algoritma harus efektif, sehingga setiap langkah harus sederhana supaya mudah untuk
dikerjakan.
Program dan Pemrograman

Algoritma yang telah disusun akan dijalankan oleh pemroses (processor).


Adapun pemroses disini diantaranya adalah manusia, komputer, robot,
mesin dan sebagainya.
Agar algortima dapat dilaksanakan dengan baik, maka pemroses harus:
1) Mengerti setiap langkah dalam algoritma.
2) Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
Bahasa Pemrograman

Berdasarkan tujuan aplikasinya, bahasa pemrograman dibagi menjadi dua yaitu:


1) Bahasa pemrograman bertujuan khusus (specific programming language),
diantaranya Cobol (untuk terapan bisnis dan administrasi), Forton (aplikasi
komputasi ilmiah), Bahasa Asembly (aplikasi pemrograman mesin), Prolog (aplikasi
kecerdasan buatan), Bahasa-bahasa simulasi (Symcript), dan sebagainya.
2) Bahasa pemrograman bertujuan umum (general programming language) yang dapat
digunakan untuk berbagai aplikasi. Contohnya Pascal, C, C++, Java, dan sebagainya.
Notasi Algoritma
1) Notasi 1 : Kalimat Deskriptif
Yaitu dengan menuliskan setiap langkah dengan jelas.
Contoh:
Program :
Menghitung Luas Persegi Panjang dengan memasukkan nilai
panjang dan lebar Persegi Panjang
Algoritma:
a) Masukkan nilai lebar dan panjang
b) Hitung luas sama dengan panjang kali lebar
c) Tampilkan Luas
Notasi Algoritma

2) Notasi 2 : Flowchart

Flowchart atau diagram alir


menggambarkan aliran instruksi
di dalam program secara visual.
Bagan alir mengekspresikan
algoritma sebagai sekumpulan
bentuk-bentuk geometri yang
berisi langkah-langkah komputasi.
Notasi Algoritma
3) Notasi 3 : Pseudocode

Notasi pseudocode adalah notasi


yang mirip-mirip dengan notasi
bahasa pemrograman tingkat
tinggi. Tidak ada pseudocode
baku, sehingga dalam penulisan
algoritmanya dapat digabung
dengan notasi deskriptif maupun
notasi Matematika.
TERIMA KASIH
Modul Daring Pemrograman Komputer 1

KB 1 MODUL DARING PEMROGRAMAN


KOMPUTER 1

Anda mungkin juga menyukai