NPM : 59414226
Kelas : 1IA17
Mata Kuliah : Algoritma dan Pemrograman 1A
Dosen : Kunto Bayu A, ST
Definisi Algoritma
Algoritma adalah kumpulan instruksi/perintah/langkah yang berhingga jumlahnya, dituliskan secara sistematis. Urutan langkah logis yang berarti algoritma harus mengikuti suatu urutan tertentu, tidak boleh berlompat-lompat. Dan digunakan untuk menyelesaikan masalah/persoalan logika dan matematika. Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris. Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat, dan tidak efisien.
Algoritma pemrograman yang baik harus memenuhi beberapa kriteria, yaitu :
- Menggunakan langkah/metode yang tepat dalam pemecahan masalah
- Menghasilkan outpuut yang benar
- Ditulis menggunakan bahasa yang standar serta dengan format yang mudah dipahami
- Operasi yang diperlukan sudah terdefinisi dengan jelas
- Semua proses harus berakhir/berhingga. Jadi, ada saat untuk berhenti.
- Precise
- Jumlah langkah berhingga dan tertentu
- Efektif
- Harus terminate
- Output yang dihasilkan cepat
Penyajian Algoritma
Algoritma disajikan dengan tulisan dan gambar. Algoritma yang disajikan dengan tulisan memiliki struktur bahasa tertentu dan pseudocode, sedangkan yang disajikan dengan gambar, misalnya flowchart program, data flow diagram, diagram chart, dan lain-lain.
Contoh :
Algoritma untuk mencari rata-rata dari 3 bilangan yang diinputkan
- Algoritma dengan struktur bahasa indonesia
- Baca bilangan a, b, dan c
- Jumlahkan ketiga bilangan tersebut
- Bagi jumlahnya dengan 3
- Tulis hasilnya
- Algoritma dengan pseudocode
- Input (a, b, c)
- Jml ← a+b+c
- Rerata ← Jml/3
- Output (Rerata)
- Algoritma dengan flowchart program
Pseudocode
Pseudocode berasal dari kata pseudo (mirip/menyerupai) dan code yang berarti kode yang mirip dengan kode program yang sebenarnya. Sebagai contoh algoritma yang ditulis dengan pseudocode untuk menyelesaikan permasalahan akan menukarkan isi dari dua nilai yang berbeda, yaitu A = 10 dan B = 20
C ← B
B ← A
A ← C
Output (A, B)
Flowchart (Bagan Alir)
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan hubungan antar proses digambarkan dengan garis penghubung. Flowchart ini merupakan langkah awal pembuatan program. Dengan adanya flowchart urutan poses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan lebih mudah. Setelah flowchart selesai disusun, selanjutnya pemrogram (programmer) menerjemahkannya ke bentuk program dengan bahasa pemrograman.
Tujuan utama penggunaan flowchart adalah untuk menyederhanakan rangkaian proses atau prosedur untuk memudahkan pemahaman pengguna terhadap informasi tersebut. Oleh karena itu, design sebuah flowchart harus ringkas, jelas, dan logis.
Flowchart terbagi menjadi dua, yaitu flowchart system dan flowchart pemrograman.
Flowchart System
Yaitu bagan yang menggambarkan suatu prosedur dan proses suatu file dalam suatu media menjadi file dalam media yang lain dalam suatu sistem data.
Simbol yang digunakan :
Flowchart Program
Yaitu bagan yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.
Simbol - simbol flowchart dibagi 3 kelompok :
1.Flow Direction Symbols; dipakai untuk menggabungkan antara symbol yang satu dengan symbol lainnya. diataranya:
- Symbol Off-line Connector
- Symbol Connector
- Symbol Comunication Link
- Symbol Off-line Connector
- Symbol Connector
- Symbol Comunication Link
2.Processing symbols; menunjukkan jenis operasi pengolahan dalam suatu prosedur. diantaranya;
-Symbol Process
-Symbol Manual Operation
-Symbol Decision
-Symbol Predefined Process
-Symbol Terminal
-Symbol Off-line Storage
-Symbol Manual Input
-Symbol Keying Operation
3.Input-output symbols: menyatakan jenis peralatan yang digunakan sebagai media input atau output. diataranya :
-Symbol input/output
-Symbol magnetic-tape unit
-Symbol punched card
-Symbol disk and on-line storage
-Symbol display
-Symbol transmittal tape
-Symbol dokumen
-Symbol Process
-Symbol Manual Operation
-Symbol Decision
-Symbol Predefined Process
-Symbol Terminal
-Symbol Off-line Storage
-Symbol Manual Input
-Symbol Keying Operation
3.Input-output symbols: menyatakan jenis peralatan yang digunakan sebagai media input atau output. diataranya :
-Symbol input/output
-Symbol magnetic-tape unit
-Symbol punched card
-Symbol disk and on-line storage
-Symbol display
-Symbol transmittal tape
-Symbol dokumen
Struktur Dasar Algoritma
Algoritma berisi langkah - langkah penyelesaian suatu masalah. Langkah - angkah terseut bisa berupa urutan aksi (kejadian/tindakan), pemilihan aksi, dan pengulangan aksi. Berikut adalah tiga struktur dasar algoritma, yaitu:
1. Sequence Structure (Struktur Runtutan)
Struktur runtutan adalah struktur dasar algoritma dimana instruksi akan dieksekusi secara berurutan. Digunakan untuk program yang instruksinya sequential/berururtan.
2. Selection Structure (Struktur Percabangan )
Struktur percabangan adalah struktur dasar algoritma di mana instruksi/pernyataan akan dieksekusi apabila memenuhi suatu kondisi, yang digambarkan sebagai berikut :
3. Repitition Structure (Struktur Perulangan)
Struktur perulangan adalah struktur dasar algoritma dimana instruksi akan dieksekusi secara berulang - ulang apabila memenuhi atau tidak memenuhi suatu kondisi, yang digambarkan sebagai berikut :
Sumber : Buka Pengantar Logika Informatika, Algoritma, dan Pemrograman Komputer, Penerbit ANDI Yogyakarta