STRUKTUR DATA Apa itu struktur data? • Elemen-elemen data yang dikelompokkan bersama-sama dalam satu nama • Elemen-elemen (disebut member) bisa berasal dari tipe yang berbeda • Sintaks deklarasi: struct structure_name { member_type1 member_name1; member_type2 member_name2; member_type3 member_name3; . . } object_names; Mengapa harus ada struktur data? • Programmer membutuhkan suatu tipe data baru yang di dalamnya terdiri dari banyak tipe-tipe data. Biasanya digunakan untuk mengolah data yang mempunyai bebrapa parameter • Misalnya: data mahasiswa mempunyai parameter sbb: – – – – – nama : tipe string NIM : tipe string Kelas : tipe char Usia : tipe int Alamat : tipe string • Karena parameter-parameter tersebut saling berkaitan, dibutuhkan untuk mengelompokkan parameterparameter tsb dalam suatu variabel baru. Langkah-langkah penggunaan struktur data • Langkah 1: pembentukan struktur nama struktur beserta anggotanya • Langkah 2 : deklarasi variabel bertipe struktur Contoh lain struktur data • Data mobil: – Merk (string) – Tahun pembuatan(string) – Bobot kendaraan (int) – Ukuran kendaraan dalam m3 (int) • Bilangan kompleks – Real (float) – Imajiner (float) Contoh pembentukan struct ... //pembentukan struktur ‘mhs’ struct mhs { char nama[20]; char NIM[6]; char kelas; int usia; char alamat[30]; }; ... dengan ini, kita punya tipe data baru yaitu ‘mhs’ Deklarasi variabel bertipe struct ... mhs data_mahasiswa; ... Nama struktur Nama variabel Bentuk umumnya: Nama_struct nama_variabel; Dengan ini, kita punya variabel yang bernama data_mahasiswa yang bertipe ‘mhs’. ‘mhs’ sendiri pada dasarnya adalah struktur data Mengakses data dalam struktur • Contoh : mengakses elemen alamat pada variabel data_mahasiswa, yg bertipe mhs misal untuk operasi baca: cin>>data_mahasiswa.alamat; atau operasi tulis: cout<<data_mahasiswa.alamat; Array struktur data • Contoh: mhs data_mhs[20]; deklarasi variabel data_mhs bertipe array dari struktur mhs Masing-masing elemen array data_mhs mempunyai elemen struct nama,NIM, kelas, usia,dan alamat Pengaksesan elemen struct pada suatu array • Contoh : variabel data_mhs bertipe array dari tipe struktur mhs mhs data_mhs[10]; • Program akan mengakses elemen struct nama pada data_mhs ke-5,maka sintaksnya: cin>>data_mhs[5].nama; Pointer ke struktur • Contoh: masih menggunakan struktur ‘mhs’, akan dibuat suatu variabel bertipe pointer ke ‘mhs’. Deklarasi variabelnya: mhs *ptr_mhs; Inisialisasi pointer struktur • Inisialisasi pointer struktur bisa menggunakan perintah malloc sbb: ptr_mhs=(mhs*)malloc(jumlah*sizeof(mhs)); Pengaksesan suatu nilai pada pointer struktur • Jika pada keadaan ‘biasa’, pengaksesan elemen pada suatu struct dilakukan dengan operator titik (misalnya data_mhs.nama), pada pointer struktur digunakan operator panah untuk mengakses elemennya, misalnya: cin>>ptr_mhs->nama;