2 algoritma pemrog. strukdata pusatbahan ajar dan elearning tim dosen pendahuluan tipe dan...

Download 2 Algoritma Pemrog.  Strukdata PusatBahan Ajar dan eLearning Tim Dosen   Pendahuluan Tipe dan Definisi Data DEFINISI DATA

Post on 06-Mar-2018

233 views

Category:

Documents

6 download

Embed Size (px)

TRANSCRIPT

  • MODUL PERKULIAHAN

    Algoritma Pemrograman & Struktur Data

    Pertemuan 1 PENDAHULUAN

    Fakultas ProgramStudi TatapMuka KodeMK DisusunOleh IlmuKomputer TeknikInformatika 01 87031 TimDosen

    Abstract Kompetensi Membahas tentang konsep dasar dari algoritma dan struktur data

    Mampu memahami konsep dasar dari algoritma dan struktur data

  • 2014 2 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    Pendahuluan

    Tipe dan Definisi Data

    DEFINISI DATA : ADALAH FAKTA ATAU KENYATAAN YANG TERCATAT MENGENAI SUATU OBYEK.

    Pengertian data ini menyiratkan suatu nilai yang bisa dinyatakan dalam bentuk konstanta

    atau variabel.

    Konstanta menyatakan nilai yang tetap Variabel digunakan dalam program untuk menyatakan nilai yang dapat diubah-ubah

    selama eksekusi berlangsung.

    ADA 4 ISTILAH TENTANG DATA YAITU : 1. Tipe Data : Macam / isi data di dalam suatu variable dalam bahasa program 2. Objek Data : Set dari elemen misal X set bilangan integer 3. Representasi Data : Suatu mapping dari struktur data d ke suatu set dari struktur data e

    misalnya Boolean direpresantasikan dalam 0 dan 1

    4. Struktur Data : Struktur adalah koleksi dari variabel yang dinyatakan dengan sebuah nama, dengan sifat setiap variabel dapat memiliki tipe yang berlainan. Struktur data

    biasa dipakai untuk mengelompokkan beberapa informasi yang berkaitan menjadi

    sebuah kesatuan

    HIRARKI DARI TIPE DATA :

  • 2014 3 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    TIPE DATA SEDERHANA Hanya dimungkinkan untuk meyimpan sebuah nilai data dalam sebuah variabel.

    Ada 5 macam :

    - Bil. Bulat ( integer )

    - Bil. Real presisi-tunggal ( Float )

    - Bil. Real presisi-ganda ( Double )

    - Karakter

    - Tak bertipe/void (Tipe data untuk Fungsi)

    - Boolean ( Operator Logika )

    TIPE TOTAL BIT

    KAWASAN KETERANGAN

    Char 8 -128 s/d 127 Karakter

    Int 16 -32768 s/d 32767 Bil Integer

    Float 32 3.4E-38 s/d 3.4E+38 Bil real Presisi Tunggal

    Double 64 1.7E-308 s/d 1.7E+308 Bil Real Presisi Ganda

    Void 6 Tak bertipe

    TIPE DATA BOOLEAN Mempunyai 2 nilai : True dan False

    OPERATOR Maksud && Dan ( And )

    || Atau ( OR )

    ! Tidak ( Not )

    Operator Boolean biasa dipakai untuk menghubungkan ungkapan relasi

    Operand 1 Operand 2 Hasil || &&

    False False False False

    False True True False

    True False True False

    True True True True

  • 2014 4 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    TIPE DATA TERSTRUKTUR Adalah tipe dimana suatu variabel bisa menyimpan lebih dari sebuah nilai data. Masing-

    masing nilai data disebut komponen.

    Ada 5 macam :

    1. Tipe String Data yang berisi sederetan karakater dimana banyaknya karakter bisa berubah-ubah

    sesuai dengan kebutuhan.

    Contoh Char Nama[30];

    2. Larik (Array ) Variabel hanya menyimpan 1 tipe data saja.

    Contoh

    Int A[10];

    Float C[3][4];

    3. Record Terdiri dari beberapa variabel yang terstruktur dan masing-masing variabel bisa

    mempunyai tipe yang berbeda.

    Contoh :

    Struct Nama data_tanggal { int tanggal;

    int bulan;

    int tahun };

    4. Set ( himpunan ) Union

    Memungkinkan suatu lokasi memori ditempati oleh dua atau lebih variabel yang

    tipenya bisa berlainan.

    Contoh :

    Union

    { unsigned int Angka;

    unsigned char Huruf[12] } bil_X

    Enumerasi

    Merupakan himpunan dari konstanta integer yang diberi nama.

    Contoh :

    enum manusia {pria,wanita};

    enum manusia jns_kelamin;

    jika jns_kelamin diisi pria maka nilai jns_kelamin=0 dan sebaliknya jika

    wanita nilai=1

  • 2014 5 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    5. File Merupakan organisasi dari sejumlah record sejenis. Masing-masing record dapat

    terdiri dari satu atau beberapa field dan setiap field terdiri dari satu atau bebrapa

    karakter.

    TIPE DATA POINTER Variabel pointer berisi alamat dari suatu obyek lain (yaitu obyek yang ditunjuk oleh pointer

    tersebut).

    Contoh int *pa;

    pa = &x;

    pointer pa menunjuk alamat x.

    Algoritma

    DEFINISI ALGORITMA : Adalah himpunan langkah-langkah instruksi untuk melaksanakan suatu pekerjaan tertentu,

    dengan beberapa kriteria :

    1. Ada input

    2. Ada output

    3. Jelas dan tidak meragukan (definiteness)

    4. Ada terminasi (finiteness)

    5. Efektif dan dapat dilaksanakan.

    Ada sedikit perbedaan antara algoritma dan program.

    Program tidak harus memenuhi kriteria 4 contoh SO, karena harus selalu menunggu job.

  • 2014 6 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    Algoritma dan Metode Pemrograman Penekanannya pada bagaimana memecahkan suatu masalah dengan algoritma yang tepat.

    Dasar-dasar algoritma : - Statement Elementer

    - Statement Control

    Statement Elementer - Assignment

    - Comparison

    - Arithmetic Statement

    - Operator Boolean

    - Instruksi I/O

    Statement Control : - Alternatif

    - Pengulangan

    - Percabangan

    STATEMENT ELEMENTER : a. Assigment

    Untuk memberikan nilai kevariabel yang telah dideklarasikan, bentuk pernyataan yang

    digunakan :

    Contoh Bil3 = 0;

    b. Comparison

    U/ keperluan pengambilan keputusan diperlukan operator relasi sebagai berikut :

    Operator >, =,

  • 2014 7 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    e. Operasi Input/Output

    U/ memasukkan data kekomputer dalam Bahasa C/C++ Sbb : printf(),cin(),scanf(),

    getch(), getche()

    U/ mengeluarkan data : printf(), puts(), putchar(),cout().

    STATEMENT CONTROL a. Alternatif

    Terdiri dari pernyataan : - If , If - else , switch

    Bentuk umum :

    If ( kondisi )

    { pernyataan }

    If ( kondisi )

    { pernyataan True }

    else

    { pernyataan False }

    switch ( ekspresi )

    { case 1 : pernyataan 1

    break;

    case n : pernyataan n

    break }

    b. Pengulangan

    Pernyataan pengulangan terdiri dari :

    - do while

    - while

    - for

    do

    {

    pernyataan

    }

    while (kondisi)

  • 2014 8 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    while ( kondisi )

    {

    pernyataan

    }

    for (ungkapan1;ungkapan2;ungkapan3)

    {

    pernyataan

    }

    c. Percabangan

    Memerlukan label sebagai identitas cabang.

    label :

    {

    pernyataan

    }

    goto label

    STRUKTUR DATA LINIER Struktur data linier adalah struktur data yang menggambarkan hubungan tentang elemen-

    elemen yang berdekatan :

    Terdiri dari :

    ARRAY : a. Dimensi satu (vector matriks)

    b. Dimensi dua (matriks)

    c. Multi dimensi

    Aplikasi penggunaan array diantaranya :

    a. Stack (tumpukkan)

    b. Queue (antrian)

    c. Deque (antrian dengan 2 pintu )

  • 2014 9 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    LINKED LIST (LIST BERKAIT)

    a. Linier Singly linked list

    b. Linier Doubly linked list

    c. Circular singly linked list

    d. Circular doubley linked list

    Aplikasi linked list pada struktur data linier diantaranya :

    a. Linked stack

    b. Linked Queue

    Sedangkan multi linked list banyak digunakan pada struktur data non-linier yaitu

    untuk representasi tree maupun graph .

    PENGELOLAAN MEMORI Dapat secara STATIS atau DINAMIS

    Secara STATIS

    Menempati lokasi memori yang tetap(fixed size), tidak dapat dikembangkan atau

    diciutkan.

    Misal : array

    Alamat memori menjadi kunci array

    Secara DINAMIS

    Menempati lokasi memori dimana dapat dikembangkan atau diciutkan sesuai dengan

    kebutuhan.

    Pengelolaan memori secara dinamis(dynamic address) ditunjukkan oleh pointer.

  • 2014 10 Algoritma Pemrog. & Strukdata PusatBahan Ajar dan eLearning Tim Dosen http://www.mercubuana.ac.id

    Latihan Soal Buatlah algoritma sebagai berikut :

    1. Menampilkan deret 1 3 5 7 9

    2. Menampilkan deret 5 10 15 20 25 30

    3. Menampilkan deret 100 .. 0

    4. Menampilkan deret bilangan prima 1 100

    5. Menampilkan deret

    1

    2 3

    4 5 6

    7 8 9 10

    DaftarPustaka 1. Pengantar Struktur Data dan Algoritma, Bambang Wahyudi, Penerbit Andi Yogyakarta,

    Edisi 1, 2004 2. Struktur Data dengan C, Paulus Bambangwirawan Dipl.Inf, Penerbit Andi Yogyakarta,

    Edisi 1, 2004 3. Pengantar Algoritma dengan Bahasa C, Thompson Susabda Ngoen, Penerbit

    Salemba Teknika, Edisi 1, 2004 4. Pemrograman C++, Abdul Kadir, Penerbit Andi Yogyakarta, Edisi 1, 2002 5. Struktur Data dengan C, C++, Moh. Sjukani, Mitra Wacana