Pengantar Algoritma dan Program

dokumen-dokumen yang mirip
MAKALAH ALGORITMA, PSEUDOCODE DAN FLOWCHART TENTANG YUFI EKO FIRMANSYAH 1 D3 IT B OLEH

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. : Mahasiswa mampu menjelaskan konsep algoritma dan struktur data

Alex Budiyanto.

Modul PVB-POLINEMA V1.0

Algoritma & Flowchart

Pengantar Algoritma & Flow Chart

Algoritma dan Struktur Data

Pendahuluan. program

Materi Pelajaran : Algoritma Pemrograman. Siswa memahami tentang dasar dasar Algoritma Pemrograman

BAB I Pendahuluan. 1.1 Konsep Algoritma

Algoritma. Contoh Algoritma

PENGENALAN ALGORITMA & PEMROGRAMAN P E N G A N T A R T E K N O L O G I I N F O R M A S I ( T I F )

BAB I PENGANTAR ALGORITMA DAN PROGRAM

Algoritma & Pemrograman

Algoritma, Pseudo Code Flow Chart

BAB I PENGANTAR ALGORITMA DAN PROGRAM

Algoritma & Pemrograman #1. Antonius Rachmat C, S.Kom, M.Cs

Pembuatan Algoritma yang Baik Ema Utami STMIK AMIKOM Yogyakarta

ALGORITMA. Bahasa Pemrograman adalah prosedur atau tata cara penulisan program.

Pertemuan 1: Pendahuluan dan Pengantar Algoritma

Pemrograman Dasar Kelas X RPL KONSEP DASAR ALGORITMA

IT234 ALGORITMA DAN STRUKTUR DATA

Algoritma Pemrograman I

Pengantar Algoritma Pemrograman. # Kusnawi, S.Kom, M.Eng#

ALGORITMA berasal dari seorang ilmuwan Muslim bernama Al-Khowarizmi

Pendahuluan. Algoritma

Algoritma & Pemrograman #1

BAB II DASAR-DASAR DAN ATURAN PENULISAN ALGORITMA

Pertemuan 1. Algoritma dan PHP

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. What is Algorithm??

Algoritma Pemrograman Fery Updi,M.Kom

7. Logika dan Algoritma Pemrograman

PENDAHULUAN PEMROGRAMAN KOMPUTER. Mengapa Belajar Pemrograman Komputer?

Algoritma Pemrograman

MATERI SIMKOMDIG PENGERTIAN DASAR LOGIKA DAN ALGORITMA

BAB I Pengantar Algoritma dan Pemrograman

Logika Informatika. Heri Sismoro, M.Kom. STMIK AMIKOM Yogyakarta

PENULISAN ALGORITMA. Algoritma dan Pemrograman. Rajif Agung Yunmar, S.Kom, M.Cs.

@copyright by Emy PENGANTAR ALGORITMA & PROGRAM & PROGRAM PENGERTIAN ALGORITMA NOTASI UNTUK ALGORITMA

Algoritma dan Flowchart. Dasar Programming 1

BAB II LANDASAN TEORI. unik. Orang hanya menemukan kata algorism yang berarti proses menghitung

MATERI TIK KELAS 5 SEMESTER 1 SD KATOLIK SANTA MARIA MAGELANG

BAB I PENGENALAN ALGORITMA

MODUL PRAKTIKUM ALGORITMA DAN PEMOGRAMAN I. Oleh : Wahyu Widodo, S.Kom

I. PENGANTAR ALGORITMA

Teori Algoritma. Literatur

Algoritma & Struktur Data I. Mia Fitriawati, S.Kom,M.Kom. Tujuan Perkuliahan

# ONE PENGANTAR ALGORITMA PEMROGRAMAN

Tunggu. Bicara. Tutup. Stop

Algoritma dan Pemrograman DEPARTEMEN PENDIDIKAN NASIONAL UNIVERSITAS PENDIDIKAN INDONESIA 2008

Belajar Memprogram dan Belajar Bahasa Pemrograman Merupakan Dua Hal yang Berbeda Oleh : Ema Utami, S.Si, M.Kom

Khusnawi, S.Kom, M.Eng

Struktur Data Review Algoritma, Pemrograman. Presented by Rijal Fadilah, S.Si

Algoritma dan Pemrograman. Pertemuan Ke-1 Pengantar Algoritma

