You are on page 1of 17
INFORMATIKA Tentang: ALGORITME TENTANG INFORMATIKA Disusun oleh kelompok 2 (dua) Ketua: fhyrani chindi Aulia said Anggota © Muh,juni tsmail © Haerul + Andika Saputra G + Fachry Ahmad G + Anugrah syamdih Dipindai dengan CamScanner DAFTAR ISI KATA PENGANTAR i DAFTAR IST ii BAB1 PENDAHULUAN 1 1.1. LATAR BELAKANG 1 1.2. TUJUAN 1 BAB2 PEMBAHASAN 2.1. PENGERTIAN ALGORITMA DAN PEMROGRAMAN 2 2.2. DEFINISI ALGORITMA 3 2.2.1. ALGORITMA MERUPAKAN JANTUNG ILMU INFORMATIKA 3 2.2.2. MEKANISME PELAKSANAAN ALGORITMA OLEH PEMROSES 4 2.2.3. BELAJAR MEMPROGRAM DAN BELAJAR BAHASA PROGRAM = 4 2.24. ALGORITMA 5 2.2.5, NOTASI ALGORITMA INDEPENDEN TERHADAP_ BAHASA. PEMROGRAMAN DAN MESIN KOMPUTER 7 2.3. ATURAN PENULISAN ALGORITMA, u BAB3 PENUTUP 3.1. KESIMPULAN 16 3.2. REFERENSI 16 ii & Dipindai dengan CamScanner 1. 12. BABI PENDAHULUAN LATAR BELAKANG Pesatnya teknologi, terutama teknologi komputer sudah tak bisa dipungkiri lagi, bagi yang mengikuti perkembanganaya, ia tidak akan dipandang sebelah mata Sebaliknya, bagi yang tidak mengikuti perkembangannya, bersiaplah untuk mundur secara suka rela dari panggung kompetisi. Ibarat wabah, teknologi komputer sudah ‘menyusupi hampir semua bidang kehidupan manusia. Dari pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan, supermarket, minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hampir semuanya mengenal komputer. Saat ini, yang mempunyai lingkungan yang semakin las dan banyak diminati, juga dapat digunakan untuk menghasilkan wang adalah dunia pemrograman komputer. Dalam dunia pemrograman komputer, dikenal algoritma dan banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain.Oleh karena itulah, yang akan dibahas dalam makalah ini adalah Algoritma dan Pemrograman. TUJUAN Makalah ini disusun dengan tujuan sebagai sarana untuk mengikuti pesatnya perkembangan teknologi Komputer di masa sekarang ini, salah satunya di dunia pemrograman yang sekarang semakin banyak diminati. Selain itu, tujuan disusunnya makalah ini adalah untuk memenuhi tugas untuk memperbaiki nilai UTS. Dipindai dengan CamScanner BAB2 PEMBAHASAN 2.1. PENGERTIAN ALGORITMA DAN PEMROGRAMA’ Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah yang aneh, Orang hanya menemukan kata d/gorism yang berarti proses menghitung dengan angka arab. Anda dikatakan 4/gorist jika anda menghitung menggunakan Angka Arab. Para abi babasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para abli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja‘far Muhammad Ibnu Musa Al- Khuyarizini, Al-Khuyarizmi dibaca orang barat menjadi /gorism, Al-Khuwarizmi, menulis buku yang berjudul Kitab Al Jabar Wal-Mugabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (d/gebra). Perubahan kata dari d/gorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan Arithmetic. sehingga akhiran -sm berubah menjadi rm, 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, Bahasa Pemrograman mempakan notasi_ yang dipergunakan untuk mendeskripsikan proses komputasi dalam format yang dapat dibaca oleh komputer dan manusia, Proses komputasi umumaya didefinisikan secara formal menggunakan konsep matematika dari Mesin Turing. Pada dasarnya bahasa Pemrograman dirancang untuk ‘memfasilitasi komunikasi antara manusia dengan komputer. Sebuah bahasa pemrograman disebut Turing Complete jika dapat dipergunakan untuk mendeskripsikan semua komputasi yang dapat dilakukan Mesin Turing, yaita memiliki variable integer dan operator aritmatik, pernvataan penugasan, pernyataan sekuensial, pernyataan seleksi, dan pernyataan iterasi. 2.2. DEFINISI ALGORITMA “Algorioma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis". Kata Logis merupakan kata kunci dalam Algoritma, Langkah-langkah dalam Algoritmaharus logis dan harus dapat ditentukan bernilai salah atau benar. Dipindai dengan CamScanner 2.2.1. Algoritma Merupakan Jantung Iimu Informatika Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu computer yang diacu dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari- ‘haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara ‘membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma, Pada setiap resep selalu ada urutan langkah-lankab membuat ‘masakan, Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Tbu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa manusia, Komputer, robot atau alat alat elektronik lainnya. Pemroses melakukan suatu proses dengan melaksanakan atau “mengeksckusi” algoritma yang menjabarkan proses tersebut. ‘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, 2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut, 2.2.2, Mekanisme Pelaksanan Algoritma Oleh Pemroses Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma hasrus ditulis dalam notasi babasa pemrograman sehingga dinamakan program. Jadi program adalah prvujudan. atau implementasi teknis Algoritma yang ditulis dalam bahasa pemrogaman tertentu sehingga dapat dilaksanakan oleh komputer, 2.2.3. Belajar Memprogram Dan Belajar Bahasa Pemrograman 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, Dipindai dengan CamScanner Sedangakan belajar bahasa pemrograman berarti belajar memakai suatu bahasa aturan-aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian compiler-nya, dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja Sampai saat ini terdapat puluhan bahasa pemrogram. Yang dapat dibedakan berdasarkan tujuan dan fungsinya. Diantaranya adalah : Programming Language Paradigm l Imperative Declarative Prosedural C, | | ObjOriented Parallel Logie Functional Database Pascal, Processing protog | | ESPAPE. SOL Foxteaa, ‘Ada, Pascal S, SCHEME Basie Tava, seam, Smit Linda Bulle a, Belajar Memprogram © Belajar memprogram + belajar bahasa pemrograman * Belajar memprogram : belajar tentang strategi pemecahan masalah, metodologi dan sistematikapemecahan —masalah__kemudian ‘menuliskannya dalam notasi yang disepakati bersama, © Belajar memprogram : bersifat pemahaman persoalan, analisis dan sintesis, © Belajar memprogram, titik berat : designer program. b, Belajar Bahasa Pemrograman © Belajar babasa pemrograman : belajar memakai suatu bahasa pemrograman, aturan sintaks, tatacara untuk memanfaatkan instruksi yang spesifik untuk setiap bahasa. © Belajar bahasa pemrograman, titik berat : coder, Dipindai dengan CamScanner Produk yang dihasilkan Pemrogram : ‘Program dengan rancangan yang baik (metodologis, sistematis). ‘© Dapat dieksekusi oleh mesin. ‘© Berfungsi dengan benar. ‘© Sanggup melayani segala kemungkinan masukan. ‘* Disertai dokumentasi ‘© Belajar memprogram, titi berat : designer program. 2.2.4. Algoritma vb. Aksi © -kejadian yang terjadi pada selang waktu terbatas (dimulai saat TO dan berakhir pada saat T1) © Menghasilkan efek netto yang terdefinisi dengan baik dan direncana Contoh : ‘© Ibu Tati mengupas kentang untuk mempersiapkan makan malam (Iuas rang lingkupnya). © Karena ruang lingkup Iuas, maka harus didefinisikan keadaan awal dan efek netto yang direncanakan ( Initial State dan Final State), © Initial State (keadaan awal) : TO kentang sudah ada dikantong kentang, dan ditaruh di rak dapur dimana ibu Tati akan mengupasnya, Final State (keadaan akhir) : T1 kentang dalam keadaan terkupas di panci, sip untuk dimasak dan kantong kertasnya harus dikembalikan ke rak lagi. © Kejadian ; urut-urutan dari beberapa aksi yang terjadi secara berurutan. © Efek kumulatif dari semua aksi yang terjadi menjadi efek getto, dari kejadian. © Penggolongan suatu kejadian menjadi aksi adalah relatif tergantung dari sudut pandang. Contoh mengupas kentang dapat dijelaskan ~ Ambil kantong kentang dari rak ~ Ambil panei dari almari - Kupas kentang - Kembalikan kantong kentang ke rak Dipindai dengan CamScanner © Contoh lain Gika tidak dipandang perlu untuk menjelaskan kantong ‘kentang diambil dari rak sebelum ambil panci) ~ Ambil kantong kentang dari rak dan ambil panci dari almari ~ Kupas kentang ~ Kembalikan kantong kentang ke rak Jika esok hari ibu Tati mengupas kentang lagi untuk makan malam juga, dan kita mengamati hal-bal yang sama, apakah hal tsb bisa disebut sama? Ini tergantung jawabannya bisa sama bisa tidak. Tidak karena ibu Tati tidak mungkin mengupas kentang yang sama dengan kemarin. ‘Sama karena kemiripan pola yang dilakukan, 2.2.5. Notasi Algoritma Independen Terhadap Bahasa Pemrograman Dan Mesin Komputer Notasi Algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman, Analoginya sama dengan resep membuat kue. Sebuah resep dapat ditulis dalam bahasa apapun dan hasilnya akan sama asalkan semua aturan pada resep diikuti, Mengapa demikian ? Karena setiap juru masak (sebagai pemroses) dapat melakukan operasi dasar yang sama, seperti mengocok telur, menimbang berat gula, dan lain sebagainya Demikian juga halnya dengan komputer. Meskipun setiap komputer berbeda teknologinya, tetapi secara umum semua komputer dapat melakukan operasi- operasi dasar dalam pemrograman seperti operasi pembacaan data, operasi perbandingan, operasi aritmatika, dan sebagainya, Perkembangan teknologi Komputer tidak mengubah operasi-operasi dasar itu, yang berubah hanyalah kecepatan, biaya, atau tingkat ketelitian. Pada sisi lain setiap program dalam bahasa tingkat tinggi selalu diterjemahkan kedalam bahasa mesin sebelum akhimya dikerjakan oleh CPU. Setiap instruksi dalam bahasa mesin menyajikan operasi dasar yang sesuai, dan menghasilkan efek netto yang sama pada setiap komputer. Pemrograman Prosedural Algoritma berisi urutan langkab-langkah penyelesaian masala. Ini berarti Algoritma adalah proses yang procedural. Dipindai dengan CamScanner Definisi Prosedural menurut Kamus Besar Bahasa Indonesia : 1. Tahap-tabap kegiatan untuk menyelesaikan suatu aktivitas. 2. Metode langkah demi langkah secara eksak dalam memecahkan suatu masalah. Pada pemrograman procedural, program dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi terdiri atas runtutan (sequence) instruksi yang dilaksanakan satu per satu secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah karena adanya pencabangan kondisional. Data yang disimpan di dalam memori dimanipulasi oleh instrusi secara beruntun atau procedural, Paradigma pemrograman seperti ini dinamakan pemrograman procedural, Bahasa-bahasa tingkat tinggi seperti Cobol, Basic, Pascal, Fortran dan C ‘mendukung kegiatan pemrograman procedural, karena itu mereka dinamakan juga bahasa procedural. Selain paradigma pemrograman procedural, ada lagi paradigma yang lain yaity pemrograman berorientasi objek (Object Oriented Programming). Paradigma pemrograman ini merupakan trend baru dan sangat populr akhir-akhir ini Paradigma pemrograman yang lain adalah pemrograman fungsional, pemrogramn deklaratif dan pemrograman konkuren, Pada kesempatan ini penulis hanya menyajikan paradigma pemrograman procedural saja. Keuntungan pemakaian algoritma adalah: logika pemecahan masalah dapat dibuat bertingkat (mulai dari global menuju terperinci), algoritma merupakan bentuk fleksibel untuk diterapkan keberbagai bahasa pemrograman. Jadi Algoritma adalah: 1. penyusunaan, aspekproses logika dari suatu pemecahan masalah tanpa ‘melihat karakteristik bahasa pemrograman yang akan digunakan. Unutan notasi logika yang merupakan hasil analiss dan rancangan sistematik dari strategi pemecahan maslah, untuk menggambarkan uratan Jangkah kerja yang jika dikerjakan akan membawa ketujuannya. 3. Unutan logika langkah kerja untuk meyelesaikan suatu masalah. Contoh algoritma, dalam kehidupan sehari-hari, misalnya: menjahit pakaian, membuat kue, jadwal harian, panduan merakit komputer, dan lain- lain. Dipindai dengan CamScanner Beberapa notasi yang digunakan dalam penulisan algoritma ‘Notasi I: untaian kalimat deskriptif’ 2. Notasi Il: diagram alir (flowy chart) 3. Notasi III : psudo-code bol-simbol program flowehart, Ne ‘Simbal Gambar Keterangan 7 | Terminal akan untuk menunjukkan awal dan CD | air cateogem 2 | Persiapan ‘Digunakan uniuk memberkan nial awal [poset variate ‘3 | Pengolahan/Proses Digunakan untuk pengolahan arithmatika ddan pemindahan data =| Repatusan ‘Digunakan untuk —mewakil —operasi < perbandingan logika S| inpatOuipat ‘Digunakan untuk menyatavan proses LJ | epstbaca an eupuruls 6 | Garis ‘Digunakan untuk menyatakan uritan polaksanaan, atau alur proses Contoh masalah : menghitung luas segiempat, Notasil: Algoritma Luas_Segiempat Menghitung luas segiempat dengan memasukkan nilai lebar dan panjang segiempat Deklarasi Luas,panjang.Jebar : bilangan bulat Deskripsi 1. Masukkan nilai lebar dan panjang 3. Tampilkan Luas Hitung luas sama dengan panjang kali lebar Dipindai dengan CamScanner Notasi IT : Input Panjang, lebar Re Luas = panjang * lebar in Notasi IIT: Algoritma Luas_Segiempat Menghitung luas segiempat dengan memasukkan nilai lebar dan panjang segiempat Deklarasi Luas.panjang,lebar :integer Deskripsi Inputin) Luas= panjang * lebar Output(Luas) 2.3.ATURAN PENULISAN ALGORITMA Algoritma berisi langkah-langkah penyelesaian masalah. Langkab-langkah tersebut dapat ditulis dalam notasi apapun, asalkan mudah dibaca dan dimengerti, karena memang tidak ada notasi baku dalam penulisan algoritma. Tiap orang dapat membuat aturan penulisan dan notasi algoritma sendiri. Agar notasi algoritma mudah ditranslasi ke dalam notasi bahasa pemrograman, maka sebaiknya notasi algoritma tersebut berkorespaden dengan notasi bahasa pemrograman secara umum. Dipindai dengan CamScanner 2.4.Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : * Judul (Header) © Kamus * Algoritma Pada setiap bagian tersebut apabila akan dituliskan komentar mengenai setiap bagian tersebut dituliskan diantara tanda kurung kuawa contoh | Komentar }. Notasi algoritmis yang dituliskan diantara tanda ini tidak akan dieksekusi oleh program, Contoh : Judul { Komentar mengenai Algoritma seperti cara kerja program, Kondisi awal dan kondisi akhir dari algoritma | Kamus { Pada bagian ini. didefinifikan nama konstanta, nama variable. nama prosedur dan nama fungsi } Algoritma Pada bagian ini algoritma dituliskan. Semua teks yang dituliskan tidak diantara tanda kurung kurawa akan dianggap sebagai notasi algoritma yang akan berpengaruh terhadap kebenaran algoritina } Judul (Header) Judul adalah bagian teks algoritma yang digunakan sebagai tempat mendefinisikan nama dengan menentukan apakah teks tersebut adalah program, prosedur, fungsi. Setelah judul disarankan untuk menuliskan spesifikasi singkat dari teks algoritma tersebut. Nama algoritma sebaiknya singkat namun cukup menggambarkan apa yang akan dilakukan oleh algoritma tersebut Conton = Program Luas_Kubus -— {Judul Algoritma} { Menghitung Ivas kubus untuk ukuran sisi yang dibaca dari piranti masukan alu mencetak hasilnya kepiranti keluaran} + {Spesifikasi Algoritma} Catatan Untuk memisahkan antara kata dalam judul algoritma menggunakan tanda bukanlah suatu keharusan. Anda dapat menuliskan Lyasl.ingkaran atau Luas_Lingkaran. Tetapi sebaiknya anda tidak menggunakan spasi “ * untuk ‘memisahkan antara kata di dalam nama algoritima, Dipindai dengan CamScanner Kamus (Deklarasi) ‘Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan «Nama type # Nama konstanta © Nama variable © Nama fungsi © Nama prosedur ‘Semua nama tersebut baru dapat dipakai di dalam algoritma jika telah didefinisikan terlebih dahulu didalam kamus. Penulisan sekumpulan nama dalam kamus sebaiknya dikelompokan menurut jenis nama tersebut. Nama variabel belum terdefinisi nilainya ketika didefinisikan. Pendefinisian nama konstanta sekaligus memberikan harga konstanta tersebut, pendefinisian nama fungsi dilakukan sekaligus dengan domain / range serta spesifikasinya. Pendefinisian nama prosedur sekaligus dengan pendefinisian parameter (jika ada) dan spesifikasi prosedur (kondisi awal “Initial, State”, Kondisi akhir “ Final State” dan proses yang dilakukan). Contoh : Kamus {Nama type, hanya untuk type yang bukan type dasar} type jam: {Type jam terdiri dari 3 masukan yaitu “hh” sebagdi jam. “mm” sebagai menit dan “ss” sebagai detik} (Nama konstanta, harus menyebutkan type dan nilai } {Nama Informasi, menyebutkan type} x.y: Integer {suatu nilai yang bertype bilangan bulat} NMax : real {nilai maksimum yang bestype bilangan real} Nama: string {suatu nilai yang merupakan kumpulan character} P: point {suatw nilai pada bidang kartesian} Cari : Boolean {suatu nilai logika} Algoritma Deskripsi) Dipindai dengan CamScanner Algoriima adalah bagian inti dari suatu algoritma yang berisi instruksi atau pemanggilan aksi yang telah didefinisikan. Komponen teks algoritima, dalam pemrograman procedural dapat berupa : © Instruksi dasar seperti input/output, assignment # Sequence (runtutan) * Analisa kasus © Perulangan Setiap langkah algoritma dibaca dari “atas” ke awah”, Unutan deskripsi penulisan menentuan urutan langkah pelaksanaan perintah, Contoh : \Algoritma input (c,d) {menerima masukan 2 bilangan c dan d} if

You might also like