You are on page 1of 9

ALGORITMA DAN

PEMROGRAMAN Kelas XI
MODUL 1 – PENGENALAN ALGORITMA

Ditulis ulang oleh Dini W


SMA WACHID HASYIM 2 TAMAN
ALGORITMA DAN PEMROGRAMAN KELAS XI

BAB I
Pengertian Algoritma

A. Asal-usul Algoritma

1. Apakah Itu Algoritma

Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang
aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung
dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan
angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya
kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata
tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja far
Muhammad Ibnu Musa Al-Khuwarizmi.
Perangko dari Rusia pada Gambar di bawah ini bergambar seorang pria dengan
nama Muhammad bin Musa al-Khwarizmi. Bagi kalian yang sedang berkecimpung
dalam dunia komputer maka seharusnya mengetahui siapa orang di samping ini.
Dia adalah seorang ilmuwan Islam yang karya karyanya dalam bidang matematika,
astronomi, astrologi dan geografi banyak menjadi dasar perkembangan ilmu
modern. Dan dari namanya istilah yang akan kita pelajari dalam bab ini muncul.
Dari Al-Khawarizmi
kemudian berubah menjadi algorithm dalam Bahasa Inggris dan diterjemahkan
menjadi algoritma dalam bahasa Indonesia.

Gambar 1. (penemu algoritma)

2. Algoritma Merupakan Jantung Ilmu Informatika


Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu
komputer yang mengarah ke dalam terminologi algoritma. Namun, jangan
beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu
algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu
resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan
langkah-langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak
dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep
masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia
mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang
mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa
manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan
suatu proses dengan melaksanakan atau mengeksekusi algoritma yang
menjabarkan proses tersebut.

B. Definisi 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 apakah
bernilai benar atau salah.
Dalam beberapa konteks, 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 bukan
algoritma yang baik Pertimbangan kedua yang harus diperhatikan adalah kita harus
mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting
terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi
hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu
memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu
efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar
(paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan
keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang
menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar
memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam
kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk
menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun
algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian,
carilah algoritma yang paling efisien dan cepat.

C. Struktur Algoritma

Perhatikan algoritma sederhana berikut :


Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah
yang harus dilakukan adalah:
1. Menyiapkan Peralatan Tulis
2. Menulis surat
3. Surat dimasukkan ke dalam amplop tertutup
4. Amplop ditempeli perangko secukupnya.
5. Pergi ke Kantor Pos terdekat untuk mengirimkannya

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

Algoritma menghitung luas persegi panjang:


1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. Luas P*L
4. Tulis Luas

1. Beberapa hal yang perlu diperhatikan dalam membuat algoritma:


a) Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.
Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah
dimengerti dan dipahami.
b) Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi
bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut
notasi algoritmik.
c) 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.
d) 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. pseudocode
adalah kode yang mirip dengan instruksi kode program sebenarnya.
e) Algoritma sebenarnya digunakan untuk membantu kita dalam
mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
f) Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan
oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa
pemrograman.

Perhatikan algoritma sederhana berikut :


Algoritma menghitung luas segitiga
1. Start
2. Baca data alas dan tinggi.
3. Luas adalah alas kali tinggi kali 0.5
4. Tampilkan Luas
5. Stop
Penjelasan :
Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah.
Pada algoritma ini tidak dijumpai perulangan ataupun pemilihan. Semua langkah
dilakukan hanya satu kali.
Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma ini
mengandung kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data
untuk alas dan tinggi.

Hasil perbaikan algoritma perhitungan luas segitiga

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

1. Start
2. Baca data alas dan tinggi.
3. Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari
nol maka
4. lanjutkan ke langkah ke 4 jika tidak maka stop
5. Luas adalah alas kali tinggi kali 0.5
6. Tampilkan Luas
7. Stop
Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma. Pertama,
algoritma harus benar. Kedua algoritma harus berhenti, dan setelah berhenti,
algoritma memberikan hasil yang benar.
Contoh : Algoritma Berangkat Sekolah
Mulai
Bangun dari tempat tidur
Mandi Pagi
Sarapan Pagi
Pergi Ke Sekolah
Cari Ruang Kelas
Masuk kelas untuk Belajar
Selesai

D. Definisi Program / 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 urutan nalar yang tepat untuk menyelesaikan suatu persoalan.
(Menurut P. Insap Santosa)

