BAHAN AJAR ALGORITMA
DAN PEMROGRAMAN
PERTEMUAN 1 DAN 2
NAMA : __________________
KELAS : VIII._______________
MTSN 1 KOTA BUKITTINGGI
TAHUN 2022
Algoritma dan Pemrograman
Tujuan :
Siswa memahami tentang dasar – dasar Algoritma Pemrograman
A. Algoritma
Algoritma merupakan 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.
Karakteristik suatu Algoritma:
✓ Tertata dengan baik, artinya langkah-langkahnya dalam urutan yang jelas.
✓ Jelas, artinya operasi yang digambarkan dipahami oleh suatu komputasi tanpa
penyederhanaan lebih lanjut.
✓ Dapat dihitung secara efektif, artinya komputasi tersebut sebenarnya dapat melakukan
operasi.
Berikut beberapa contoh kegiatan sehari-hari yang dapat dibuatkan algoritmanya.
No. Proses Algoritma Langkah Algoritma
1 Membuat Nasi Resep Nasi Goreng Masukan bumbu hingga wangi,
Goreng masukan telor, masukan nasi, dsb.
2 Berangkat Rute Jalan Berangkat dari rumah menuju arah
Sekolah barat, kemudian di perempatan
belok kanan, dsb.
Algoritma menghitung luas persegi panjang :
a. Masukkan panjang (P)
b. Masukkan Lebar (L)
c. Luas P * L
d. Tulis luas
Kriteria Suatu Algoritma Ciri Penting Algoritma
• Ada input dan output • Algoritma harus berhenti setelah menjalankan
• Efektifitas dan efisien
• Terstruktur sejumlah langkah terbatas.
• Setiap langkah harus didefinisikan dengan tepat
dan tidak berarti-dua (ambiguitas).
• Algoritma memiliki nol atau lebih masukan.
• Algoritma memiliki nol atau lebih keluaran.
• Algoritma harus efektif (setiap langkah sederhana
sehingga dapat dikerjakan dalam waktu yang
masuk
1
Langkah-langkah dalam Algoritma :
o Input : data masukan pada algoritma.
o Proses: data masukan yang diolah.
o Output: Hasil data yang diolah.
Bentuk dasar Algoritma:
o Squence Algoritm / Algoritma sekuensial : Algoritma yang Langkah-langkahnya
berurutan dari awal sampai akhir
o Looping Algorithm / Algoritma perulangan : Menjalankan beberapa Langkah tertentu
secara berulang-ulang / looping
o Algorithm percabangan atau bersyarat/ Conditional Algorithm : Menjalankan Langkah
beikutnya apabila terdapat syarat yang sudah memenuhi
Penyajian Algoritma dapat dibedakan atas 2 yaitu Flowchart dan Pseudocode
Flowchart adalah sebuah jenis diagram yang mewakili algoritme, alir kerja atau proses,
yang menampilkan langkah-langkah dalam bentuk simbol-simbol grafis, dan urutannya
dihubungkan dengan panah. Diagram ini mewakili ilustrasi atau penggambaran
penyelesaian masalah.
Simbol symbol Flowchart
Di dalam diagram terdapat simbol-simbol yang mempunyai makna.
2
Ada 2 macam flowchart yaitu sebagai berikut.
o System flowchart:
Yaitu bagan yang memperlihatkan urutan prosedure dan proses dari beberapa file di
dalam media tertentu. Melalui flowchart ini terlihat jenis media penyimpanan yang
dipakai dalam pengolahan data. Selain itu juga menggambarkan file yang dipakai
sebagai input dan output. Tidak digunakan untuk menggambarkan urutan langkah untuk
memecahkan masalah namun hanya untuk menggambarkan prosedur dalam sistem yang
dibentuk.
o Program flowchart:
Urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah
dalam suatu program. Bagan yang memperlihatkan urutan dan hubungan proses dalam
suatu program.
Dua jenis metode penggambaran program flowchart:
➢ Conceptual flowchart, menggambarkan alur pemecahan masalah secara global.
➢ Detail flowchart, menggambarkan alur pemecahan masalah secara rinci .
3
Contoh: membuat flowchart untuk menentukan apakah bilangan yang diinput adalah
bilangan ganjil atau genap maka Langkah-langkahnya:
a. Buat Langkah-langkah algoritmanya, yaitu:
1) Masukan sebuah bilangan.
2) Bagi bilangan tersebut dengan bilangan atau angka 2
3) Jika bilangan menghasilkan sisa pembagaian 0 maka genap
4) Jika bilangan tidak menghasilkan sisa pembagian 0 maka ganjil
b. Tuliskan flowchart sebagai berikut :
Contoh
Flowchart
menentukan
Luas persegi
panjang
4
Pseudocode adalah istilah dalam pemrograman untuk menuliskan sebuah sintaks,
statement, algoritma, dan lainnya dalam bahasa yang bisa dipahami oleh manusia.
Sederhananya, pseudocode merupakan bentuk representasi dari kode kita nantinya dengan
versi yang human readable, bukan computer readable.
Bahasa pemograman, dan ditujukan untuk dibaca oleh manusia dan bukan oleh mesin.
Ciri-ciri dari Pseudocode :
▪ Pseudocode merupakan sebuah tanda/notasi/kode yang mirip, dan juga merupakan
penjelasan untuk cara penyelesaian suatu masalah.
▪ Pseudocode juga sering digunakan para penggunanya untuk menuliskan suatu algoritma
dari suatu permasalahan.
▪ Pseudocode berisi step-step (langkah-langkah) untuk menyelesaikan suatu masalah
(seperti halnya algoritma), akan tetapi bentuk dari masalahnya itu sedikit berbeda dari
algoritma.
▪ Pseudocode tidak memiliki aturan baku yang mengikat penggunanya.
▪ Pseudocode merupakan bahasa yang mirip dengan bahasa pemrograman, akan tetapi
Pseudocode menggunakan bahasa yang mudah dipahami secara universal, dan juga
lebih ringkas dari pada algoritma
Secara umum penulisan pseudocode terbagi kedalam tiga bagian, sebagai berikut:
• Judul – Umumnya pada bagian judul diawali dengan penulisan “PROGRAM” yang
kemudian diikuti oleh nama algoritma.
• Deklarasi – Bagian ini adalah variabel yang dimiliki algoritma dideklarasikan. Variabel
ini dapat beruba bilangat bulat, bilangan pecahan, karakter, boolean, dan lain
sebagainya.
• Algoritma – Ini adalaj bagian yang berisikan sekumpulan perintah algoritma. Perintah
algoritma dapat berupa perulangan, kondisional ataupun runtutan.
Contoh: membuat pseudocode untuk menentukan apakah bilangan yang diinput adalah
bilangan ganjil atau genap ,
maka Langkah-langkahnya:
a. Buat Langkah-langkah algoritmanya, yaitu:
1) Masukan sebuah bilangan.
2) Bagi bilangan tersebut dengan bilangan atau angka 2
5
3) Jika bilangan menghasilkan sisa pembagaian 0 maka genap
4) Jika bilangan tidak menghasilkan sisa pembagian 0 maka ganjil
b. Tuliskan Pseudocodenya,yaitu:
If bil mod 2 = 0 then,
“Output Genap”
Else
“output Ganjil”
End if
Contoh Pseudocode Menghitung Luas Persegi Panjang
Rumus luas persegi panjang adalah L = p x l sedangkan rumus kelilingnya adalah K = 2 x
(p + l). Dalam algoritma pseudocode menghitung luas persegi panjang, maka panjang dan
lebarnya diinput dan luasnya di tampilkan.
program hitung_luas_segi_panjang
deklarasi
var panjang, lebar, luas : integer;
algoritma:
read(panjang);
read(lebar);
luas <-- panjang * lebar;
write(luas);
B. Pemrograman
Pemrograman adalah kumpulan instruksi – instruksi tersendiri yang biasanya disebut
source code yang dibuat oleh programmer (pembuat program).
Program adalah kumpulan instruksi atau perintah yang disusun sedemikian rupa sehingga
mempunyai nalar yang tepat untuk menyelesaikan suatu persoalan. Bahasa pemrograman
adalah alat untuk membuat program. Contoh bahasa C, C++, C#, Pascal, Basic, Perl, PHP,
ASP, JHP, JAVA, dll.
Secara garis besar unsur – unsur pemrograman adalah :
a. Input
Bagian ini merupakan proses untuk memasukkan data ke komputer melalui device
yang ada misalnya, keyboard, mouse, scanner, dll. Program melakukan proses
membaca data yang akan diolah dari device tersebut.
b. Proses
Bagian ini merupakan proses mengolah data yang diinputkan dengan menerapkan
metode – metode, teknik – tekniki, algoritma – algoritma yang ada. Proses ini
menghasilkan data output yang akan dioutputkan kepada pengguna program.
6
c. Output
Bagian ini merupakan proses untuk menampilkan data yang telah diolah, melaporkan
hasil pengolahan data melalui device seperti monitor, printer, dll. Program melakukan
proses mencetak data ke device tersebut.
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 Pemograman
Bahasa pemrograman 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.
SOAL LATIHAN
A. Pilihlah salah satu jawaban dari pertanyaan dibawah ini yang paling tepat dan
benar
1. Urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis
dan logis.disebut…
a. Algoritma c. Pseudocode
b. Flowchart d. Variabel
2. Berikut ini yang merupakan kriteria algoritma adalah…
a. Input, output, fleksibel c. Input, efektif, ambigu
b. Input, output, efisien d. Input, Output, ambigu
3. Algoritma yang langkah-langkahnya berurutan dari awal sampai akhir disebut..
a. Looping Algorithm
b. Conditional Algorithm
c. Sequence Algorithm
d. Branch Algorithm
4. Diberikan algoritma : Apabila warna merah maka jadi hijau. Apabila warna hijau
maka jadi putih, selain warna merah dan hijau maka jadi ungu. Jika kondisi input
warna adalah hitam, maka warna jadi :
a. Merah c. Hijau
b. Putih d. Ungu
5. Algoritma dapat ditulis dalam bentuk….
a. Flowchart dan Variabel c. Pseudocode dan Variabel
b. Flowchart dan Pseudocode d. Defenitif
7
6. ………. adalah sebuah jenis diagram yang mewakili algoritme, alir kerja atau
proses, yang menampilkan langkah-langkah dalam bentuk simbol-simbol grafis, dan
urutannya dihubungkan dengan panah.
a. Algoritma c. Pseudocode
b. Flowchart d. Variabel
7. Simbol flowchart berikut yang digunakan untuk memulai atau mengakhiri suatu
proses adalah..
a. Connector c. Terminator
b. Decision d. Preparation
8. Simbol flowchart digunakan untuk…
a. Menjalankan perintah
b. Menerima input/menampilkan output
c. Memulai / mengahiri suatu proses
d. Membuat keputusan/pilihan
9. Perhatikan flowchart penyelesaian masalah nonton film berikut
Badu ingin sekali menonton film “Spiderman- No way Home” yang sedang
tayang di Bioskop, tapi umur Badu masih 14 Tahun, apakah output yang
ditampilkan untuk Badu?
a. Anda tidak boleh menonton c. Silakan menonton
b. Anda boleh menonton d. Silahkan keluar
8
10. Perhatikan flowchart berikut
Jika nilai Ahmad 85, maka
tampilan Output yang tepat
untuk Ahmad adalah…
a. Ahmad,85, Lulus
b. Selamat kamu lulus
c. Ahmad lulus
d. Selamat lulus Ahmad
11. Istilah dalam pemrograman untuk menuliskan sebuah sintaks, statement, algoritma,
dan lainnya dalam bahasa yang bisa dipahami oleh manusia adalah…
a. Algoritma c. Pseudocode
b. Flowchart d. Variabel
12. Bagian pada Pseudocode untuk menulis semua variabel yang diinisialisasikan
didalam suatu program disebut…
a. Judul c. Algoritma
b. Deklarasi d. Variabel
13. Kumpulan instruksi – instruksi tersendiri yang biasanya disebut source code yang
dibuat oleh programmer (pembuat program) adalah..
a. Algoritma c. Bahasa Pemrograman
b. Program d. Pemrograman
14. Alat untuk membuat program disebut…
a. Algoritma c. Bahasa Pemrograman
b. Program d. Pemrograman
15. Contoh Bahasa pemrograman adalah…
a. Bahasa Natural c. Pascal
b. Bahasa Mesin d. C-
B. Selesaikan soal berikut dengan tepat dan benar
Buatlah Algoritma, flowchart dan pseudocode untuk menghitung keliling persegi
panjang
9