E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA

dokumen-dokumen yang mirip
C Programming (re-view)

Struktur Data... Teknik-teknik manipulasi data: tambah (add) hapus (delete) edit pengurutan pohon pencarian

Desain dan Analisis Algoritma. Pengenalan Bahasa C. I Ketut Resika Arthana, S.T., M.Kom.

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

Bahasa C-M6 By Jamilah, Skom 1

1.1. Sejarah Bahasa C

Chapter 1 KONSEP DASAR C

BAHASA PEMROGRAMAN C

Pendahuluan Pemrograman Mikrokontroler

Tipe Data, Variabel, Input/Output

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

Variable. Variable (cont) Variable (cont) Tipe Data

Tipe Data dan Operator

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

BAB 4 PENGENALAN BAHASA C

Modul 1 Dasar Dasar Bahasa Pemrograman C

KONSEP DASAR BAHASA C

Dasar Pemrograman C. Hendawan Soebhakti. Oktober 2009

Elemen Bahasa Pemrograman. Aditya Rizki Yudiantika, M.Eng.

JAVA BASIC PROGRAMMING Joobshet

Algoritma & Pemrograman #2. by antonius rachmat c, s.kom, m.cs

Kontrak Perkuliahan & Introduction

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

1/5. while and do Loops The remaining types of loops are while and do. As with for loops, while and do loops Praktikum Alpro Modul 3.

Achmad Solichin.

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktivitas Pembelajaran

Dasar Pemrograman Komputer [TKL-4002] 2010

Imam Fahrur Rozi. Algoritma dan Pemrograman. Pengantar C++

Algoritma & Pemrograman

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

Struktur Program Bahasa C

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

P 4 Bab 3 : Dasar Pemrograman C

SUMBER BELAJAR PENUNJANG PLPG

SATUAN ACARA PERKULIAHAN (SAP)

Pemrograman I Bab III Tipe Data, Variabel, dan Operasi Perhitungan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

IT234 ALGORITMA DAN STRUKTUR DATA FUNGSI

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

Function. Function adalah satu blok instruksi yang dieksekusi ketika dipanggil dari bagian lain dalam suatu program. Format dari function :

BAHASA PEMROGRAMAN JAVA

Algoritma & Pemrograman #7. by antonius rachmat c, s.kom, m.cs

1. Joko Priyanto ( ) 2. Astriyer J. Nahumury ( ) 3. Rico N. Tubalawony ( ) 4. Heberson Pakpahan ( ) 5.

P3 Pengantar Pemrograman C

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

VARIABEL & TIPE DATA PEMROGRAMAN C++

BAB II STRUKTUR BAHASA C

Contoh function 1 : Output : // function example The result is 8 #include <iostream.h>

PENGENALAN KONSEP PEMROGRAMAN. (dalam bahasa C)

SATUAN ACARA PENGAJARAN (SAP) : Aswir Premadi, S.T., M.Sc. (Eng) Pertemuan Minggu ke : 1 & 2 ( 1 x 2 x 50 )

ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

Bahasa Pemrograman SAHID CHESTERLIZER.

Function. Contoh function 1 : // function example #include <stdio.h> int addition (int a, int b){ int r; r=a+b; return (r); }

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan

SILABUS STRUKTUR DATA ( TIF-104 ) PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS PEMBANGUNAN JAYA TANGERANG SELATAN

BAHASA C. VERSI C: Kernighan and Richie C (K&R C) ANSI C C++ C# Java

Bahasa C, pada awalnya dirancang sebagai bahasa pemrograman yang dioperasikan pada sistem operasi UNIX.

2 TIPE DATA DAN VARIABEL

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

Pertemuan Function. Obyektif Praktikum : 1. Mengerti konsep dasar penggunaan Function

KKKF33110 STRUKTUR DATA

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

BUANA. Distribusi 01 September 2017

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

Data Structures. Class 5 Pointer. Copyright 2006 by The McGraw-Hill Companies, Inc. All rights reserved.

(3) BAHAN KAJIAN (materi ajar)

9/9/2011 ILKOM IPB 1 ALGORITME DAN PEMROGRAMAN. Review: Algoritme dan Program. Bahasa tingkat rendah (low level language)

Pengantar Bahasa C. Tim Pengajar ASD Semester I 2017/ /7/2017 FN/ASD/Sem /2018 1