Algoritma & Flowchart. Brigida Arie Minartiningtyas, M.Kom

FLOWCHART. Dosen Pengampu : Aullya

SELAMAT MENEMPUH MATAKULIAH

DEFINISI SIMBOL FLOWCHART

Algoritma Dan Pemrograman [algoritma, program, flowchart] Presented by Rijal Fadilah, S.Si

SILABUS MATA KULIAH: LOGIKA ALGORITMA

PENGANTAR ALGORITMA. Brigida Arie Minartiningtyas, M.Kom

Pengenalan Algoritma & Pemrograman

Bahasa Pemrograman- TIS SKS

BAB II NOTASI ALGORITMA

Algoritma & Pemrograman #1. Antonius Rachmat C, S.Kom

Findra Kartika Sari Dewi

Algoritma Dan Pemrograman

ALGORITMA & PEMROGRAMAN 1

Pengertian Dasar Logika Dan Algoritma

MATERI KULIAH ALGORITMA DAN PEMROGRAMAN I

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I

Mengapa Belajar Pemrograman Komputer?

2. Definisi dan Simbol Flowchart

2.3 Algoritma Tidak Berhubungan dengan Bahasa Pemrograman Tertentu

Apa Itu Algoritma? Algoritma berasal dari: ahli

SILABUS MATA KULIAH: LOGIKA ALGORITMA

PARADIGMA VOL. IX. NO. 3, AGUSTUS 2007

MUHAMMAD BURHANUDDIN. Teknik Industri Universitas Borobudur (NIM # )

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

Pengenalan Algoritma

BAB II LANDASAN TEORI. disebut dengan Siklus Hidup Pengembangan Sistem (SHPS). SHPS adalah. dijelaskan langkah-langkah yang terdapat pada SHPS.

ALGORITMA PEMROGRAMAN 1A** (PP :S1-KA) Pertemuan 1 & 2. Ahmad hidayat

ALGORITMA & PEMROGRAMAN

Algoritma dan Flowchart

ALGORITMA DAN DIAGRAM ALIR

Algoritma dan Pemograman 1A. Minggu 2

ALGORITMA & PEMROGRAMAN: Teori dan Praktik dalam Pascal

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1

BAB 3 PERANCANGAN SISTEM. berkaitan dan berinteraksi yang bertanggung jawab dalam memproses input

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-1 - Hal 1

ALGORITMA & PENGEMBANGAN

PENGAMBILAN KEPUTUSAN

MATERI KULIAH ALGORITMA DAN PEMROGRAMAN I (2 SKS)

1: Pengertian Dasar Logika dan Algoritma STRUKTUR DASAR. Oleh: Imana Malia kondou, S.T.

Decission : if & if else

BAB II LANDASAN TEORI

Bahasa Pemrograman dan Flowchart. Adri Priadana

BAB 2 LANDASAN TEORI

Algoritma Perulangan. Kuliah algoritma dan pemrograman

LOGIKA & ALGORITMA PENGERTIAN & CONTOH ALGORITMA. Pertemuan ke 2. 9/24/2017 Logika Algoritma

Transkripsi:

Pengantar Algoritma dan Program Disusun Oleh : Syaiful Hamzah Nasution 1.1 APAKAH ALGORITMA ITU? 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 dengan 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 oleh 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 menjadi hal yang biasa, maka lambat laun kata alghoritm berangsur-angsur dipakai sebagai metode oerhtungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma. 1.2 DEFINISI ALGORITMA Menurut Donal E. Knuth (1973), algoritma dalam pengertian modern mempunyai kemiripan dengan istilah resep, proses, metode, teknik atau prosedur rutin. Menurut Donal E. Knuth algoritma adaah sekumpulan aturan-aturan berhingga yang memberikan sederetan operasioperasi untuk menyelesaikan suatu masalah. Menurut Rinaldi Munir, algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata logis merupakah kata kunci dalam algoritma. Langkah-langkah dalam algorita harus logis dan harus dapat ditentukan bernilai benar atau salah. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algortima adalah : (i) algoritma haruslah benar, artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. (ii) harus diketahui seberapa baik hasil yang dicapai oleh algoritma tersebut, hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang berupa pendekatan). Algoritma yang baik harus mampu memberikan hasili yang sedekat mungkin dengan nilai yang sebenarnya. (iii) efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari dua hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika harus menunggu berjam-jam untuk mendapatkan keluaran, algoritma tersebut biasanya tidak akan dipakai bagi orang yang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang dipakai, maka semakin buruk algoritma tersebut. 1.3 PENGERTIAN PEMROGRAMAN Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberikan rumusan sebagai berikut : Program = algoritma + bahasa pemrograman. 1 Pemrograman Komputer

