• Tidak ada hasil yang ditemukan

MAKALAH ALGORITMA, PSEUDOCODE DAN FLOWCHART TENTANG YUFI EKO FIRMANSYAH 1 D3 IT B OLEH

N/A
N/A
Protected

Academic year: 2022

Membagikan "MAKALAH ALGORITMA, PSEUDOCODE DAN FLOWCHART TENTANG YUFI EKO FIRMANSYAH 1 D3 IT B OLEH"

Copied!
7
0
0

Teks penuh

(1)

MAKALAH

TENTANG

ALGORITMA, PSEUDOCODE DAN FLOWCHART

OLEH

YUFI EKO FIRMANSYAH

1 D3 IT B

(2)

BAB I PENDAHULUAN

Pada saat kita membuat sebuah program sering kali kita menghadapi permasalahan yang memerlukan pengrutan suatu nilai baik secara langsung atau pun tidak. Misalnya kita melakukan mencari sebuah nilai pada suatu list, permasalahan akan lebih mudah diselesaikan jika kita mengurutkan terlebih dahulu list tersebut dari kecil ke besar, kita tinggal melakukan pencarian nilai tersebut selama nilai tersebut lebih kecil atau sama dengan nilai yang ditelusuri pada list. Jika nilai dari dalam list sudah lebih besar dari nilai yang kita cari berarti sudah pasti nilai yang dicari tersebut tidak ada. Ini jauh lebih efektif dibandingkan mengecek semua nilai pada list tersebut dari awal sampai akhir jika nilai itu tidak ada, ini sangat tidak efektif/ bayangkan jika kita harus mencari satu nilai dalam data yang jumlahnya mencapai jutaan atau milyaran.

Sadar atau tidak manusia sering melakukan pengurutan dengan teknik-teknik tertentu dalam kehidupan sehari-hari. Misalnya saat kita bermain kartu remi, kita akan mengambil kartu tersebut dan mengurutkannya dengan cara-cara tertentu. Bila kita mengambil kartu tersebut satu-per-satu dari tumpukannya dan setiap mengambil kita langsung mengurutkannya dalam algoritma pengurutan, cara tersebut adalah implementasi dari insertion sort. Namun bila kartu dibagikan semuanya terlebih dahulu kemudian baru kita kelompokan menurut jenisnya. Kemudian barulah kita urutkan dari paling kecil ke paling besar maka itulah yang disebut selection sort.

BAB II

ALGORITMA, PSEUDOCODE DAN FLOWCHART

ALGORITMA Sejarah :

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. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al- Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari Algorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa. Maka lambat laun kata Algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam Bahasa Indonesia, kata Algorithm diserap menjadi Algoritma.

Definisi :

1. Langkah-langkah yang dilakukan agar solusi masalah dapat diperoleh 2. Suatu prosedur yang merupakan urutan langkah-langkah yang berintegrasi

3. Suatu metode khusus yang digunakan untuk menyelesaikan suatu masalah yang nyata.

(Webster Dictionary)

4. Algoritma adalah langkah – langkah logis tertentu untuk menyelesaikan suatu masalah

(3)

Ciri – ciri :

1. Ada input.

2. Ada proses.

3. Ada output.

4. Memiliki instruksi instruksi yang jelas dan tidak ambigu.

5. Harus mempunyai stopping role.

Sifat :

1. Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman.

2. Tidak tergantung pada suatu bahasa pemrograman.

3. Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun.

Algoritma dapat digunakan untuk merepresentasikan suatu urutan kejadian secara logis dan dapat diterapkan di semua kejadian sehari-hari

Kriteria Pemilihan Algoritma :

1. Ada output : mengacu pada definisi algoritma, suatu algoritma haruslah mempunyai output yang harus merupakan solusi dari masalah yang sedang diselesaikan.

2. Efektifitas dan Efisiensi : dikatakan efektif jika algoritma tersebut menghasilkan suatu solusi yang sesuai dengan masalah yang diselesaikan dalam arti algoritma harus tepat guna.Dikatakan efisiensi jika waktu proses suatu algoritma relatif lebih singkat dan penggunaan memori komputernya lebih sedikit.

3. Jumlah langkahnya berhingga : maksudnya adalah barisan instruksi yang dibuat harus dalam suatu urutan tertentu atau harus berhingga agar masalah yang dihadapi dapat diselesaikan dengan tidak memerlukan waktu relatif lama.

4. Berakhir à (Semi Algoritma) : proses didalam mencari penyelesaian suatu masalah harus berhenti dan berakhir dengan hasil akhir yang merupakan solusinya atau berupa informasi yang tidak diketemukan solusinya. Artinya baik dalam kondisi solusi ada atau tidak ada, proses akan tetap harus berakhir dan berhenti. Istilah lain dalam algoritma dikenal sebagai SEMI ALGORITMA, yaitu suatu prosedur yang hanya akan berhenti jika mempunyai atau menghasilkan solusi, sedangkan jika tidak menghasilkan solusi, maka prosedur tersebut akan berjalan tanpa henti.

5. Terstruktur : yaitu urutan barisan langkah-langkah yang digunakan harus disusun sedemikian rupa agar proses penyelesaian tidak berbelit-belit sedemikian sehingga bagian-bagian proses dapat dibedakan dengan jelas mana bagian input, proses dan output sehingga memudahkan user melakukan pemeriksaan ulang.

