Algoritma & Pemrograman
Algoritma & Pemrograman
1. ALGORITMA
A. Definisi Algoritma
Menurut Kamus Besar Bahasa Indonesia, algoritma adalah urutan logis pengambilan keputusan untuk
pemecahan masalah.
Algoritma dapat juga diartikan urutan penyelesaian masalah yang disusun secara sistematis
menggunakan bahasa yang logis untuk memecahkan suatu permasalahan.
Dalam Ilmu komputer algoritma adalah suatu set instruksi atau formula yang berisi langkah -langkah
untuk pemecahan masalah (problemsolving).
Pengertian algoritma sangat lekat dengan kata logika, yaitu kemampuan manusia untuk berfikir dengan
akal tentang suatu permasalahan, menghasilkan sebuah kebenaran, dibuktikan dan dapat diterima akal.
Logika sering dihubungkan dengan kecerdasan manusia. Seorang manusia yang mampu berlogika dengan
baik biasanya disebut sebagai pribadi yang cerdas. Dalam menyelesaikan suatu masalahpun logika mutlak
diperlukan.
Dari penjelasan diatas dapat disimpulkan bahwa Algoritma adalah ilmu yang mempelajari cara
penyelesaian suatu masalahberdasarkan urutan langkah-langkah yang disusun secara sistematis dan
menggunakan bahasa yang logis dalam memecahkan suatu masalah. Tujuan dari belajar logika dan
algoritma adalah agar dapatmembiasakan diri melakukan suatu perencanaan apabila menyelesaikan
suatu masalah. Permasalahan yang diselesaikan dengan suatuperencanaan yang matang maka akan
mendapatkan solusi yang lebihoptimal dibandingkan menyelesaikan masalah tanpa menggunakan suatu
perencanaan.
2. BAHASA PEMROGRAMA
FungsiBahasa Pemrograman
Fungsi bahasa pemrograman yaitu memerintah komputer untuk mengolah data sesuai dengan alur
berpikir yang kita inginkan. Keluaran dari bahasa pemrograman tersebut berupa program/aplikasi.
ini menyebabkan pembuat program harus mempelajari bagaimanamenuliskan kode dengan aturan dan
struktur pemrograman secara sitematis. Dengan mempelajari hal tersebut, akan memberikan dampak
positif bagi kitauntuk terbiasa dengan cara berpikir sistematis.
Seperti terlah dijelaskan di atas bahwa penyusuna atau struktur dasar algoritma adalah langkah-langkah.
Suatu algoritma dapat terdiri dari tiga struktur dasar yaitu runtunan, pemilihan dan pengulangan. Ketiga
jenis langkah tersebut membentukkonstruksi suatu algoritma. Berikut adalah penjelasan dari tiga
struktur tersebut :
a. 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. Urutan dari instruksi menentukan hasil akhir dari suatu algoritma. Bila urutan penulisan
berubah maka mungkin juga hasil akhirnya berubah. Sebagai contoh perhatikan operasi aritmatika berikut
b. Pemilihan (selection)
Kadangkala terdapat suatu kejadian yang baru akan dikerjakan jika suatu kondisi tertentu telah terpenuhi.
Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi adalah persyaratan yang dapat
bernilai benar atau salah. Satu atau beberapa instruksi hanya dilaksanakan apabila kondisi bernilai benar,
sebaliknya apabila salah maka instruksi tidak akan dilaksanakan. Contoh kasus pemilihan adalah dalam
penentuan bilangan genap atau ganjil berikut ini:
1. Masukkan bilangan sebagai sebuah bilangan bulat
2. Bagi bilangan dengan angka 2, simpan nilai sisa pembagian dalam
variabel sisa
3. Jika nilai sisa sama dengan 0 maka kerjakan langkah 4:
4. Tampilkan ”GENAP” ke layar
5. Jika nilai sisa tidak sama dengan 0 maka kerjakan langkah 6
6. Tampilkan ”GANJIL” ke layar
7. Selesai.
c. 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. Pengulangan merupakan kegiatan mengerjakan
sebuah atau sejumlah aksi yang sama sebanyak jumlah yang ditentukan atau sesuai dengan kondisi yang
diinginkan.
NOTASI ALGORITMA
Notasi Algoritma adalah suatu notasi (cara) yang di gunakan untuk menuliskan langkah-langkah dalam
pembuatan suatu program menggunakan bahasa pemrograman.
Ada beberapa notasi/cara yang bisa digunakan dalam menuis algoritma antara lain:
1. Deskriptif
Menulis atau menyusun langkah-langkah penyelesaian masalah atau kegiatan dengan cara
menguraikannya dengan menggunakan bahasa formal, bahasa natural atau sehari-hari.
KELEBIHAN
KEKURANGAN
✓ Kurang efektif.
2. Flow chart
Menulis atau menyusun langkah-langkah penyelesaian masalah atau kegiatan dengan menggunakan
diagram/ (simbol-simbol flow chart).
3. Pseudocode
Menulis atau menyusun langkah-langkah penyelesaian masalah atau kegiatan mirip atau mendekati
bahasa pemrograman yang di gunakan.
Algoritmanya:
Mulai.
Masukan bilangan sembarang.
Bagi bilangan tersebut dengan bilangan 2.
Hitung sisa bagi pada langkah 2.
Bila sisa bagi sama dengan 0 (nol) maka bilangan itu adalah bilangan genap. Tetapi, bila sisanya
sama dengan 1 maka bilangan itu adalah bilangan ganjil.
Selesai.
diubah menjadi program komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu
pemrogram dengan yang lainnya. Namum demikian terdapat beberapa anjuran yang harus diperhatikan,
yaitu :
1. Flowchart digambarkan di suatu halaman dimulai dari sisi atas ke bawah dan dari sisi kiri ke kanan.
2. Aktivitas yang digambarkan harus didefinisikan dengan menggunakan bahasa dan simbol yangtepat
dan definisi ini harus dapat dimengerti oleh pembacanya.
3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas. Hanya terdapat satu titik awal dan
satu titik akhir.
4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja, misalkan
MENGHITUNG NILAI RATA-TARA.
5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati.
Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan
pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada
halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.
contoh algoritma tentang menentukan apakah suatu bilangan adalah bilangan ganjil atau bilangan genap
adalah sebagai berikut:
KELEBIHAN
KEKURANGAN
Start
Hasil=0
Bilangan=17
Hasil=Bilangan%2
If (hasil=0)
Print “Bilangan Genap”
Else
Print “Bilangan Ganjil”
End
SYNTAX
Syntax adalah aturan menulis 'kalimat' agar mampu dimengerti dengan benar oleh bahasa
pemrograman. Aturan syntax ini secara baku harus dipenuhi, karena saat proses compilasi setiap
baris script akan di-check dan dipastikan apakah Compiler benar-benar mengerti maksud kalimat
atau tidak.
Jika anda tidak ingin menambahkan perintah readln, bisa menggunakan alternatif lain. Setelah program
di-run (layar akan berkedip sebentar), silahkan tekan tombol ALT+F5, atau pilih menu Debug -> User
Screen.
Kode program dibawah ini akan menghasilkan tampilan yang sama dengan kode kita sebelumnya:
1 PROGRAMhello_world;
2 BEGIN
3 WRITELN('Hello World');
4 WRITELN('Sedang belajar pascal...');
5 READLN;
6 END.
1 programhello_world;
2 begin
3 (* Kode untuk menampilkan tulisan 'Hello World'*)
4 writeln('Hello World');
5 { Kode untuk menampilkan tulisan 'Sedang belajar pascal...'}
6 writeln('Sedang belajar pascal...');
7 readln;
8 end.
Penulisan komentar juga bisa mencakup beberapa baris, selama tanda penutup komentar belum di
temukan:
1 programhello_world;
2 begin
3 (* Kode untuk
4 menampilkan tulisan
5 'Hello World'*)
6 writeln('Hello World');
7 { Kode untuk
8 menampilkan tulisan
9 'Sedang belajar pascal...'}
10 writeln('Sedang belajar pascal...');
11 readln;
12 end.
Selain untuk membuat keterangan, komentar juga berguna untuk ‘menghapus sementara’ sebuah kode
program, seperti contoh berikut:
1 programhello_world;
2 begin
3 writeln('Hello World');
4 {writeln('Sedang serius belajar, jangan diganggu!');}
5 writeln('Sedang belajar pascal...');
6 readln;
7 end.
Penggunaan Whitespace
Whitespace adalah istilah pemrograman yang merujuk kepada tanda baca ‘spasi’ yang tidak terlihat.
Contoh karakter-karakter whitespace adalah: spasi, tab dan enter (new line). Di dalam Pascal, secara
umum whitespace akan diabaikan.
Sebagai contoh, kode program hello world kita sebelumnya bisa juga ditulis seperti berikut ini:
1 programhello_world;beginwriteln('Hello World');
Walaupun kode program yang dihasilkan lebih singkat, dan mungkin lebih kecil (beberapa byte),
Penggunaan whitespace akan membuat kode program lebih mudah dibaca. Ukuran yang kecil beberapa
byte ini tidak sebanding dengan kemudahan yang didapat dengan penambahan whitespace.
1 programhello_world;
2 begin
3 writeln('Hello World');
4 writeln('Sedang belajar pascal...');
5 readln;
6 end