INSTRUKSI. TTH2D3 Mikroprosesor

FUNCTIONS. Function adalah satu blok instruksi yang akan dieksekusi ketika dipanggil dari bagian lain dalam suatu program.

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

Review: Algoritme dan Program 12/29/2011. Algoritme dan Pemrograman. Review: Bagaimana memecahkan masalah dengan komputer?????

Function nama dipisahkan

BUKU PETUNJUK PRAKTIKUM DASAR ALGORITMA DAN PEMROGRAMAN

Pemrograman Dasar C. Minggu 6

BAB 1 KONSEP DASAR BAHASA C

BAB II VARIABEL DAN TIPE DATA

Ringkasan 32 keyword dalam C

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C

Algoritme dan Pemrograman

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

Pengenalan Bahasa C++ Oleh : Agus Priyanto, M.Kom

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

Tipe Data dan Variabel

MODUL PRAKTIKUM BAHASA PEMROGRAMAN DASAR (PG168)

IT234 - Algoritma dan Struktur Data. Ramos Somya

Badiyanto, S.Kom., M.Kom. PBO java

SATUAN ACARA PERKULIAHAN(SAP)

BAHAN AJAR. Mata Kuliah Struktur Data. Disusun oleh: Eva Yulianti, S.Kom.,M.Cs

Langkah Mudah Belajar Struktur Data Menggunakan C/C++

Teknik Pemrograman Terstruktur 1 PENGENALAN BAHASA C

Pengenalan C++ untuk Interface

PENGENALAN BAHASA C. Praktikum 3

Transkripsi:

E3024015 - STRUKTUR DATA & E3024016 PRAKTIK STRUKTUR DATA Alfa Faridh Suni, S.T., M.T. PTIK - 2014

Schedule Mata Kuliah : E3024015 - STRUKTUR DATA & E3024016 PRAKTIK STRUKTUR DATA Bobot : 2 & 1 SKS Waktu : Jumat (07.00 11.00) Ruang : E8 201 Jumat (13.00 17.00) (Kondisikan supaya anda siap praktik)

About Me Nama Web : Alfa Faridh Suni, S.T., M.T. : hkp://alfafsuni.com No HP : 085640845672 (Sertakan idenutas jelas) Email tugas : tugaspukunnes@yahoo.com Kantor : E8 lt 1 Samping Lab Komputer

Deskripsi Matakuliah Matakuliah ini mengajarkan sistem pengorganisasian data pada memori komputer maupun file (berkas) pada suatu media penyimpanan dengan menggunakan struktur data array, struct, tree, dan file menggunakan teknik-teknik seperti stack, queue, dan linked list serta hashing. Matakuliah ini juga mengajarkan teknik-teknik manipulasi data seperti tambah, hapus, edit, pencarian dan pengurutan, yang dilakukan dengan menggunakan bahasa pemrograman (bahasa C).

Tujuan Matakuliah Mahasiswa diharapkan mampu: Memahami sistem pengorganisasian data pada memori komputer dan file (berkas) pada media penyimpanan. Mengimplementasikannya dalam program dengan menggunakan salah satu bahasa pemrograman (Bahasa C) untuk membuat berbagai macam struktur data (array, tree, struct) dengan teknik-teknik tertentu (linked list, stack, dan queue) serta manipulasinya (sorting dan searching) secara baik, efisien, dan cepat.

Silabus Perkenalan Perkenalan dan silabus Aturan prakukum Refresh Bahasa C Pengantar Struktur Data, Abstract Data Type (ADT) dan Struct Pengantar Struktur Data PengerUan dan cara pembuatan ADT PengerUan dan pendeklarasian Struct Struct: add,del,edit & array of struct Contoh- contoh program Searching Array Refresh array PengerUan searching Algoritma- algoritma searching : sequenual search, binary search Array slice / explode

Silabus Sorting Array Algoritma-algoritma sorting : bubble sort, selection sort, insertion sort, dan quick sort Stack dan Queue dengan Array Pengertian stack, cara pembuatan stack, dan operasi-operasinya pada array Pengertian queue, cara pembuatan queue, dan operasi-operasinya pada array

Silabus Pointer dan Function Konsep, operator, dan deklarasi Pointer pada array Function by value & reference Single Linked List Non Circular Single Linked List Non Circular Insert, update, dan delete Single Linked List Circular Insert, update, dan delete Double Linked List Non Circular Insert, update, dan delete Double Linked List Circular Insert, update, dan delete

