Serial Cepat Mahir IlmuKomputer.Com

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

Algoritma dan Pemrograman #1. Arif Dwi Laksito, M.Kom

MODUL 1 ALGORITMA PEMROGRAMAN

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 )

Pendahuluan. program

Kusnawi, S.Kom, M.Eng

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

Pembuatan Algoritma yang Baik Ema Utami STMIK AMIKOM Yogyakarta

ALGORITMA RINTA KRIDALUKMANA SISKOM UNDIP

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

Algoritma dan Struktur Data

Algoritma Pemrograman 2B (Pemrograman C++)

Pendahuluan. Algoritma

PENDAHULUAN TUJUAN KEGUNAAN FLOWCHART KONSEP PEMROGRAMAN

Fungsi Lanjut DASAR PEMROGRAMAN

SEJARAH. dan ditemukannya komputer elektronik. tahun 1930-an. berhasil memadukan algoritma, logika, dan penghitungan

KONSEP DASAR. menyusunnya menjadi potongan-potongan mudah untuk ditangani dibanding. conquer.

Algoritma Pemrograman. Fery Updi,M.Kom

TEORI KONSEP PEMPROGRAMAN 3.1

Algoritma. Contoh Algoritma

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

Algoritma Dan Struktur Data

Pendahuluan Pemrograman Mikrokontroler

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN

BAB I PENGANTAR ALGORITMA DAN PROGRAM

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

BAB I PENDAHULUAN Latar Belakang Masalah

MAKALAH ALGORITMA, PSEUDOCODE DAN FLOWCHART TENTANG YUFI EKO FIRMANSYAH 1 D3 IT B OLEH

Achmad Solichin.

Achmad Solichin.

I Putu Gede Darmawan

Konsep Pemrograman. Bab 8. Fungsi 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Apa Itu Algoritma? Algoritma berasal dari: ahli

Praktikum 6. Konsep Rekursi Perbandingan Perulangan biasa dan Rekursi Implementasi Rekursi dalam Bahasa C

Contoh algoritma 1. Ada 2 buah gelas. Satu berisi teh dan satunya lagi berisi kopi. Bagaimana caranya menukar isi masing-masing gelas?

A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.

Algoritma dan Struktur Data. Pertemuan 5 Pointer

Konsep Pemrograman Prosedural

BAB III METODOLOGI PENELITIAN

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF

Alex Budiyanto.

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia

Algoritma Pemrograman

PEMROGRAMAN DAN METODE NUMERIK Semester 2/ 2 sks/ MFF 1024

BAB 2 LANDASAN TEORI

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

Definisi Algoritma. Prepared by Vosco

PENGANTAR ALGORITMA. Brigida Arie Minartiningtyas, M.Kom

Daftar kelompok Kelas Mahasiswa Angkatan 52 Program Pendidikan Kompetensi Umum Institut Pertanian Bogor

Fungsi, Parameter, Rekursi

IT234 - Algoritma dan Struktur Data. Ramos Somya

Bab 1 : Pengenalan dan Pengantar Algoritma

Algoritma Dan Pemrograman

Perulangan, Percabangan, dan Studi Kasus

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

Pointer. Yuliana Setiowati


1 - Bahasa Pemrograman

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

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

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma

Tipe Data. Adri Priadana

POINTER DASAR PEMROGRAMAN

3 sks (2,1) 1 sks: Lab Session. Course material: History Algorithm. Programming (C/C++):codeblock,gnu compiler

Pencarian. 1. Memahami konsep pencarian 2. Mengenal beberapa algoritma pencarian 3. Menerapkan algoritma pencarian dalam program

Algoritma dalam Bahasa C

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

BAHASA PEMROGRAMAN C LANGUAGE

Pernyataan: Background Cover ini menunjukkan Keaslian Ebook ini yang sesuai / sama dengan Cover CD depan aslinya. Dan bila background / Cover setiap

Algoritme dan Pemrograman

Fungsi. Nisa ul Hafidhoh

xxxx alamat Praktikum 11 POINTER

printf (" ======== Program untuk memilih nama bulan dalam setahun ======== \n \n");

Fungsi 2 DASAR PEMROGRAMAN

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

BAB I PENGANTAR ALGORITMA DAN PROGRAM

Mesin Karakter dan Mesin Kata

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

ANALISIS ALGORITMA BINARY SEARCH

Gambar 13.1 Ilustrasi proses algoritma sorting

Pengambilan Keputusan DASAR PEMROGRAMAN

Pengantar Sistem Komputer & Algoritma

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I

BAB 10 POINTER 5.1 Tujuan 5.2 Pengertian Pointer Perubah dinamis pointer

Pertemuan 2 Konsep Dasar Algoritma

Pengantar Algoritma dan Program

BAB VIII Pencarian(Searching)

Findra Kartika Sari Dewi

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

SEMANTIK. Int vector[10];

