0% menganggap dokumen ini bermanfaat (0 suara)
292 tayangan10 halaman

Algoritma Pemrograman

ALGORITMA PEMOGRAMAN

Diunggah oleh

Winda Widya
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 atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
292 tayangan10 halaman

Algoritma Pemrograman

ALGORITMA PEMOGRAMAN

Diunggah oleh

Winda Widya
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 atau baca online di Scribd
Anda di halaman 1/ 10
BAB 1, ALGORITMA PEMROGRAMAN PENGERTIAN ALGORITMA O88 a 1O I) I) 2 Gambar 1. Perangko yang diterbitkan pada 6 September di Unisoviet dalam rangka memperingati 1200 kelahiran aleKhwarizmi Istilab/kata algoritma (algorithm) baru dikenal pada pertengahan abad XIX. Dalam beberapa kamus, istilah algoritma belum dikenal sampai dengan tahun 1957, dimana pada saat itu istilah yang dikenal hanyalah “algorism" yang berarti proses menghitung dengan angka Arab. Orang yang melakukan algorism disebut dengan algorist. Kata algorism berasal dari nama seorang ilmuan muslim abad VII yaitu Abu Ja'far Muhammad ibn Musa ALKhwarizmi (Gwge gy dare las \e2juls2u)) seorang ahli matematika, astrologi, astronomi dan geografi, Menurut sejarah, Muhammad bin Musa dilahirkan pada tahun 164 H (780 M) di kawasan Khwarizm (Khiva yang berada di Provinsi Khurasan pada masa kekuasaan Bani Abbasiyah, sekarang terletak di Provinsi Xorazm, Uzbekistan) dan wafat di Baghdad pada tahun 232 H (847 M). Tambahan nama Al- Khwarizmi adalah sesuatu yang lumrah, sesuai dengan kebiasaan yang berlaku di daerah tersebut, dimana nama daerah asal seseorang dapat dituliskan di belakang nama utamanya, Dalam lafalisasi Barat, kata Al-Khuwarizmi menjadi algorism. Berbagai karya penting telah dihasilkan diantaranya adalah: buku al-Kitab al-Mukhtasar fi Hisab al-Jabr wa'l-Muqabala (The Compendious Book on Calculation by Completion and Balancing) yang ditulis pada tahun 830 M, On the Calculation with Hindu Numerals (ditulis tahun 825 M) yang diterjomahkan ke bahasa Latin menjadi Algoritmi de Numero Indorum, sebuah manuskrip yang diyakini menjadi cikal bakal lahirnya Algoritma Judul buku Al Jabar wal Mugabalah memberikan akar kata “aljabar" (algebra), Perubahan dari kata algorism menjadi algoritm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran —sm beubah menjadi —thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa/lumrah, maka lambat laun kata algorithm Gambar 2. Salah satu halaman buku al-Khwarizmt Halaman: 1 dari 80 berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi *algoritma’ Pada tahun 1950, kata algoritma pertama kali digunakan pada “algoritma Euclidean” (Euclid’s algorithm). Euclid, scorang matematikawan Yunani (lahir pada tahun 350 M), dalam bukunya yang berjudul Element menuliskan langkah-langkah untuk menemukan pembagi bersama terbesar (common greatest divisor atau ged), dari dua buah bilangan bulat, m dan n. Pembagi terbesar dari dua buah bilangan bulat tak-negatif adalah bilangan bulat positif terbesar yang habis membagi kedua bilangan tersebut. Saat itu Euclid tidak menyebut metodenya itu sebagai algoritma, baru pada abad modernlah orang-orang menyebut metodenya itu sebagai “algoritma Euclidean”. Istilah algoritma diartikan sebagai prosedur langkah demi langkah untuk memecahkan masalah atau menyelesaikan suatu tugas (Merriam-Webster’s Collegiate Dictionary). Kamus Besar Bahasa Indonesia (KBBI) mendefinisikan algoritma sebagai urutan logis pengambilan keputusan untuk pemecahan masalah. Jadi, algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma, Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik, Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya, Ketiga adalah efisiensi algoritma, Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut, Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang sama, Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat. ALGORITMA DALAM KEHIDUPAN SEHARI-HARI Algoritma adalah jantung ilmu komputer atau informatika. Namun, ruh algoritma tidak selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun banyak tordapat proses yang dinyatakan dalam suatu algoritma, Cara-cara membuat kue atau Halaman: 2 dari 80 masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma, Pada setiap resep selalu ada urutan langkahlangkah membuat masakan, Bila langkah- langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Mahasiswa yang sedang kkos tentu akan mempelajari bagaimana memasak mie instan, yang dimulai dari langkah membuka bungkus mie, memanaskan air, memasukkan mie ke dalam air yang telah dipanasi, sampai memasukkan bumbunya. Jika langkah-langkah tersebut tidak dipenuhi, maka tidak mungkin tersaji mie instan yang lezat. Contoh lainnya, adalah ketika diminta untuk megirimkan sebuah surat melalui pos, maka Jangkah yang harus dilakukan adalah: (1) tulis surat pada selembar kertas; (2) masukkan surat ke dalam amplop; (3) tulis alamat penerima dan pengirim pada amplop; (4) tempel perangko pada amplop; (5) bawa surat ke kantor pos dan serahkan kepada petugas pos untuk dikirim. Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa manusia, komputer, robot atau alat-alat elektronik Iinnya, Pemroses melakukan suatu proses dengan melaksanakan atau "mengeksekusi” algoritma yang menjabarkan proses tersebut. Algoritma adalah deskripsi dari suatu pola tingkah laku yang dinyatakan secara primitif yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi nama, dan diasumsikan sebelumnya bahwa aksi-aksi tersebut dapat kerjakan schingga dapat menyebabkan kejadian. Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut, Pemroses mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya. Juru masak membuat kue berdasarkan resep yang diberikan kepadanya, Pianis memainkan lagu berdasarkan papan not balok. Karena itu suatu algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi suatu pemroses harus (1) mengerti setiap langkah dalam algoritma; dan (2) mengerjakan operasi yang bersesuaian dengan langkah tersebut. KRITERIA ALGORITMA Menurut Donald Ervin Knuth ("Bapak Analisis Algoritma’), algoritma yang baik memiliki kriteria sebagai berikut: 1. Input (masukan) Dari sisi input, minimal program harus memiliki nol input atau lebih dari pengguna. Program pasti memiliki input. Yang dimaksud memiliki nol input adalah program tidak mendapatkan masukan data dari pengguna secara langsung, namun semua data yang akan digunakan oleh program sudah dideklarasikan di dalam kode program yang akan dicksekusi. Jadi tidak perlu diinputkan dari Inar. Sedangkan jika mendapat input dari pengguna, data bisa dimasukkan melalui tampilan program, misalnya melalui textbox, ataupun melalui file/basis data yang terdapat di suatu tempat/server tertentu Halaman: 3 dari 80 2. Output (hasiV/keluaran) Dari sisi output, minimal program harus memiliki 1 output. Program pasti menghasilkan output karena program dibuat untuk tujuan tertentu. Tujuan itulah outputnya. Output program bisa ditampilkan ke layar, dituliskan ke file, atau disimpan di clipboard untuk kemudian dipakai 4i program lain atau disimpan dalam basis data, 3. Finite (Terbatas) Program harus pasti dan berhenti, bukan tak terhingga. Suatu yang dieksekusi haruslah berhenti dan selesai, bukan berjalan terus-menerus hingga komputer macet dan akhirnya harus di-Aill dengan paksa. Suatu program dapat mengalami infinite karena kesalahan programmer, mungkin karena kurang teliti atau karena tidak ada kondisi yang bisa membuatnya berhenti, atau mungkin karena ada error yang tidak terduga, misalnya file tidak ada namun program mencarinya terus menerus. Memang ada program yang scolah-olah tidak pernah mati, misalnya Sistem Operasi, namun sebenarnya sistem operasi juga pasti akan berhenti, yaitu ketika sistem operasi tersebut di-Shutdown. 4. Definite (Pasti) Program harus jelas arah dan tujuannya, Suatu program harus jelas kapan mulai dan kapan berakhir, apa tujuannya, dan momiliki logika yang jelas agar dapat menghasilkan output yang sesuai dengan yang diharapkan, 5. Efision Artinya, program harus efisien, tidak memakan banyak memori, tidak melakukan hal-hal yang tidak perlu. Suatu operasi/kegiatan yang tidak perlu, misalnya x=5+0 atau y=100*0, Mengapa operasi tersebut tidak efisien, karena setiap operasi pasti membutuhkan waktu eksekusi, padahal operasi tersebut jelas tidak berguna, Karena berapapun bilangan yang ditambah dengan 0 (nol) pasti bilangan itu sendiri dan bilangan apapun yang dikalikan dengan 0 (nol) pasti hasilnya nol. Nah, kenapa harus dihitung lagi? Jika demikian, berarti program tersebut tidak efisien dan perlu diperbaiki PROGRAM DAN BAHASA PEMROGRAMAN Komputer hanyalah salah satu pemroses, Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Program ditulis dalam salah satu bahasa pemrograman dan kegiatan membuat program disebut pemrograman (programming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas sederetan instruksi, Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan oleh komputer. Halaman: 4 dari 80 Secara garis besar komputer tersusun atas empat Komponen utama yaitu, piranti masukan, piranti keluaran, unit pemroses utama, dan memori. Unit pemroses utama (Central Processing Unit - CPU) adalah ‘otak" komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca, dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingat-ingat. Memori menyimpan program — yang berisi operasi-operasi yang akan dikerjakan oleh CPU- dan data/informasi (sesuatu yang diolah oleh operasi-operasi) Piranti masukan dan keluaran (1/0 devices) adalah alat yang memasukkan data atau program ke dalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya. Contoh piranti masukan antara lain, papan kunci (keyboard), pemindai (scanner), dan cakram (disk). Sedankan contoh piranti keluaran adalah, layar peraga (monitor), pencetak (printer), dan cakram. Mekanisme kerja keempat komponen di atas dapat dijelaskan sebagai berikut. Mula-mula program dimasukkan ke dalam memori komputer, Ketika program dieksekusi (execute), setiap instruksi yang telah tersimpan di dalam memori dikirim ke CPU. CPU mengerjakan operasi-operasi yang bersesuaian dengan instruksi tersebut, Bila suatu operasi memerlukan data, data dibaca dari piranti masukan, disimpan di dalam memori lalu dikirim ke CPU untuk operasi yang memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke dalam memori, alu memori menuliskan keluaran tadi ke piranti keluaran (misalnya dengan menampilkannya di layar monitor) Belajar memprogram tidak sama dengan belajar bahasa pemrograman, Belajar memprogram adalah belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami Sedangkan helajar bahasa pemrograman berarti belajar memakai suatu bahasa aturan- aturan tata bahasanya, pernyataan-pernyataannya, tata cara pengoperasian compiler-nya Gike diperlukan), dan memanfaatkan pernyataan-pernyataan tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja. Sampai saat ini terdapat puluhan bahasa pemrogram, antara lain bahasa rakitan (assembly), Fortran, Cobol, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, PHP, ASP, Ruby, Phyton, LISP, PRG, bahasa-bahasa simulasi seperti CSMP, Simscript, GPSS, Dinamo. Berdasarkan terapannya, bahasa pemrograman dapat digolongkan atas dua kelompok besar : (1) Bahasa pemrograman bertujuan khusus. Yang termasuk kelompok ini adalah Cobol (untuk terapan bisnis dan administrasi). Fortran, MATLAB, SciLab (terapan Komputasi ilmiah), bahasa rakitan (terapan pemrograman mesin), Prolog (terapan kecerdasan buatan), PHP, ASP (berbasis web), bahasa-bahasa simulasi, dan sebagainya. (2) Bahasa perograman bertujuan umum, yang dapat digunakan untuk berbagai aplikasi. Yang termasuk kelompok ini adalah bahasa Pascal, Basic dan C. ‘Tentu saja pembagian ini tidak kaku. Bahasa-bahasa bertujuan khusus tidak berarti tidak bisa digunakan untuk aplikasi lain, Cobol misalnya, dapat juga digunakan untuk terapan ilmiah, hanya saja kemampuannya terbatas. Yang jelas, bahass-bahasa pemrograman yang berbeda dikembangkan untuk bermacam-macam terapan yang berbeda pula. Berdasarkan pada apakah notasi bahasa pemrograman lebih “dekat" ke mesin atau ke Halaman: 5 dari 80 bahasa manusia, maka bahasa pemrograman dikelompokkan atas dua macam : (2) Bahasa tingkat rendah. Bahasa jenis ini dirancang agar setiap instruksinya langsung dikerjakan oleh komputer, tanpa harus melalui penerjemah (translator). Contohnya adalah bahasa mesin. CPU mengambil instruksi dari memori, langsung mengerti dan langsung mengerjakan operasinya, Bahasa tingkat rendah bersifat primitif, sangat sederhana, orientasinya lebih dekat ke mesin, dan sulit dipahami manusia, Sedangkan bahasa rakitan dimasukkan ke dalam kelompok ini karena alasan notasi yang dipakai dalam bahasa ini lebih dekat ke mesin, meskipun untuk melaksanakan instruksinya masih perlu penerjemahan ke dalam bahasa mesin. (2) Bahasa tingkat tinggi, yang membuat pemrograman lebih mudah dipahami, lebih "manusiawi’, dan berorientasi ke bahasa manusia (bahasa Inggris). Hanya saja, program dalam bahasa tingkat tinggi tidak dapat langsung dilaksanakan oleh komputer. Ia perlu diterjemahkan terlebih dahulu oleh sebuah translator bahasa (yang disebut kompilator atau compiler) ke dalam bahasa mesin sebelum akhirnya dieksekusi oleh CPU. Contoh bahasa tingkat tinggi adalah Pascal, PL/I, Ada, Cobol, Basic, Fortran, C, C++, dan sebagainya MENGUKUR KUALITAS ALGORITMA Ketika manusia berusaha memecahkan masalah, metode atau teknik yang digunakan untuk memecahkan masalah itu. ada kemungkinan bisa banyak (tidak hanya satu). Dan kita memilih mana yang terbaik di antara teknik-teknik itu, Hal ini sama juga dengan algoritma, yang memungkinkan suatu permasalahan dipecahkan dengan metode dan logika yang berlainan. Yang menjadi pertanyaan adalah bagaimana mengukur mana algoritma yang terbaik?. Beberapa persyaratan untuk menjadi algoritma yang baik adalah 1. Tingkat hepercayaannya tinggi (realibility). Hasil yang diperoleh dari proses harus berakurasi tinggi dan benar. 2. Pemrosesan yang efisien (cost rendah). Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin. 3. Sifatnya general. Bukan sesuatu yang hanya untuk menyelesaikan satu kasus saja, tapi juga untuk kasus lain yang lebih general 4. Bisa dikembangkan (expandable). Haruslah sesuatu yang dapat kita kembangkan lebih jauh berdasarkan perubahan requirement yang ada Mudah dimengerti. Siapapun yang melihat, dia akan bisa memahami algoritma Anda. Susah dimengertinya suatu program akan membuat susah di-maintenance (kelola) 6. Portabilitas yang tinggi (portability). Bisa dengan mudah diimplementasikan di berbagai platform komputer. 7. Precise (tepat, betul, teliti). Setiap instruksi harus ditulis dengan seksama dan tidak ada keragu-raguan, dengan demikian setiap instruksi harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan karena pemroses dianggap sudah mengerti. Setiap langkah harus jelas dan past. Contoh : Tambahkan 1 atau 2 pada x Instruksi di atas terdapat keraguan, Halaman: 6 dari 80 8. Jumlah langkah ataw instruksi berhingga dan tertentu. Artinya, untuk kasus yang sama banyaknya, langkah harus tetap dan tertentu meskipun datanya berbeda, 9. Efektif. Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh pemroses yang akan menjalankannya. Contoh : Hitung akar 2 dengan presisi sempurna 10. Instruksi di atas tidak efektif, agar efektif instruksi tersebut diubah, Misal Hitung akar 2 sampai lima digit di belakang koma 11. Harus terminate, Jalannya algoritma harus ada kriteria berhenti, Pertanyaannya adalah apakah bila jumlah instruksinya berhingga maka pasti terminate? 12. Output yang dihasilkan tepat, Jika langkah-langkah algoritmanya logis dan diikuti dengan seksama maka dihasilkan output yang diinginkan. PENULISAN ALGORITMA Secara garis besar penulisan algoritma dapat dilakukan dalam dua bentuk penyajian yaitu tulisan dan gambar (diagram alin/flowchart). Algoritma yang disajikan dengan tulisan yaitu dengan (1) algoritma dengan kalimat deskriptif (2) algoritma dengan pseudocode. Algoritma dengan Kalimat Deskriptif Penulisan algoritma dengan kalimat deskriptif yaitu menjelaskan secara detail algoritma suatu masalah dengan bahasa yang mudah dimengerti oleh orang awam (misalnya bahasa Indonesia atau Inggris) , namun akan sangat sulit dimengerti bila diterjemahkan kedalam bahasa pemograman. Sebagai contoh ada persoalan: bagaimanakah menghitung luas sebuah segitiga?. Algoritma yang merupakah langkah-langkah logis untuk menyelesaikan persoalan tersebut dapat ditulis dengan Kalimat deskriptif (bahasa natural) sebagai berikut: 1. masukkan data panjang alas segitiga (a); 2. masukkan data tinggi segitiga (t); 3. hitung luas segitiga L=0.5*a*t; 4, tampilkan hasil (L). Algoritma di atas tentu akan sangat mudsh dipshami oleh manusia yang membacanya, Karena memang disajikan secara deskriptif. Selain dengan kalimat deskriptif, algoritma tersebut dapat disajikanjuga dalam bentuk lain misalnya dengan pseudocode atau dalam diagram alir Algoritma dengan Pseudocode Pseudo berarti imitasi dan code berarti kode yang dihubungkan dengan instruksi yang ditulis dalam bahasa komputer. Psewdocode adalah bentuk penulisan algoritma yang menggunakan struktur bahasa pemrograman sederhana. Walaupun pseudocode memakai struktur bahasa pemrograman, pseudocode tidak mengikuti aturan penulisan bahasa pemrograman manapun, Mengapa begitu? Karena pseudocode dituliskan hanya untuk mempermudah seseorang memahami sebuah algoritma. Dengan begitu, pseudocode hanyalah menyerupai kode program saja, dan tidak bisa dimengerti langsung oleh Halaman: 7 dari 80 komputer. Pseudocode baru bisa diolah oleh komputer jika telah mengikuti aturan penulisan sebuah bahasa pemrograman (bisa bahasa C, Java, Pascal, PHP, Ruby, Phyton, dan Iain-lain), Pseudocode lebih umum digunakan oleh programmer yang berpengalaman. Akan tetapi, flowchart lebih mudsh dimengerti oleh programmer pemula, pseudocode sangat mudah diimplementasikan ke dalam kode program dibandingkan dengan flowchart. Kita bisa bebas menulis pseudocode selama itu mudah dimengerti bagi orang lain. Tetapi disarankan untuk menggunakan keyword yang umum digunakan seperti : if, then, else, while, do, repeat, for, dan lainnya. Secara standar, pseudocode dituliskan menggunakan bahasa Simple English. Tidak ada tata cara menulis (syntax) yang baku untuk menuliskan pseudocode karena tidak diperuntukan dijalankan pada bahasa pemrograman tertentu, Jika algoritma untuk menghitung luas sebuah segitiga di atas dituliskan dalam bentuk pseudocode yang mirip dengan bahasa pemrograman BASIC, maka akan menjadi start READ alas, tinggi luas = 0.5 * alas * tinggi PRINT tuas stop Penyajian Algoritma dengan flowchart Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung, Dengan menggunakan flowchart akan memudahkan kita untuk melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah. Di samping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim suatu proyek. Untuk membuat flowchart dapat dilakukan langkah-langkah sebagai berikut: 1. Bagan alir sebaiknya digambar dari atas ke bawah dan mulai dari bagian kiri dari suatu halaman, 2, Kegiatan di dalam bagan alir harus ditunjukkan dengan jelas. 3. Harus ditunjukkan dari mana kegiatan akan dimulai dan dimana akan berakhirnya (diawali dari satu titik START dan diakhiri dengan END). 4, Masing-masing kegiatan di dalam bagan alir sebaiknya digunakan suatu kata yang mewakili suatu pekerjaan, misalnya: © Hitung percepatan © Update nilai waktu t 5. Masing-masing kegiatan di dalam bagan alir harus di dalam urutan yang semestinya 6. Kegiatan yang terpotong dan akan disambung di tempat lain harus ditunjukkan dengan jelas menggunakan simbol penghubung. Halaman: 8 dari 80 7. Gunakanlah simbol-simbol bagan alir yang standar. Secara garis besar, Ada 3 bagian utama dalam flowchart Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart Kegui CONNECTOR flowchart yang berada pada halaman berbeda TERMINATOR Permulaan/akhir program GARIS ALIR (FLOW — Arah aliran program <> PREPARATION a ro Proses perhitungan/proses BOSE pengolahan data INPUTOUTPUT _| Proses input/output data, DATA parameter, informasi PREDEFINED PRooESS GuE | Permulaan sub program/proses || PRocnans menjalankan sub program Perbandingan pornyataan, <> penyeleksian data yang DECISION memberikan pilihan untuk Tangkah selanjutnya , ONPAGE Penghubung bagian-bagian O Oe eE OR flowchart yang berada pada satu halaman C OFF PAGE Penghubung bagian-bagian Halaman: 9 dari 80 Algoritma untuk menghitung luas segitiga yang telah disajikan dengan bahasa natural (deskripti’ maupun dengan pseudocode dapat pula disajikan dengan diagram alir (flowchart). Dengan mengikuti algoritma yang telah dibuat dan dengan melihat simbol- simbol flowchart, maka algoritma untuk menghitung luas segitiga dapat disajikan sebagai berikut. Gambar 3: flowchart menghitung luas segitiga TUGAS DAN LATIHAN 1 Mengapa scbelum membuat sebuah program di komputer harus ditulis algoritmanya terlebih dahulu? Buatlah algoritma untuk menenetukan apakah suatu bilangan temasuk bilangan prima, Sajikan algoritma Saudara dengan deskriptif, pseudocode, dan flowchart. Buatlah sebuah algoritma untuk mengkonversikan nilai temperatur dari Celcius ke Fahrenheit. Sajikan algoritma Saudara dengan deskriptif, pseudocode, dan flowchart. Halaman: 10 dari 80

Anda mungkin juga menyukai