Pembuatan algoritma mempunyai banyak keuntungan diantaranya sebagi berikut : 1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algortima independen dari bahasa pemrograman dan komputer yang melaksanakannya. 2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. 3. Apapun bahasa pemrogramannya, keluaran (output) yang akan dikeluarkan sama karena algortimanya sama. Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algortima tersebut. Pemroses mengerjakan proses sesuai dengan algorima yang diberikan kepdaanya. Juru masak membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan not-not balok yang ditulis dalam partitur. 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. Berikut diberikan contoh tentang algoritma dalam kehidupan sehari-hari. No. Proses Algoritma Contoh langkah dalam algoritma 1 Membuat Kue Resep Kue Masukkan telur ke dalam wajan, kocok sampai mengembang 2 Membuat pakaian Pola Pakaian Gunting kain dari pinggir kiri bawah ke arah kanan sejauh 5 cm 3 Merakit mobil Panduan Sambungkan kompenen A dengan kompenen B 4 Kegiatan sehari-hari Jadwal harian Pukul 06.00 : mandi pagi Pukul 07.00 : makan pagi Pukul 07.30 : berangkat kuliah Dst.. 5 Mengisi Pulsa dengan Voucher HP Panduan pengisian Gosok kode voucher, tekan *555*1*kode voucher, tekan call 1.4 PENYAJIAN ALGORITMA Penyajian algortima secara garis besar bisa dalam dua bentuk penyajian yaitu : (i) penyajian deskriptif, penyajiaan dengan tulisan naratif. (ii) penyajian dengan diagram alir(flowchart), yaitu penyajian algoritma dengan menggunakan gambar. Contoh penyajian algoritma dalam bentuk deskriptif. Algoritma menentukan suatu bilangan ganjil atau genap. 1. Masukkan sebarang bilangan bulat 2. Bagi bilangan dengan 2 3. Jika sisa hasil bagi sama dengan nol, maka bilangan tersebut genap. Jika sisa hasil bagi sama dengan 1, maka bilangan tersebut ganjil. Untuk penyajian dalam diagram alir (flowchart) akan dijelaskan kemudian. 1.5 TAHAPAN DALAM PEMROGRAMAN Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam pemrograman dengan komputer adalah : 1. Definisikan Masalah Berikut hal-hal yang harus diketahui dalam analisisi masalah supaya kita mengetahui bagaimana permasalahan tersebut : 2 Pemrograman Komputer

a. Kondisi awal, yaitu inputan yang tersedia. b. Kondisi akhir, yiatu output yang diinginkan. c. Data lain yang tersedia. d. Operator yang tersedia. e. Syarat atau kendala yang harus dipenuhi. Contoh kasus : Menentukan akar persamaan kuadrat yang berbentuk ax 2 + bx + c = 0. Proses yang perlu diperhatikan adalah sebagai berikut: a. Input yang tersedia adalah koefisien x 2 (a), koefisien x (b) dan konstanta (c). b. Output yang diinginkan adalah akar persamaan kuadrat. 2 b b 4ac c. Data lain yang dibutuhkan, rumus kuadrat x 2a d. Operator yang tersedia adalah pengurangan (-), penjumlahan (+), pembagian (/) dan perkalian (*) serta akar kuadrat. e. Syarat atau kendala yang harus dipenuhi adalah a tidak sama dengan nol. 2. Buat Algoritma dan Struktur Cara Penyelesaian. Jika masalahnya kompleks, maka dibagi ke dalam modul-modul. Tahap penyusunan algoritma seringkali dimulai dari langkah yang global terlebih dahulu. Langkah global ini diperluas sampai menjadi langkah yang lebih rinci atau detail. Cara pendekatan ini sangat bermanfaat dalam pembuatan algoritma untuk masalah yang kompleks. 3. Menulis Program Algoritma yang telah dibuat, diterjemahkan dalam bahasa komputer menjadi sebuah program. Perlu diperhatikan bahwa pemilihan algoritma yang salah akan menyebabkan program memiliki kerja yang kurang baik. 4. Mencari Kesalahan. Kesalahan yang dimaksud adalah : a. Kesalahan sintaks (penulisan program). b. Kesalahan pelaksanaan; semantik, logika, dan ketelitian. 5. Uji dan Verifikasi Program. Pertama kali harus diuji adalah apakah program dapat dijalankan. Apabila program tidak dijalankan maka perlu diperbaiki penulisan sintaksisnya. Tetapi bila program dapat dijalankan maka harus diuji dengan menggunakan data yang biasa, yaitu data yang diharapkan oleh sistem. 6. Dokumentasi Program Dokumentasi program ada dua macam, yaitu dokumentasi internal dan dokumentasi eksternal. Dokumentasi internal adalah dokumentasi yang dibuat di dalam program, yaitu setiap kita menuliskan baris program sebaiknya diberi komentar atau keterangan supaya mempermudah kita untuk mengingat logika yang terdapat di instruksi tersebut. Hal ini sangat bermanfaat ketika suatu saat program tersebut akan dikembangkan. Dokumentasi eksternal adalah dokumentasi yang dilakukan dari luar program yaitu membuat user guide atau buku petunjuk cara menjalankan program tersebut. 7. Pemeliharaan Program a. Memperbaiki kekurangan yang ditemukan kemudian b. Memodifikasi, karena perubahan spesifikasi. 3 Pemrograman Komputer

