0% menganggap dokumen ini bermanfaat (0 suara)
9 tayangan7 halaman

Algoritma Pemrograman

Diunggah oleh

cahyasipmeme
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
9 tayangan7 halaman

Algoritma Pemrograman

Diunggah oleh

cahyasipmeme
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 7

Pemrograman Dasar – Algoritma Pemrograman

1. Pengantar Algoritma Pemrograman


Belajar memprogram adalah belajar tentang strategi pemecahan masalah, metodologi dan
sistematika pemecahan masalah tersebut kemudian menuangkannya dalam suatu notasi yang
disepakati bersama.
“lebih bersifat pemahaman persoalan, analisis, sintesis”

Belajar bahasa pemrograman adalah belajar memakai suatu bahasa, aturan sintaks (tatabahasa),
setiap instruksi yang ada dan tata cara pengoperasian kompilator atau interpreter bahasa yang
bersangkutan pada mesin tertentu.
Jadi :
“BELAJAR MEMPROGRAM”
TIDAK SAMA DENGAN
“BELAJAR BAHASA PEMROGRAMAN”

1.1 Algortima dan pemrograman Dasar

Perangko dari Rusia pada Gambar di samping 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.

1.2 Definisi Algortima


Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis.

Algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki tingkat
kerumitan yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan
suatu masalah membutuhkan tingkat kerumitan yang tinggi.

1.3 Pembuatan algoritma mempunyai banyak keuntungan di antaranya:


a) Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun,
artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang
melaksanakannya.
b) Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
c) Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya
sama.

1.4 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

1.5 Algoritma Sequencial (Berurutan)


Contoh : Algoritma Berangkat Sekolah
Mulai
Bangun dari tempat tidur
Mandi Pagi
Sarapan Pagi
Pergi Ke Sekolah
Cari Ruang Kelas
Masuk kelas untuk Belajar
Selesai
Perhatikan algoritma sederhana berikut :
Contoh : 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.

1.6 Algoritma Branching/Selection (Percabangan)


Algoritma: Penentuan Kategori Umur
1. Mulai
2. Masukkan umur seseorang
3. Jika umur lebih dari atau sama dengan 18 tahun maka:
4. Tampilkan "Orang ini adalah dewasa."
4. Jika tidak:
6. Tampilkan "Orang ini adalah anak-anak atau remaja."
5. Selesai
Dalam algoritma di atas, kita memiliki percabangan yang menentukan kategori umur seseorang
berdasarkan input umur yang diberikan. Jika umur seseorang lebih dari atau sama dengan 18 tahun, pesan
yang ditampilkan adalah "Orang ini adalah dewasa." Jika umur kurang dari 18 tahun, pesan yang
ditampilkan adalah "Orang ini adalah anak-anak atau remaja."

Contoh 1: Algoritma Pemilihan Transportasi


1. Mulai
2. Periksa cuaca saat ini
3. Jika cuaca cerah maka:
4. Tampilkan "Saya akan pergi ke kantor dengan sepeda."
4. Jika cuaca hujan maka:
6. Periksa apakah saya memiliki payung
7. Jika memiliki payung maka:
8. Tampilkan "Saya akan pergi ke kantor dengan berjalan kaki."
9. Jika tidak memiliki payung maka:
10. Tampilkan "Saya akan pergi ke kantor dengan menggunakan transportasi taxi."
5. Selesai
Dalam contoh ini, algoritma menggambarkan proses pengambilan keputusan untuk memilih transportasi
berdasarkan kondisi cuaca dan ketersediaan payung.

Contoh 2: Keputusan Pembelian Makanan


1. Mulai
2. Periksa saldo dompet
3. Jika saldo >= harga makanan maka:
4. Tampilkan "Saya akan membeli makanan favorit saya."
4. Jika saldo < harga makanan maka:
6. Periksa menu alternatif yang lebih murah
7. Jika ada pilihan yang lebih murah maka:
8. Tampilkan "Saya akan membeli makanan yang lebih terjangkau."
9. Jika tidak ada pilihan yang lebih murah maka:
10. Tampilkan "Saya akan menunda pembelian makanan hingga gaji berikutnya."
5. Selesai
Algoritma di atas mengilustrasikan proses pengambilan keputusan untuk membeli makanan berdasarkan
saldo dompet dan pilihan alternatif yang tersedia.

1.7 Algoritma Looping/Iterasi (Perulangan)

Contoh 1: Menentukan Menu Makanan Selama Seminggu


