of 24 /24
S1 Teknik Informatika-Unijoyo 1 Algoritma Pemrograman Pertemuan Ke-1 (Pengantar Algoritma) :: Noor Ifada ::

Algoritma pemrograman 01

Embed Size (px)

DESCRIPTION

algoritma pemerograman

Text of Algoritma pemrograman 01

  • 1. Algoritma PemrogramanPertemuan Ke-1(Pengantar Algoritma):: Noor Ifada ::S1 Teknik Informatika-Unijoyo 1

2. Sub Pokok BahasanPendahuluanArti Penting AlgoritmaProgram Terstruktur danAlgoritmaNotasi AlgoritmaS1 Teknik Informatika-Unijoyo 2 3. Pendahuluan Komputer adalah alat elektronik untuk mengolahdata dengan menggunakan program tertentuuntuk menghasilkan informasi Fungsi komputer adalah untuk pengolahan data(data processing), sehingga komputer juga disebutsebagai pengolah data elektronik. Proses daripengolahan data dengan menggunakan komputerdisebut sebagai Pengolahan Data Elektronik (EDPatau Electronic Data Processing) Di dalam komputer, terdapat bagian yang disebutsebagai Software (Perangkat Lunak). Perangkatlunak ini merupakan program-program yangdiperlukan untuk menjalankan bagian darikomputer yang disebut sebagai Hardware(Perangkat Keras)S1 Teknik Informatika-Unijoyo 3 4. Macam-macam perangkat lunak: Operating System (Sistem Operasi), adalahprogram komputer yang diperlukan untuk mengatursemua yang kegiatan sistem komputer., sejakkomputer mulai dihidupkan hingga komputer siapdimatikan. Komputer mengendalikan penggunaansemua perangkat yang dipasang di komputer. Contohoperating system adalah UNIX, ZENIX, MS DOS, WinNT. Language Software (Bahasa Komputer), adalahbahasa yang digunakan untuk membuat programkomputer. Karena digunakan untuk membuatprogram komputer, bahasa komputer sering disebutjuga dengan bahasa pemrograman (programminglanguage). Application Software (Program Aplikasi), yaituprogram yang diterapkan pada suatu aplikasitertentu. Komputer diciptakan untuk memenuhibeberapa kebutuhan, sehingga program aplikasi yangdibuat pun bermacam-macam, di antaranya programaplikasi untuk mengolah kata, mengolah data,menggambar, mengaransir musik dan lainsebagainya.S1 Teknik Informatika-Unijoyo 4 5. Bahasa pemrograman komputer digunakan sebagai saranakomunikasi untuk menjembatani hubungan antara manusiadan komputer. Ia merupakan suatu prosedur atau tata carapenulisan program, yang dalam hal ini adalah kata,ekspresi, pernyataan atau kombinasi semuanya yangdisusun dan dirangkai dan berupa urutan langkah-langkahuntuk menyelesaikan masalah. Faktor-faktor yang harus diperhatikan dalam bahasapemrograman: Sintaksis, yaitu tata bahasa yang digunakan dalamprogram apabila terjadi kesalahan sintaksis, maka akanlangsung terlihat, karena komputer akan menampilkanpesan salah. Semantik, yaitu maksud yang dikandung dalam setiappernyataan yang ada dalam program kesalahansemantik biasanya terjadi karena kekurangpahamanterhadap setiap pernyataan yang dituliskan pada program,sehingga walaupun program berjalan tetapi tidak sepertiyang dikehendaki. Kebenaran logika, yaitu berhubungan dengan benaratau tidaknya urutan pernyataan yang ada di dalamprogram bentuk kesalahan kebenaran logikamerupakan kesalahan dalam mengimplementasikanmasalah yang dihadapi, sehingga program yang ditulistidak benar secara logika.S1 Teknik Informatika-Unijoyo 5 6. Pengelompokan bahasa pemrograman: Bahasa pemrograman tingkat rendah (lowlevel programming language) Biasanya sulit dipahami karena berhubungan denganmesin komputer itu sendiri atau biasa disebutsebagai bahasa mesin. Contoh : bahasa Assembler. Bahasa pemrograman tingkat tinggi (highlevel programming language) Merupakan bahasa pemrograman yang memakaikata-kata dan pernyataan yang mudah dimengertimanusia, meskipun masih jauh berbeda denganbahasa manusia sesungguhnya. Contoh : Bahasa Pascal, C, C++S1 Teknik Informatika-Unijoyo 6 7. Keterangan-keterangan yang diperlukandalam penyusunan program komputer :1. Data apa yang akan diproses/tersedia data inidiperlukan untuk menentukan tipe data yang diperlukanoleh program komputer.2. Bagaimana data dimasukkan keterangan ini diperlukanuntuk menentukan jenis instruksi masukan yang akandigunakan.3. Dimana data diletakkan keterangan ini diperlukanuntuk menentukan variabel-variabel yang harus disediakandalam program.4. Operator apa saja yang dapat digunakan keteranganini diperlukan untuk menentukan operator-operator yangdiperlukan oleh program.5. Bagaimana urutan instruksi disusun keterangan inidiperlukan untuk menentukan jenis proses yang diperlukan(urutan, kondisional/percabangan, pengulangan)6. Bagaimana menyampaikan informasi hasil pengolahan keterangan ini diperlukan untuk menentukan jenisinstruksi keluaran yang akan digunakan.S1 Teknik Informatika-Unijoyo 7 8. Suatu program komputer dikatakan baikjika ia memenuhi kriteria-kriteria: Terintegrasi dan memiliki logika yangjelas Efisien terhadap waktu dan penggunaanmemori Menerapkan prinsip modularitas Memiliki keluwesan dalam penggunaan KesederhanaanS1 Teknik Informatika-Unijoyo 8 9. Arti Penting AlgoritmaTahapan-tahapan untuk memecahkan suatu persoalan denganmenggunakan komputer sebelum diimplementasikan dalamsebuah program:1)Menganalisa dan memahami suatu permasalahan yangbertujuan untuk menemukan kemungkinan penyelesaianterhadap permasalahan.2)Merancang algoritma yang merupakan pola pikirterstruktur yang berisi tahap-tahap penyelesaian suatupermasalahan3)Membuat program komputer yaitu mengubah kode darialgoritma yang telah dibuat ke dalam pernyataan-pernyataanyang sesuai dengan bahasa pemrograman yang dipakai[coding]4)Menjalankan program secara rutin untuk menemukankesalahan-kesalahan dalam penulisan suatu pernyataandalam program [testing] dan menemukan kesalahan-kesalahandalam program dan kesalahan yang ditemukandiperbaiki sampai tidak muncul kesalahan lagi [debugging]5)Melakukan dokumentasi terhadap setiap langkah yangdilakukan [documentation]Keterangan: Tahap 1 dan 2 merupakan fase penyelesaian masalah (problem solving phase) Tahap 3, 4 dan 5 termasuk dalam fase implementasi (implementation phase)S1 Teknik Informatika-Unijoyo 9 10. Kriteria yang harus dipenuhi olehprosedur penyelesaian masalah denganalgoritma: Setiap langkah harus bersifat pasti atautertentu (definite) Terdapat setidaknya satu keluaran(output) Terstruktur dan sistematis Memiliki kriteria untuk menghentikanprosesS1 Teknik Informatika-Unijoyo 10 11. Algoritma yang baik harus bersifat efisienwaktu dan penggunaan memori komputer.Hasil akhir fase penyelesaian masalah adalahpenyelesaian dalam bentuk algoritma. Tujuan algoritma adalah memberikanpetunjuk tentang langkah-langkah logikapenyelesaian masalah dalam bentuk yangmudah dipahami nalar manusia sebagai acuanyang membantu dalam mengembangkanprogram komputer. Pemahaman terhadapalgoritma akan mencegah sejak dinikemungkinan terjadinya kesalahan logikapada program komputer yang dikembangkan.S1 Teknik Informatika-Unijoyo 11 12. Syarat-syarat yang harus dipenuhi olehsuatu algoritma:1) Logika prosedur pada algoritma harus cukupmudah dipahami nalar manusia2) Validitas prosedur pada algoritma dapatditelusuri dengan mudah3) Tidak menimbulkan kerancuan interpretasibagi orang lain4) Prosedur pada algoritma harus cukup mudahdikonversi ke program komputer5) Prosedur pada algoritma tidak terpengaruhatau tergantung pada bahasa pemrogramanapa punS1 Teknik Informatika-Unijoyo 12 13. Program Terstruktur danAlgoritma Program terstruktur memberikan beberapakeuntungan, antara lain : Penulisan program menjadi lebih teratur Program tersusun secara sistematis Program tersusun secara terstruktur Lebih mudah dipahami Urutan atau alur proses dalam programmenjadi sederhana dan mudah dipahami Contoh bahasa pemrograman terstruktur adalahPascal, C, C++.S1 Teknik Informatika-Unijoyo 13 14. Komponen utama komputer : piranti masukan dan piranti keluaran (I/O devices) peralatan-peralatan yang digunakan untuk memasukkan dataatau program ke dalam memori dan peralatan-peralatan yangdigunakan untuk menampilkan hasil dari suatu operasi. unit pemroses utama (CPU = Central Processing Unit) unit yang mengerjakan seluruh operasi-operasi dasarseperti operasi perhitungan, operasi perbandingan, operasimembaca dan operasi menulis memori komponen yang berfungsi sebagai penyimpan.Yang disimpan di dalam memori adalah program (berisioperasi-operasi yang akan dikerjakan oleh CPU) dan data atauinformasi yang telah diolah oleh operasi-operasiS1 Teknik Informatika-Unijoyo 14PirantiMasukanMemoriPirantiKeluaranUnit Pemroses Utama(CPU) 15. Pengelompokan struktur proses dalam algoritma: Proses urutan (sequence) Prosedur proses dalam algoritma yang dilakukansecara urut langkah demi langkah. Sebuah urutan terdiri dari satu atau lebih instruksi.Tiap instruksi dilaksanakan secara berurutan sesuaidengan urutan pelaksanaan, artinya suatu instruksiakan dilaksanakan setelah instruksi sebelumnya telahselesai dilaksanakan. Proses penyeleksian (selection) Suatu instruksi dikerjakan jika suatu kondisi tertentudipenuhi. Dengan adanya proses ini maka adakemungkinan beberapa jalur aksi yang berbedaberdasarkan kondisi yang ada. Proses pengulangan (looping) Suatu proses melakukan eksekusi suatu programsecara berulang-ulang pada suatu blok instruksitertentu yang terkendali.S1 Teknik Informatika-Unijoyo 15 16. Notasi Algoritma Notasi algoritma bukan merupakan notasi bahasapemrograman. Namun notasi ini dapat diterjemahkanke dalam berbagai bahasa pemrograman. Penotasianalgoritma harus dilakukan sedemikian hingga mudahdibaca dan dimengerti. Meskipun notasi algoritmatidak berbentuk baku seperti notasi bahasapemrograman, namun konsistensi terhadap notasiperlu diperhatikan untuk menghindari terjadinyakekeliruan. Bentuk notasi algoritma: Uraian deskriptif Diagram-alir (flowchart) PseudocodeS1 Teknik Informatika-Unijoyo 16 17. Uraian Deskriptif Dengan notasi bergaya uraian, deskripsi setiap langkahdijelaskan dengan bahasa yang gamblang. Prosesdiawali dengan kata kerja seperti baca atau membaca,hitung atau menghitung, bagi atau membagi,ganti atau membagi, dan sebagainya, sedangkanpernyataan kondisional dinyatakan dengan jika ... maka.... Contoh menyelesaikan permasalahan menghitungluas dan keliling suatu lingkaranAlgoritma Hitung_Luas_dan_Keliling_LingkaranDESKRIPSI: Masukkan jari-jari lingkaran (r) Hitung luas lingkaran dengan rumus L = p * r2 Hitung keliling lingkaran dengan rumus K = 2 * p * r Tampilkan luas lingkaran Tampilkan keliling lingkaranS1 Teknik Informatika-Unijoyo 17 18. Diagram Alir (flowchart) Flowchart adalah gambaran dalambentuk diagram alir dari algoritma-algoritmadalam suatu program, yangmenyatakan arah alur programtersebut. Contoh menghitung luas dankeliling lingkaran yang algoritmanyadinotasikan dalam bentuk diagram alir(flowchart)MULAIPhi = 3,1 4Baca rL = Phi * r * rK = 2 * Phi * rCetak LuasLingkaran (L)Cetak KelilingLingkaran (K)SELESAIS1 Teknik Informatika-Unijoyo 18 19. Simbol-simboldalam diagramalir:S1 Teknik Informatika-Unijoyo 19 20. Pseudocode notasi yang menyerupai notasi bahasapemrograman tingkat tinggi, khususnyaBahasa Pascal dan C. umumnya mempunyai notasi yanghampir mirip untuk beberapa instruksidalam beberapa bahasa pemrograman,seperti notasi if-then-else, while-do,repeat-until, read, write, dansebagainya.S1 Teknik Informatika-Unijoyo 20 21. Contoh menyelesaikan permasalahan menghitung luas dankeliling suatu lingkaran dengan menggunakan bentukpseudocode:Algoritma Hitung_Luas_dan_Keliling_Lingkaran{ Dimasukkan nilai jari-jari lingkaran (r). Carilah dan cetakluas dan keliling lingkaran tersebut dengan menggunakan rumusL=phi*r*r dan K=2*phi*r }DEKLARASI:const phi = 3.14r, L, K = realDESKRIPSI:read(r)L phi * r * rK 2 * phi * rwrite(Luas lingkaran = ,L)write(Keliling lingkaran = ,K)S1 Teknik Informatika-Unijoyo 21 22. Summary Algoritma merupakan pola pikir yang terstruktur untuk menyelesaikansuatu masalah. Dalam algoritma ini berisi langkah-langkah yangdiperlukan oleh seorang pemrogram untuk membuat sebuah program.Jadi dapat dikatakan bahwa algoritma adalah himpunan berhinggalangkah-langkah atau prosedur-prosedur logika yang harusdilaksanakan untuk menyelesaikan suatu masalah yang berorientasipada pemrograman komputer. Notasi uraian deskriptif bagus jika digunakan dalam algoritma yangpendek, akan tetapi jika digunakan dalam algoritma yang besar, notasiini tidak efisien. Selain itu, perkonversian notasi algoritma ke dalamnotasi bahasa pemrograman akan relatif sukar. Diagram alir lebih menggambarkan aliran instruksi di dalam programsecara visual daripada memperlihatkan struktur program. Tidak seperti bahasa pemrograman yang direpotkan dengan tanda titikkoma (semicolon), indeks, format keluaran, kata-kata khusus dansebagainya, sembarang versi pseudocode dapat digunakan asalkanperintahnya tidak membingungkan pembaca. Keuntunganmenggunakan notasi pseudocode adalah kemudahan mengkonversinyaatau mentranslasinya ke notasi bahasa pemrograman, karena terdapatkorespondensi antara setiap pseudocode dengan notasi bahasapemrograman. Korespondensi ini dapat diwujudkan dengan tabeltranslasi dari notasi algoritma ke notasi bahasa pemrograman apapun.S1 Teknik Informatika-Unijoyo 22 23. Tugas Install software aplikasi bahasapemrograman PascalS1 Teknik Informatika-Unijoyo 23 24. Daftar Pustaka Andri Kristanto [2003]. Algoritma danPemrograman dengan C++, Graha Ilmu,Yogyakarta. Jogiyanto HM [1989]. Turbo Pascal, AndiOffset, Yogyakarta. Noor Ifada [2005]. Diktat MatakuliahAlgoritma Pemrograman, Hibah KompetisiA1, Jurusan Teknik Informatika, UniversitasTrunojoyo. Rinaldi Munir [2003]. Algoritma danPemrograman dengan Pascal dan C edisiKedua, Penerbit Informatika, Bandung.S1 Teknik Informatika-Unijoyo 24