Silabus Function Rekursif dan Graf Konsep rekursif implementasi Graf serta contoh Tree Konsep dan pembuatan Kunjungan Tree: pre-order, in-order, dan postorder, level-order Berbagai macam operasi tree

Daftar Pustaka Moh. Sjukani, Algoritma dan Struktur Data dengan C, C++, dan Java, Mitra Wacana Media, 2005 Dwi Sanjaya, Asyiknya Belajar Struktur Data di Planet C++, PT. Elex Media Komputindo, Jakarta, 2005 Jogianto H.M, Konsep Dasar Pemrograman Bahasa C, Penerbit Andi, 2000 Antonie Pranata, Algoritma dan Pemrograman, J&J Learning Yogyakarta, 2000 Simon Harris and James Ross, Beginning Algorithms, Wiley Publishing Inc., 2006 Dwi Sanjaya, Bertualang dengan Struktur Data di Planet Pascal, J&J Learning Yogyakarta, 2001 Peter Drake, Data Structures and Algorithms in Java, Prentice Hall, 2005 Bambang Hariyanto, Ir, M.T, Struktur Data Memuat Dasar Pengembangan Berorientasi Obyek, Penerbit Informatika Bandung, 2003 Teddy Marcus Zakaria dan Agus Prijono, Konsep dan Implementasi Struktur Data, Penerbit Informatika, Bandung, 2006 C Programming Language Kernighan & Ritchie

Refresh C Bahasa C dibuat pada tahun 1978 untuk Sistem Operasi Unix oleh Bell Labs (Ken Thompson dan Dennis M. Ritchie). Buku The C Programming Language Bahasa C merupakan salah satu bahasa pemrograman yang paling sering dipakai oleh pemrogram di seluruh dunia, terutama karena bahasa C memperbolehkan pengakses memori secara manual. (dengan POINTER) Bahasa C menjadi dasar bahasa C++. Bahasa C seringkali dipakai untuk membuat bahasa-bahasa pemrograman yang lain. Distandarisasi ANSI tahun 1989

Identifier & Tipe Data C Identifier adalah pengingat tempat penyimpanan data di dalam memori komputer. Variabel : bisa diubah Konstanta : bersifat tetap

Some programmer jargon Beberapa istilah: Source code: kode program yang ditulis programmer. Compile (build): pengubahan source code ke dalam object code (bisa bahasa mesin / assembly) Executable: program dalam bahasa mesin yang siap dieksekusi / dijalankan (ready to run). Language: bahasa pemrograman. Library: fungsi-fungsi yang digunakan pada pembuatan program. Preprocessor Directive Dimulai dengan tanda # Header file: file yang berekstensi.h yang disertakan pada pembuatan program.

Structure of C Consists mainly of: Preprocessor Directive Function Definitions Data Structures Code programs Function Body #include <.> #define. int coba(); void main() { int a; printf( Hello, world!\n ); a = coba(); } int coba(){ } return (int);

More about Hello World #include <stdio.h> Preprocessor /* My first C program which prints Hello World */ int main (int argc, char *argv[]) { printf ("Hello World!\n"); return 0; } Brackets define code blocks Comments are good main() means start here Library command Return 0 from main() means our program finished without errors

Keywords of C Flow control (6) if, else, return, switch, case, default Loops (5) for, do, while, break, continue Common types (5) int, float, double, char, void Structures (2) struct, typedef Sizing things (1) sizeof Rare but still useful types (7) extern, signed, unsigned, long, short, static, const Evil keywords which we avoid (1) goto

Variable Kita harus mendeklarasikan tipe data setiap variabel pada C. Setiap varibel punya tipe data dan namanya (identifier). Variabel adalah unik, tidak boleh berupa keyword, dimulai dengan huruf atau underline, maks 32 karakter int a,b; double d; /* This is a bit cryptic */ int start_time; int no_students; double course_mark; /* This is a bit better */

Pendeklarasian Variabel & Konstanta

Escape Characters

The char type char disimpan dalam kode ascii (integer) Print char dengan %c char menggunakan single quote int main() { char a, b; a= 'x'; /* Set a to the character x */ printf ("a is %c\n",a); b= '\n'; /* This really is one character*/ printf ("b is %c\n",b); return 0; }