1.6 DIAGRAM ALIR (FLOWCHART) Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan suatu simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghuung. Dengan mengguakan flowchart akan memudahkan kita untuk melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah. Disamping itu flowchart berguna sebagai faslitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim atau proyek. Ada dua macam flowchart yang menggambarkan proses dengan computer, yaitu : 1. Flowchart Sistem, yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data. Berikut beberapa contoh flowchart sistem: dokumen Pengurutan Offline Kegiatan manual Harddisk 2. Flowchart Program, yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dan hubungan antar proes secara mendetail di dalam suatu program. Dalam pembuatan flowchart program tidak ada rumus atau patokan yang bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu masalah dengan computer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogram dengan yang lainnya. Namun secara garis besar, setiap pengolahan selalu terdiri atas 3 bagian utama, yaitu: (i) input (ii) proses pengolahan, dan (iii) output. Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia pemrogramn: SIMBOL NAMA FUNGSI TERMINATOR Permulaan/akhir program GARIS ALIR (FLOW LINE) PREPARATION Arah aliran program Proses inisialisasi/pemberian harga awal PROSES Proses perhitungan/proses pengolahan data INPUT/OUTPUT DATA Proses input/output data, parameter, informasi 4 Pemrograman Komputer

PREDEFINED PROCESS (SUB PROGRAM) DECISION ON PAGE CONNECTOR OFF PAGE CONNECTOR Permulaan sub program/proses menjalankan sub program Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya Penghubung bagian-bagian flowchart yang berada pada satu halaman Penghubung bagian-bagian flowchart yang berada pada halaman berbeda Dari contoh algoritma di atas tentang menentukan apakah suatu bilangan adalah bilangan ganjil atau bilangan genap, flowchart dari program adalah sebagai berikut : Start A Input Bilangan Apakah Sisa = 0 T Hitung sisa bagi antara bilangan dengan 2 Y Cetak Genap Cetak Ganjil A End Soal Latihan 1. Buatlah suatu algoritma untuk menghitung luas lingkaran secara deskriptif dan menggunakan flowchart. 2. Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan prima atau bukan, kemudian buat flowchart untuk program tersebut! 3. Buat algoritma untuk mencetak N buah bilangan prima yang pertama, kemudian buat flowchart untuk program tersebut! 4. Buat algoritma untuk menentukan jenis akar dari suatu persamaan kuadrat, kemudian buat flowchart untuk program tersebut! 5. Buat algoritma untuk menghitung jumlah N suku dari deret aritmatika berikut : 5 Pemrograman Komputer

Sn = 3 + 7 + 11 + + (4n-1) 6. Buat algoritma untuk menghitung nilai faktorial dari suatu bilangan, kemudian buat flowchart untuk program tersebut! 7. Buat flowchart untuk mencetak pasangan nilai X dan Y dimana hubungan antara X dan Y memenuhi persamaan Y = X 3 2X +1 dan nilai x berubah dari 10 sampai 10! 6 Pemrograman Komputer