Algoritma

2.1 Pengertian Algoritma
Untuk dapat menyelesaikan persoalan-persoalan yang kita hadapai, maka kita perlu menyusun langkah-langkah atau strategi untuk memecahkan masalah tersebut. Misalnya: pada suatu saat, kita hendak makan, tetapi yang tersedia hanya nasi saja tanpa lauk, kemudian terpikir oleh kita untuk membuat telur dadar, maka kita segera menyusun langkah-langkah untuk membuat telur dadar. Pertama, kita ambil telur dan bumbu-bumbu yang diperlukan. Kedua, membuat bumbu dan mengocoknya bersama telur. Ketiga, menyiapkan perlengkapan masak. Keempat mulai menggoreng telur, dan kelima telur siap dihidangkan. Dalam dunia pemrograman pun demikian, untuk dapat menyelesaikan masalah (problem solving), harus disusun dahulu langkah-langkah penyelesaiannya yang dikenal dengan nama algoritma.


Algoritma berasal dari kata algorism, yaitu nama penulis buku Arab yang terkenal, Abu Ja’far Muhammad ibnu Musa al-Khowarizmi. Dalam bidang pemrograman, algoritma didefinisikan sebagai:
Algoritma adalah kumpulan instruksi-instruksi /perintah–perintah/langkah-langkah yang berhingga jumlahnya dan dituliskan secara sistematis digunakan untuk menyelesaikan masalah/ persoalan logika dan matematika dengan bantuan komputer.
Algoritma pemrograman yang baik, harus memenuhi beberapa kriteria, yaitu:
1. Menggunakan langkah/metode yang tepat dalam pemecahan masalah
2. Menghasilkan output yang benar
3. Ditulis dengan menggunakan bahasa yang standar serta dengan format yang mudah dipahami
4. Operasi yang diperlukan sudah terdefinisi dengan jelas
5. Semua proses harus berakhir/berhingga, ada saat berhentinya.

Selain kriteria tersebut di atas, algoritma juga harus memenuhi ciri sebagai berikut:
1. Precise
2. Jumlah langkah/step berhingga dan tertentu
3. Efektif
4. Harus terminate
5. Output yang dihasilkan tepat


2.2 Penyajian Algoritma
Algoritma disajikan dengan tulisan dan gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa tertentu dan pseudocode, sedangkan yang disajikan dengan gambar, misalnya dengan flowchart program, data flow diagram, diagram chart, dan lain-lain.
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 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 program adalah suatu bagan yang menggambarkan atau mempresentasikan suatu algoritma atau prosedur untuk menyelesaikan masalah.

Flowchart ada dua macam, yaitu flowchart system dan flowchart program.

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 :
Contoh :
: pita magnetik

: keyboard

: storage

: input/output

: proses

: magnetic tape

: arah proses



Flowchart program
Yaitu bagan yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.
Simbol yang digunakan :

: (terminal symbol), menunjukkan awal dan akhir dari program
: (preparation symbol), memberikan nilai awal pada suatu variabel atau counter
: (processing symbol), menunjukkan pengolahan aritmatika dan pemindahan data
: (input/output symbol), menunjukkan proses input atau output
: (decision symbol), untuk mewakili operasi perbandingan logika


: (predefined process symbol), proses yang ditulis sebagai sub program, yaitu prosedur/ fungsi
: (connector symbol), penghubung pada halaman yang sama
: (off page connector symbol), penghubung pada halaman yang berbeda
: arah proses



2.3 Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut bisa berupa urutan aksi (kejadian/tindakan), pemilihan aksi, dan pengulangan aksi. Berikut adalah tiga struktur dasar algoritma, yaitu:

1. Sequence Structure (struktur runtunan)
Struktur runtunan adalah struktur dasar algoritma dimana instruksi akan dieksekusi secara berurutan.
2. Selection Structure (struktur percabangan)
Struktur percabangan adalah struktur dasar algoritma dimana instruksi/pernyataan akan dieksekusi apabila memenuhi atau tidak suatu kondisi.
3. Repetition Structure (struktur perulangan)
Struktur perulangan adalah struktur dasar algoritma dimana instruksi akan dieksekusi secara berulang-ulang apabila memenuhi atau tidak suatu kondisi.

0 komentar:

Posting Komentar