A short note about ++ ++i means increment i then use it i++ means use i then increment it int i= 6; printf ("%d\n",i++); /* Prints 6 sets i to 7 */ Note this important difference int i= 6; printf ("%d\n",++i); /* prints 7 and sets i to 7 */ All of the above also applies to --

Casting Memaksa suatu tipe data Tipe data yang serupa float -> int Int -> float

Formatting Command Summary Format Command Data type Description %d Int Decimal number %x Int Hexadecimal number %b Int %c Int Low byte as binary number Low byte as ASCII character %f float Floating point number %s char array Char array (string)

Control Structure 1 IF / IF ELSE if ( true ) { DoFirstThing(); DoSecondThing(); }; if ( true ) DoSomething(); else DoSomethingElse(); SWITCH switch ( key ) { case a : case A : DoFirstThing(); DoSecondThing(); break; case b : DoSomething(); break; default: break; };

Control Structure 2 FOR int i, j; for (i=0; i<5; i++) for (j=5; j>0; j--) { // i counts up // j counts down printf( %i %j\n, i, j); }; The ++ / -- is shortcut used to increment / decrement value of int variables WHILE int i = 0; int StayInLoop = 1; while ( StayInLoop ) { i+=2; // Make sure you have // exit condition! if ( i > 200 ) StayInLoop = 0; }; += increments by n

What is a function? The function is one of the most basic things to understand in C programming. A function is a sub-unit of a program which performs a specific task. We have already (without knowing it) seen one function from the C library printf. We need to learn to write our own functions. Functions take arguments (variables) and may return an argument. Formal parameter Actual parameter

Type of function Void : tidak mengembalikan nilai Non-void : mengembalikan nilai

An example function #include <stdio.h> int maximum (int, int); /* Prototype see later in lecture */ int main(int argc, char*argv[]) { Prototype the function int i= 4; int j= 5; Call the function int k; k= maximum (i,j); /* Call maximum function */ printf ("%d is the largest from %d and %d\n",k,i,j); printf ("%d is the largest from %d and %d\n",maximum(3,5), 3, 5); return 0; } function header int maximum (int a, int b) /* Return the largest integer */ The function itself { if (a > b) return a; /* Return means "I am the result of the function"*/ return b; /* exit the function with this result */ }

The main Function function main() dibutuhkan agar program C dapat dieksekusi! Tanpa function main, program C dapat dicompile tapi tidak dapat dieksekusi (harus dengan flag parameter c, jika di UNIX) Pada saat program C dijalankan, maka compiler C pertama kali akan mencari function main() dan melaksanakan instruksi-instruksi yang ada di sana.

int main() Berarti di dalam function main tersebut harus terdapat keyword return di bagian akhir fungsi dan mengembalikan nilai bertipe data int, Mengapa hasil return harus bertipe int juga? karena tipe data yang mendahului fungsi main() diatas dideklarasikan int Tujuan nilai kembalian berupa integer adalah untuk mengetahui status eksekusi program. jika terminated successfully (EXIT_SUCCESS) maka, akan dikembalikan status 0, sedangkan jika terminated unsuccessfully (EXIT_FAILURE) akan dikembalikan nilai status tidak 0, biasanya bernilai 1 Biasanya dipakai di lingkungan UNIX

What is scope variable? The scope of a variable is where it can be used in a program Normally variables are local in scope - this means they can only be used in the funcuon where they are declared (main is a funcuon) We can also declare global variables. If we declare a variable outside a funcuon it can be used in any funcuon beneath where it is declared Global variables are A BAD THING

Why Global is Bad?

The print stars example #include <stdio.h> void print_stars(int); int main() { int i; for (i= 0; i < 5; i++) print_stars(5); return 0; } This program prints five rows of five stars ***** ***** ***** ***** ***** Loop around 5 times to print the stars Variables here are LOCAL variables void print_stars (int n) { int i; for (i= 0; i < n; i++) printf ("*"); printf ("\n"); } This prints 'n' stars and then a new line character

Other techniques for debugging Check missing brackets and commas. Check that you have a semicolon at the end of every line which needs one. Put in some printf if you know what your program is DOING you will know what it is DOING WRONG. Try to explain to someone else what the program is meant to do. Take a break, get a cup of coffee (I prefer tea) and come back to it fresh. Debugging is FRUSTRATING

NEXT Pengantar Struktur Data & Abstract Data Type