Kesimpulannya:

Suatu Algoritma yang terbaik harus menghasilkan output yan tepat guna (efektif) dalam waktu yang relatif singkat & penggunaan memori yang relatif sedikit(efisien) dengan langkah yang berhingga &

prosedurnya berakhir baik dalam keadan diperoleh suatu solusi ataupun tidak ada solusinya.

(4)

Contoh kasus dalam kehidupan sehari-hari:

Algoritma memasak mie instan.

1. Rebus air hingga mendidih.

2. Masukkan mie instan ke dalam air mendidih tersebut.

3. Tunggu beberapa hingga mie terlihat matang.

4. Jika mie sudah dirasa matang, angkat dan tiriskan.

5. Campurkan bumbu-bumbu, dan aduk hingga rata.

Algoritma menghitung luas persegi panjang.

1. Masukkan panjang 2. Masukkan lebar

3. Nilai luas adalah panjang * lebar 4. Tampilkan luas

PSEUDOCODE

Pseudo-code adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh seseorang untuk menuliskan algoritma dari suatu permasalahan. Pseudo-code berisikan langkah-langkah untuk menyelesaikan suatu permasalahan [hampir sama dengan algoritma], hanya saja bentuknya sedikit berbeda dari algoritma.

Pseudo-code menggunakan bahasa yang hampir menyerupai bahasa pemrograman. Selain itu biasanya pseudo-code menggunakan bahasa yang mudah dipahami secara universal dan juga lebih ringkas dari pada algoritma.

Beda antara algoritma dan pseudo-code : Contoh algoritma mencari luas persegi panjang

Algoritma Pseudo-code

Masukkan panjang Input panjang Masukkan Lebar Input panjang Nilai luas adalah panjang x lebar Luas ←panjang x lebar

Tampilkan luas Print luas

Sebenarnya tidak ada aturan mengikat tentang penulisan algoritma dan pseudo-code, karena guna kedua hal ini adalah untuk memudahkan seseorang untuk menggambarkan urutan suatu kejadian. Biasanya untuk para programmer, guna kedua hal ini adalah sebagai dasar alur pembuatan program. Di mana dapat merepresentasikan alur cerita dari client tentang kebutuhan dasar dari

(5)

sebuah program, sehingga lebih mudah untuk dipahami.Jadi pseudo-code bisa dikatakan juga sebagai algortima yang sudah sedikit digabungkan dengan bahasa pemrograman yang akan digunakan.

Contoh lain :

Matematika Bizz Buzz Fortran style pseudo code program bizzbuzz

do i = 1 to 100

set print_number to true if i is divisible by 3

print "Bizz"

set print_number to false if i is divisible by 5

print "Buzz"

set print_number to false if print_number, print i print a newline

end do

Pascal style pseudo code procedure bizzbuzz for i := 1 to 100 do

set print_number to true;

if i is divisible by 3 then print "Bizz";

set print_number to false;

if i is divisible by 5 then print "Buzz";

set print_number to false;

if print_number, print i;

print a newline;

end

C style pseudo code void function bizzbuzz for (i = 1; i<=100; i++) { set print_number to true;

if i is divisible by 3 print "Bizz";

set print_number to false;

if i is divisible by 5 print "Buzz";

set print_number to false;

if print_number, print i;

print a newline;

}

(6)

FLOWCHART

Flowchart dalam Bahasa Indonesia diterjemahkan sebagai Diagram Alir. Dari dua kata ini, maka dapat kita bayangkan bahwa flowchart itu berbentuk diagram yang bentuknya dapat mengalirkan sesuatu.

Hal ini memang benar, flowchart memang melukiskan suatu aliran kegiatan dari awal hingga akhir mengenai suatu langkah-langkah dalam penyelesaian suatu masalah. Masalah tersebut bisa bermacam-macam, mulai dari masalah yang sederhana sampai yang kompleks. Masalah yang kita pelajari tentu saja masalah pemrograman dengan menggunakan komputer, tetapi secara logika dapat kita awali dengan mengamati permasalahan dalam kehidupan sehari-hari kita.

Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output.

Simbol-simbol Flowchart :

(7)

Contoh Flowchart :

BAB III KESIMPULAN

- Persamaan

Menurut saya Algoritma, Pseudocode dan Flowchart memiliki persamaan yaitu memudahkan seseorang untuk menggambarkan urutan suatu kejadian yang bertujuan untuk menyelesaikan suatu masalah dan sama-sama mempunyai alur Input->Proses->Output.

- Perbedaan Algoritma :

a. Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman.

b. Tidak menggunakan diagram

c. Tidak tergantung pada suatu bahasa pemrograman.

d. Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun.

Pseudocode :

a. Menggunakan simbol atau sintaks dari suatu bahasa pemrograman.

b. Tidak menggunakan diagram

c. Tergantung pada suatu bahasa pemrograman.

d. Notasi-notasinya dapat digunakan untuk bahasa pemrograman.

Flowchart :

a. Menggunakan simbol atau sintaks dari suatu bahasa pemrograman.

b. Menggunakan diagram

c. Tidak tergantung pada suatu bahasa pemrograman.

d. Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun.

Referensi

Dokumen terkait