AchmadYasid Pengenalan Array dan Record Procedure dan Fungsi Sorting Searching Stack Queue Link List dan variasinya Double link list Tree 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 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 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 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 besar {A,B,C,….,Y,Z} Integer Bilangan bulat yang mempunyai nilai antara batas bawah dan batas atas. Real atau Floating Point Angka dengan bilangan dibelakang koma 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 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. 1. Sebagai Peubah Contoh : L : array[1..25] of integer NamaMhs : array[‘a’..’j’] of string 2. Sebagai tipe baru Contoh : type LarikInt : array[1..25] of integer P : LarikInt 3. Mendefinisikan ukuran maksimum elemen larik sebagai konstanta Contoh : Const Nmaks = 10 type Larikint : array[1..Nmaks] of integer P : LarikInt Cara menterjemahkan ke bahasa C : #define Nmaks 10 typedef int Larikint[Nmaks+1]; Larikint P; Elemen larik diacu melalui indeksnya. Nilai indek harus terdefinisi. Contoh cara mengacu elemen larik adalah : L[4] {mengacu elemen keempat dari larik L } NamaMhs[‘b’] {mengacu elemen kedua dari larik NamaMhs} P[k] {mengacu elemen ke-k dari larik P,asalkan nilai k sudah terdefinisi } menginisialisasi elemen larik adalah memberikan harga awal untuk seluruh elemen larik, misalnya menginisialisasi dengan nilai 0 seperti di bawah ini : Procedure InisDgn0(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 di bawah ini : Procedure BacaLarik(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 #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]); } #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 (int i=0;i<7;i++) { printf("Elemen ke-%i= %d\talamat: %x\n",i,bil[i],&bil[i]); } getch(); return 0; } 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