1. Mulai
2. Inisialisasi daftar_hari = ["Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu"]
3. Inisialisasi daftar_menu = []
4. Untuk setiap hari dalam daftar_hari:
5. Tanya preferensi makanan untuk hari tersebut
6. Pilih menu makanan sesuai preferensi
7. Tambahkan menu makanan ke daftar_menu untuk hari tersebut
5. Tampilkan daftar_menu
6. Selesai

Contoh 2: Mempelajari Bahasa Asing

1. Mulai
2. Ulangi langkah-langkah berikut hingga mahir berbahasa:
3. Belajar kosakata baru: Pelajari minimal 10 kata baru setiap hari.
4. Latih pengucapan: Latih pengucapan kata-kata baru dengan benar.
5. Baca teks sederhana: Baca teks sederhana dalam bahasa yang sedang dipelajari.
6. Dengarkan audio: Dengarkan percakapan atau lagu dalam bahasa yang sedang dipelajari.
7. Berlatih berbicara: Cari teman untuk berlatih berbicara atau ikuti kelas bahasa
3. Selesai
Contoh 3: Menulis Novel
1. Mulai
2. Ulangi langkah-langkah berikut hingga selesai menulis novel:
3. Buat outline: Buat garis besar cerita yang ingin ditulis.
4. Tulis draf pertama: Tulis cerita tanpa terlalu memikirkan kesempurnaan.
5. Edit dan revisi: Baca ulang draf pertama dan lakukan perbaikan.
6. Minta masukan: Mintalah teman atau keluarga untuk memberikan masukan.
7. Ulangi proses editing dan revisi: Lakukan proses editing dan revisi berulang kali hingga
puas dengan hasil.
3. Selesai
Penjelasan:
Contoh-contoh di atas menunjukkan bagaimana algoritma iterasi dapat digunakan untuk menyelesaikan
tugas yang kompleks dengan membagi tugas menjadi langkah-langkah yang lebih kecil dan mengulang
langkah-langkah tersebut hingga tugas selesai.

2. Beda Algoritma dan Program ?

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam
program adalah algoritma. Program ditulis dengan menggunakanbahasa pemrograman. Jadi bisa
disebut bahwa program adalah suatu implementasi dari bahasa pemrograman.

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 hanya Source program terus dipergunakan
bila untuk perbaikan saja
Keamanan dari program lebih terjamin Keamanan dari program kurang terjamin

2.1 Jenis-Jenis Bahasa Pemrograman


• Bahasa Pemrograman Tingkat rendah (Bahasa mesin, Biner)
• Bahasa Pemrograman Tingkat tinggi

Contoh-contoh Bahasa Pemrograman yang ada :

1. Prosedural : Algol, Pascal, Fortran, Basic, Cobol, C


2. Fungsional : LOGO, APL, LISP
3. Deklaratif : Prolog
Object oriented murni: Smalltalk, Eifel, Java, PHP

2.2 Cara penulisan algortima


Ada tiga cara penulisan algoritma, yaitu :

1. Structured English (SE)


SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma. Dasar dari SE adalah
Bahasa Inggris, namun kita dapat memodifikasi dengan Bahasa Indonesia sehingga kita boleh
menyebutnya sebagai Structured Indonesian (SI).

”SE atau SI lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada
pemakai perangkat lunak”

2. Pseudocode
Pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya.

Pseudocode didasarkan pada bahasa pemrograman yang sesungguhnya seperti BASIC, FORTRAN atau
PASCAL. Pseudocode yang berbasis bahasa PASCAL merupakan pseudocode yang sering digunakan.
“Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode
program”
Contoh Pseudocode :
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5. Stop

Pada Contoh diatas tampak bahwa algoritma sudah sangat mirip dengan bahasa BASIC. Pernyataan
seperti READ dan PRINT merupakan keyword yang ada pada bahasa BASIC yang masing-masing
menggantikan kata “baca data” dan “tampilkan”. Dengan menggunakan pseudocode seperti di atas
maka proses penterjemahan dari algoritma ke kode program menjadi lebih mudah.

T U G A S:
1. Buat tiga judul algoritma sequence. Dua judul algortima dalam kehidupan sehari-hari dan
satu judul algoritma yang berhubungan dengan komputer/jurusan atau gawai!
2. Buat beberapa judul algoritma branching dalam kehidupan sehari-hari dan satu judul
algoritma yang berhubungan dengan komputer/jurusan atau gawai!
3. Buat beberapa judul algoritma looping dalam kehidupan sehari-hari dan satu judul
algoritma yang berhubungan dengan komputer/jurusan atau gawai!

NB: Dikumpulkan dikertas selembar.

Anda mungkin juga menyukai