Achmad Yasid Struktur Data Materi Pengenalan Array dan

  • Slides: 20
Download presentation
Achmad Yasid Struktur Data

Achmad Yasid Struktur Data

Materi �Pengenalan �Array dan Record �Procedure dan Fungsi �Sorting �Searching �Stack �Queue �Link List

Materi �Pengenalan �Array dan Record �Procedure dan Fungsi �Sorting �Searching �Stack �Queue �Link List dan variasinya �Double link list �Tree

Pengertian Struktur Data �Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer

Pengertian Struktur Data �Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien �Data Representasi fakta dari dunia nyata �Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol

Tipe Data Tipe data dapat dikategorikan menjadi : � 1. Type data sederhana a.

Tipe Data Tipe data dapat dikategorikan menjadi : � 1. Type data sederhana a. Type data sederhana tunggal, misalnya Integer, real, boolean dan karakter b. Type data sederhana majemuk, misalnya String � 2. Struktur Data, meliputi a. Struktur data sederhana, misalnya array dan record

�b. Struktur data majemuk, yang terdiri dari Linier : Stack, Queue, serta List dan

�b. Struktur data majemuk, yang terdiri dari Linier : Stack, Queue, serta List dan Multilist Non Linie �Pemakaian struktur data yang tepat di dalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhanar : Pohon Biner dan Graph

Tipe Data Sederhana Bit Hanya mengandung dua nilai. Biasa kita kenal 0 atau 1

Tipe Data Sederhana Bit Hanya mengandung dua nilai. Biasa kita kenal 0 atau 1 atau True atau False. Group/gabungan dari bits lazim disebut word � Boolean (logical) Hanya mempunyai dua nilai. True atau False. Operator boolean seperti : And, Or, Not, Xor � .

�Character Himpunan character. Misalkan : Bilangan decimal {1, 2, 3, …, 8, 9} Huruf

�Character Himpunan character. Misalkan : Bilangan decimal {1, 2, 3, …, 8, 9} Huruf besar {A, B, C, …. , Y, Z} �Integer Bilangan bulat yang mempunyai nilai antara batas bawah dan batas. �Real atau Floating Point �Angka dengan bilangan dibelakang koma

Tipe data pada C++

Tipe data pada C++

Array/Larik �Array struktur data statik yang menyimpan sekumpulan elemen dengan tipe data yang sama

Array/Larik �Array struktur data statik yang menyimpan sekumpulan elemen dengan tipe data yang sama �Setiap elemen diakses langsung melaui indeknya �Indeks larik harus tipe data yang menyatakan keterurutan misalnya integer atau karakter

Array �Banyaknya elemen larik harus sudah diketahui sebelum program dieksekusi. �Tipe elemen larik dapat

Array �Banyaknya elemen larik harus sudah diketahui sebelum program dieksekusi. �Tipe elemen larik dapat berupa tipe sederhana, tipe terstruktur atau tipe larik lain. �Nama lain array adalah Larik, tabel atau vektor �Array dapat berupa array 1 dimensi, 2 dimensi, bahkan n-dimensi.

Pendefinisian Array � 1. Sebagai Peubah Contoh : L : array[1. . 25] of

Pendefinisian Array � 1. Sebagai Peubah Contoh : L : array[1. . 25] of integer Nama. Mhs : array[‘a’. . ’j’] of string 2. Sebagai tipe baru Contoh : type Larik. Int : array[1. . 25] of integer P : Larik. Int

3. Mendefinisikan ukuran maksimum elemen larik sebagai konstanta Contoh : Const Nmaks = 10

3. Mendefinisikan ukuran maksimum elemen larik sebagai konstanta Contoh : Const Nmaks = 10 type Larikint : array[1. . Nmaks] of integer P : Larik. Int �Cara menterjemahkan ke bahasa C : #define Nmaks 10 typedef int Larikint[Nmaks+1]; Larikint P;

Array 1 dimensi

Array 1 dimensi

Cara Mengacu Elemen Larik Elemen larik diacu melalui indeksnya. Nilai indek harus terdefinisi. Contoh

Cara Mengacu Elemen Larik Elemen larik diacu melalui indeksnya. Nilai indek harus terdefinisi. Contoh cara mengacu elemen larik adalah : L[4] {mengacu elemen keempat dari larik L } Nama. Mhs[‘b’] {mengacu elemen kedua dari larik Nama. Mhs} P[k] {mengacu elemen ke-k dari larik P, asalkan nilai k sudah terdefinisi }

Menginisialisasi Larik menginisialisasi elemen larik adalah memberikan harga awal untuk seluruh elemen larik, misalnya

Menginisialisasi Larik menginisialisasi elemen larik adalah memberikan harga awal untuk seluruh elemen larik, misalnya menginisialisasi dengan nilai 0 seperti di bawah ini : Procedure Inis. Dgn 0(output A: larik, input N: integer) {menginisialisasi setiap elemen larik A[1. . N] dengan nol} {K. Awal : N adalah banyak elemen efektif larik, nilainya terdefinisi} {K. Akhir : seluruh elemen larik A bernilai nol} Deklarasi : K : integer Deskripsi : for k 1 to N do A[k] 0 endfor

�� Elemen larik dapat diisi dengan nilai yang dibaca dari piranti masukan seperti contoh

�� Elemen larik dapat diisi dengan nilai yang dibaca dari piranti masukan seperti contoh di bawah ini : Procedure Baca. Larik(output A: larik, input N: integer) {mengisi elemen larik A[1. . N] dengan nilai yang dibaca dari piranti masukan} {K. Awal : N adalah jumlah elemen efektif larik, nilainya terdefinisi} {K. Akhir : seluruh elemen larik A berisi nilai-nilai yang dibaca dari piranti masukan} Deklarasi : K : integer Deskripsi : for k 1 to N do read (A[k]) endfor

Listing Program #include <stdio. h> void main() { char data[3]; /* Mengisi elemen array

Listing Program #include <stdio. h> void main() { char data[3]; /* Mengisi elemen array */ data[1]='A'; data[2]='B'; data[3]='C'; /*Menampilkan data dari array */ printf("%c n", data[1]); printf("%c n", data[2]); printf("%c n", data[3]); }

Input Output Array #include <stdio. h> #include <conio. h> void main() { int nilai[5],

Input Output Array #include <stdio. h> #include <conio. h> void main() { int nilai[5], x; printf("Masukkan nilai : n"); for (x=0; x<5; x++) { printf("Nilai Angka : "); scanf("%d", &nilai[x]); } printf("n"); } printf("Membaca nilai : n"); for (x=0; x<5; x++) { printf("Nilai Angka : %d n", nilai[x]); } getch();

#include <stdio. h> #include <conio. h> int main() { int bil[7] = {0}; for

#include <stdio. h> #include <conio. h> int main() { int bil[7] = {0}; for (int i=0; i<7; i++) { printf("Elemen ke-%i= %dtalamat: %xn", i, bil[i], &bil[i]); } getch(); return 0; }

Tugas � 1. Buat Array 1 dimensi yang berisi data Nama Mahasiswa dengan maks

Tugas � 1. Buat Array 1 dimensi yang berisi data Nama Mahasiswa dengan maks indek =10 dan inputkan serta tampilkan data nama mahasiswa pada array tersebut. Gunakan Bahasa Pemrograman C