ALGORITMA Teknik komputasi adalah ilmu tentang alat (biasanya sebuah komputer), metode (yang disebut algoritma) dan teori (bukti matematis bahwa komputasi memberi hasil yang benar) yang diperlukan untuk melaksanakan komputasi tersebut. TEORI KOMPU TASI METODE ALAT Untuk menyelesaikan suatu persoalan, seorang teknisi harus memperhatikan interaksi dari alat (komputer yang digunakan), metode (algoritma), dan sifat unik dari soal yang dihadapi. Soal-soal memiliki tingkat kesulitan yang berbeda-beda: ada soal yang relatif sangat gampang, ada yang sulit, tetapi juga ada soal yang sangat sulit. Dalam pelaksanaannya, algoritma tersebut masih harus ditulis dalam sebuah program (dalam suatu bahasa komputer) untuk diinputkan kepada komputer untuk dilaksanaan. Pada dasarnya algoritma berupa deretan pernyataan yang sengaja dikomunikasikan kepada komputer sebagai gagasan pemecahan sebuah persoalan. Algoritma merupakan sarana seseorang untuk mengkomunikasikan gagasan kepada komputer, agar komputer membantu orang itu dalam menyelesaikan persoalan dalam dunia nyata. Disini komputer berperan sebagai agen pembantu penyelesaian persoalan. Langkah2 dalam membuat S/W MENDEFINISIKAN MASALAH DAN MENGANALISANYA MENCARI SOLUSI (MEREALISASIKAN) DESAIN ALGORITMA DAN FLOWCHART MENULIS PROGRAM TEST KEBENARAN PROGRAM DOKUMENTASI ARSIP Merealisasikan S/W Start Desain Algoritma & Flowchart Menulis program Test Kebenaran Program Dokumentasi Arsip ALGORITMA Algoritma adalah urutan langkah-langkah logika yang menyatakan suatu tugas dalam menyelesaikan suatu masalah, yang nantinya akan diimplementasikan ke dalam suatu bahasa pemrograman. Konsep dasar pemrograman: INPUT Proses Pengolahan Data MEMORI OUPUT INPUT proses untuk memasukkan data ke komputer melalui device (alat input/masukan) yang ada. Alat input misalnya : keyboard, mouse, scanner dll. Program melakukan proses membaca data yang akan diolah dari device tersebut. PROSES PENGOLAHAN DATA proses mengolah data yang diinputkan dengan nenerapkan metode-metode, teknik-teknik, algoritma-algoritma yang ada. Proses ini menghasilkan data output/keluaran yang akan dioutputkan kepada pengguna program. PENYIMPANAN DATA (MEMORI) Bagian ini merupakan proses menyimpan data dalam memori atau device penyimpanan data. Device penyimpanan data seperti disket, hard disk, CD, dll. OUTPUT proses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data melalui device output/keluaran. Alat output seperti : monitor, printer dll. Program melakukan proses mencetak data ke device tersebut. FLOWCHART Biasa disebut Diagram Alir. Salah satu metode untuk merepresentasikan algoritma Mengggunakan simbol-simbol bangun datar beserta anak panah sebagai penunjuk arah proses. SIMBOL NAMA FUNGSI TERMINATOR Permulaan/akhir program GARIS ALIR (FLOW LINE) Arah aliran program PREPARATION Proses inisialisasi/ pemberian harga awal PROSES Proses perhitungan/ proses pengolahan data INPUT/ OUTPUT DATA Proses input/ output data, parameter, informasi PREDEFINED PROCESS (SUB PROGRAM) Permulaan sub program/ proses menjalankan sub program DECISION Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya ON PAGE CONNECTOR Penghubung bagian-bagian flowchart yang berada pada satu halaman OFF PAGE CONNECTOR Penghubung bagian-bagian flowchart yang berada pada halaman berbeda 1. 2. Contoh: Buat algoritma untuk menghitung luas persegi panjang Algoritmanya : Input panjang, lebar persegi panjang Hitung Luas persegi panjang Luas=panjang * lebar 3. Cetak hasil Luas Start Input panjang, lebar Luas = panjang * lebar Cetak Luas End Contoh : Algoritma untuk menentukan bilangan genap atau ganjil Algoritma : 1. Input bilangan Hitung sisa hasil bagi antara bilangan dengan 2 Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil. 2. 3. Start Input Bilanga n Hitung sisa bagi antara bilangan dengan angka 2 Apakah Sisa = 0 T Y Cetak Genap End Cetak Ganjil Contoh : algoritma untuk menghitung uang deposito nasabah di bank A untuk periode tertentu dengan bunga 12% per tahun. Bank tersebut berlaku bunga berbunga dengan rumus sbb : Start U = M * (1+B)L U = uang pada akhir tahun ke L M = uang pada awal tahun B = besar bunga setiap tahun L = panjang tahun Input jumlah uang, lama tahun U = M * (1+B)L Algoritma : 1. Inputkan jumlah deposito, jumlah tahun 2. U = M * (1+B)^L 3. Tampilkan nilai U Cetak nilai hasil End Buat algoritma untuk menghitung nilai faktorial dari suatu bilangan ? Algoritma : 1. Inputkan bilangan x 2. Beri nilai awal hasil =x 3. hasil=hasil * (x-1) 4. x=x-1 5. Lakukan langkah 3 sampai x=1 6. Tampilkan hasil Start Input bilangan x hasil = x hasil = hasil * (x-1) Apakah x=1 ? Y Cetak nilai U End T Latihan Buat algoritma dan flowchart 1. untuk menghitung luas dan keliling lingkaran ? 2. untuk menghitung volume balok? 3. untuk menghitung nilai uang dalam bentuk dollar, yen dan peso. Adapun rumus : dollar = rupiah/8250 yen = rupiah/4000 peso = rupiah/2500 4. untuk menentukan apakah suatu bilangan merupakan bilangan prima atau bukan!