Bahasa Pemrograman adalah alat untuk membuat program


Contoh: C, C++, C#, Pascal, Basic, Perl, PHP, ASP, JHP, Java, dll.

Secara garis besar, unsur-unsur pemrograman adalah Input Proses Output.

Gambar 2. Unsur Pemrograman

1. 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.
2. Output

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

Bagian ini merupakan proses untuk menampilkan data yang telah diolah,
melaporkan hasil pegolahan data melalui device seperti monitor, printer dll.
Program melakukan proses mencetak data ke device tersebut.
3. Proses
Bagian ini merupakan proses mengolah data yang diinputkan dengan nenerapkan
metode-metode, teknik-teknik, algoritma-algoritma yang ada. Proses ini
menghasilkan data output yang akan dioutputkan kepada pengguna program.

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 rumusan bahwa:

Program = Algoritma + Bahasa (Struktur Data)

Penerjemah Bahasa Pemrograman


Untuk menterjemahkan bahasa pemrograman yang kita tulis maka diperlukan
Compiler dan interpreter.

Compiler adalah suatu program yang menterjemahkan bahasa program (Source code)
ke dalam bahasa obyek (object code) secara keseluruhan program.

Interpreter berbeda dengan Compiler, interpreter menganalisis dan mengeksekusi


setiap baris dari program secara keseluruhan. Keuntungan dari interpreter adalah
dalam eksekusi yang bisa dilakukan dengan segera. Tanpa melalui tahap kompilasi,
untuk alas an ini interpreter digunakan pada saat pembuatan program berskala besar.

Perbedaan Compiler dan interpreter.

Compiler Interpreter
Menterjemahkan secara keseluruhan Menterjemahkan Instruksi per instruksi
Bila terjadi kesalahan kompilasi maka Bila terjadi kesalahan interprestasi dapat
source program harus diperbaiki dan diperbaiki
dikompilasi ulang

Dihasilkan Object program Tidak dihasilkan obyek program


Dihasilkan Executable program Tidak dihasilkan Executable program
Proses pekerjaan program lebih cepat Proses pekerjaan program lebih lambat
Source program tidak dipergunakan Source program terus dipergunakan
hanya bila untuk perbaikan saja
Keamanan dari program lebih terjamin Keamanan dari program kurang
terjamin

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

E. Penulisan Algoritma

Ada tiga cara penulisan algoritma, yaitu :


1. Bahasa natural
Yaitu dengan menjelaskan secara detail algoritma suatu masalah dengan bahasa yang
mudah dimengerti oleh orang awam, dan akan sangat sulit dimengerti bila
diterjemahkan kedalam bahasa pemograman.
Contoh :
Program Luas Segitiga
 Memasukkan angka alas dan tinggi.
 Algoritma mengitung luas segitiga yaitu setengah alas dikalikan tinggi
 Masukkan alas dan tinggi
 Rumus luas segitiga = 0.5 * a * t
 Cetak hasilnya ke layar

2. Pseudocode
Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti
Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang
akan di komunikasikan kepada pemrogram.
Contoh :
Mencari Luas Segitiga
a. Read Alas
b. Read Tinggi
c. Luas=(Alas*Tinggi)/2
d. Write(luas)

3. Flowchart
Flowchart atau Diagram Alur adalah gambar atau bagan yang memperlihatkan urutan
dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan
simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan
antara proses digambarkan dengan garis penghubung. Dengan menggunakan flowchart
akan memudahkan kita untuk melakukan pengecekan bagian-bagian yang terlupakan
dalam analisis masalah. 

Contoh flowchart

2
ALGORITMA DAN PEMROGRAMAN KELAS XI

Latihan 1:
1. Jelaskan perbedaan Algoritma dan pemrograman?
2. Buatlah Algoritma membuat nasi goreng menggunakan bahasa natural !
3. Buatlah Algoritma membuat nasi goreng menggunakan flowchart

2
7
Jawaban soal
salah satu contoh algoritma dalam membuat nasi goreng, yaitu sebagai berikut:
1. Mulai
2. Siapkan alat dan bahan ( alat : wajan, alat untuk mengolah ; bahan : minyak, bumbu bumbu nasi goreng,
nasi )
3. Panaskan minyak
4. Masukkan bumbu-bumbu nasi goreng lalu nasi dan masak hingga matang
5. Nasi goreng siap disajikan
6. Selesai

Diagram alir

You might also like