Kurikulum Qt. Chapter 4 Function. Fungsi

MODUL 0 PENDAHULUAN 0-1

BAB II DASAR-DASAR DAN ATURAN PENULISAN ALGORITMA

Tipe Data dan Variabel

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

IMPLEMENTASI PERANGKAT LUNAK

PRAKTIKUM 11 POINTER 1

BAB I Pengantar Algoritma dan Pemrograman

MODUL 1 PRAKTIKUM ALGORITMA & PEMROGRAMAN I

Transkripsi:

Cepat Mahir Algoritma dalam Bahasa C romi@romisatriawahono http://romisatriawahono.net Copyright 2003 IlmuKomputer.Com Serial Cepat Mahir IlmuKomputer.Com

Bab 1 Pendahuluan 1.1. Apa Itu Algoritma Kata algoritma, mungkin bukan sesuatu yang asing bagi kita. Penemunya adalah seorang ahli matematika dari uzbekistan yang bernama Abu Abdullah Muhammad Ibn Musa al- Khwarizmi (770-840). Di literatur barat dia lebih terkenal dengan sebutan Algorizm. Panggilan inilah yang kemudian dipakai untuk menyebut konsep algorithm yang ditemukannya. Dalam bahasa Indonesia kita kemudian menyebutkannya sebagai algoritma. Algoritma adalah kunci dari bidang ilmu komputer, karena banyak bidang di bawah ilmu komputer yang lahir berdasarkan konsep algoritma ini. Pada hakekatnya algoritma juga adalah kunci dari kehidupan kita. Cara membuat masakan (resep masakan) adalah juga sebuah contoh nyata dari algoritma. Definisi Algoritma Kita bisa mendefinisikan algoritma seperti dibawah: Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan. 1

Kamus besar bahasa Indonesia (Balai Pustaka 1988) secara formal mendefinisikan algoritma sebagai: Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah. Beda Algoritma dan Program Program adalah kompulan instruksi komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ini ditulis dengan menggunakan bahasa pemrograman. Jadi bisa kita sebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa: program = struktur data + algoritma Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, semikian juga sebaliknya. Struktur data disini bisa berupa list, tree, graph, dsb. Akan dibahas secara mendetail pada bab-bab mendatang. 1.2. Menilai Sebuah 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 diantara teknik-teknik itu. Hal ini sama juga dengan algoritma, yang memungkinkan suatu permasalahan dipecahkan dengan metode dan logika yang berlainan. Lalu bagaimana mengukur mana algoritma yang terbaik? Beberapa persyaratan untuk menjadi algoritma yang baik adalah: Tingkat kepercayaannya tinggi (realibility). Hasil yang diperoleh dari proses harus berakurasi tinggi dan benar. Pemrosesan yang efisien (cost rendah). Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin. Sifatnya general. Bukan sesuatu yang hanya untuk menyelesaikan satu kasus saja, tapi juga untuk kasus lain yang lebih general. 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). Portabilitas yang tinggi (Portability). Bisa dengan mudah diimplementasikan di berbagai platform komputer. 2

1.3. Contoh Algoritma dan Implementasinya Sebagai contoh sederhana, mari kita berlatih melihat permasalahan, mencoba menyusun algoritma, dan meng-implementasi-kan dalam bahasa C. Permasalahan Anda adalah seorang guru SD yang ingin membuat rangking dari nilai ujian dari 9 orang murid anda. Nilai ujian murid anda adalah sebagai berikut: 56 78 43 96 67 83 51 74 32 Bagaimana algoritma dalam pembuatan rangking nilai tersebut? Untuk memecahkan masalah diatas, kita bisa susun algoritma seperti dibawah: 1. Buat satu variable (misalnya rangking) 2. Set variable rangking = 1 3. Ambil satu nilai sebagai data yang ke a, misalnya 56 4. Chek nilai dari paling depan (56) sampai paling belakang (32) (b=0-8). Apabila nilai tersebut lebih tinggi daripada nilai ke a (56), maka set variable rangking = ranking + 1. 5. Ulangi proses nomor 2 dengan mengambil data ke (a) berikutnya. Kemudian mari kita implementasikan algoritma diatas dalam program bahasa C. Program: Rangking Nilai Ujian #include <stdio.h> #define banyaknya_nilai 9 main(){ static int nilai[]={56, 78, 43, 96, 67, 83, 51, 74, 32; int rangking[banyaknya_nilai]; int a,b; for (a=0;a<banyaknya_nilai;a++){ rangking[a]=1; for (b=0;b<banyaknya_nilai;b++){ if (nilai[a]>nilai[b]) rangking[a]++; 3

printf("nilai Ujian \t Rangking\n"); for (a=0;a<banyaknya_nilai;a++){ printf("%d \t\t %d\n",nilai[a], rangking[a]); Hasil Nilai Ujian Rangking 56 4 78 7 43 2 96 9 67 5 83 8 51 3 74 6 32 1 4