algoritma dan struktur data -  · pdf filependidikan teknik informatika – ftk -...

Click here to load reader

Post on 01-Feb-2018

226 views

Category:

Documents

6 download

Embed Size (px)

TRANSCRIPT

  • Pendidikan Teknik Informatika FTK - UNDIKSHA

    Algoritma dan Struktur Data

    Week 2 : Bahasa C dan Array

    I Ketut Resika Arthana, S.T., M.Kom NIP. 198412012012121002

    [email protected] | 085-737-515-515 http://www.rey1024.com

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 2

    Refresh

    Apakah yang dimaksud dengan algoritma ?

    Terdapat dua buah gelas berukuran sama, tetapi masing-masing berisi cairan yang berbeda. Tuliskan solusi algoritmik untuk menukarkan isi cairan dari kedua buah gelas tersebut !

    Diberikan dua buah ember berukuran 5 liter dan 3 liter. Bagaimana cara mendapatkan air berukuran 1 liter dengan kedua ember tersebut ?

    Algoritma dan Struktur Data

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 3

    Jika input 10 berapa nilai tampil?

    Algoritma dan Struktur Data

    program noname8; uses wincrt; var x,y,i:integer; begin writeln('Masukkan 1 angka integer : '); readln(x); y:=0; for i:=1 to x do begin y:=y+i; end; writeln(y); end.

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 4

    Jika input 10 berapa nilai tampil?

    program noname11; uses wincrt; var x,i:integer; b:boolean; begin writeln('Masukkan 1 angka integer : '); readln(x); b:=true; while (x>5)and(b) do begin x:=x+2; if x>20 then b:=false else x:=x-1; end; writeln(x); end.

    Algoritma dan Struktur Data

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 5

    Elemen Pemrograman

    Program = Struktur Data + Algoritma

    Struktur data : dasar (int, real, boolean), bentukan (record, array, set)

    Instruksi : assignment, read/write, if/case, loop (for, while, repeat)

    Pengelompokan instruksi menjadi fungsi/prosedur

    Operasi file eksternal.

    Algoritma dan Struktur Data

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 6

    Struktur Data

    Struktur data: cara merepresentasikan data agar efisien dalam penyimpanan dan pengolahannya.

    Struktur data seharusnya diterapkan pada algoritma yang didisain secara efisien

    Tujuan kuliah Algoritma & Struktur Data adalah untuk mempelajari bagaimana merepresentasikan data secara efisien dan disain pengolahannya secara efisien

    Algoritma dan Struktur Data

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 7

    Pengenalan Bahasa C

    Algoritma dan Struktur Data

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 8

    Latar Belakang Array

    Sejauh ini cuplikan program yang kita pelajari masih sangat terbatas, karena statement assignment hanya berupa pemberian satu nilai pada satu variabel

    Padahal sering kali kita perlu untuk meng-assign ataupun memanipulasi banyak nilai ke sekelompok variabel

    Sebagai contoh jika anda membuat program yang membaca 6000 nilai percobaan untuk dihitung nilai rata-rata-nya, akan sangat lucu jika anda menghitungnya dengan cara berikut: rata_rata = (x1 + x2 + x3 + x4 + x5 + + dst )/6000.

    Ekspresi matematis berikut akan lebih baik :

    8 IF2031-Algoritma dan

    Struktur Data/Hamonangan Situmorang

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 9

    Pendahuluan (1)

    Definsi : Kumpulan nilai dengan tipe data yang sama yang menggunakan nama sama.

    Deklarasi Array : Tipe data elemen array Nama array Jumlah elemen array

    Contoh : short val[ 200 ]; //declaration val[ 12 ] = 5; //assignment

    Jika sebuah array y memiliki n elemen, maka: Elemen pertama adalah : y[0] Elemen terakhir adalah : y[n-1]

    Contoh : Short y[4], memiliki elemen y[0], y[1], y[2], y[3] Tetapi y[4], bukan merupakan elemen array ini.

    IF2031-Algoritma dan

    Struktur Data/Hamonangan Situmorang

    9

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 10

    Pendahuluan (2)

    Array dapat dibedakan menjadi : Array berdimensi satu (1D), berpadanan dg vektor di Matematika

    Array berdimensi dua (2D), berpadanan dg matriks di Matematika

    Array berdimensi banyak

    Contoh array integer 1D bernama n yg memiliki 5 elemen, n[0] = 1, n[1] = 3, n[2] = 5, n[3] = 7, n[4] = 9 dideklarasikan sbb: int n[5] = {1,3,5,7,9};

    IF2031-Algoritma dan

    Struktur Data/Hamonangan Situmorang

    10

    1 3 5 7 9 n

    0 1 2 3 4 indeks

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 11

    Alokasi Memory Array (1)

    IF2031-Algoritma dan Struktur Data/Hamonangan

    Situmorang

    11

    Hati-hati dengan indeks array

    jika ceroboh dapat mengakses data lain

    hati-hati pula dengan pointer

    Ilustrasi kasus:

    int a[6];

    int anu;

    Array a[ ]

    Data lain

    Memori

    a[0] a[1] a[2] a[3] a[4] a[5] anu

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 12

    Deklarasi dan Inisialisasi Array

    Deklarasi secara global, semua elemen array akan diinisialiasi dengan nilai nol.

    Deklarasi secara lokal, elemen array tidak di-inisialisasi. Contoh-contoh deklarasi dan inisialisasi array :

    short x[ 12 ] = { 1, 3, 88}; double w[ ] = {3.14, 127.0, 22};

    Strings: char a_name[ 10 ] = Hello; char name[ 20 ] ={H,e,l,l,o};

    Jika anda akan mendeklarasikan ukuran/dimensi array anda harus menggunakan sebuah nilai atau konstanta, jangan variabel short x[12]; Short x[MAX], dimana MAX adalah konstanta

    IF2031-Algoritma dan Struktur Data/Hamonangan

    Situmorang

    12

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 13

    Review Deklarasi Konstanta

    Contoh deklarasi konstanta

    #define ACONSTANT 300.0

    #define TRUE 1

    #define FALSE 0

    Catatan:

    Tidak ada semicolon diakhir deklarasi konstanta

    Kesepakatan dalam C: nama konstatnta ditulis dengan menggunakan huruf besar semua.

    IF2031-Algoritma dan Struktur Data/Hamonangan

    Situmorang

    13

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 14

    Mengolah Elemen Array

    Elemen array dapat diakses dengan bentuk: nama_array[subscript] untuk dimensi 1 nama_array[subscript_baris][subscript_kolom] untuk

    dimensi 2

    Dalam pemrograman harus diusahakan agar tidak

    terjadi pengaksesan elemen di luar jumlah yang didefinisikan.

    Perlu diketahui, C tidak akan memberikan pesan kesalahan apabila terjadi pengaksesan dengan nilai indeks yang berada di luar nilai yang telah didefinisikan.

    IF2031-Algoritma dan Struktur Data/Hamonangan

    Situmorang

    14

  • I Ketut Resika Arthana, S.T., M.Kom PTI-UNDIKSHA 15

    Ref

    Array dalam Bahasa C Hamonangan Situmorang- STEI-ITB

    Algoritma dan Struktur Data

View more