STRUCT
STRUCT
DEFINISI
User defined data type
Berisi beberapa variabel yang bisa berbeda
tipenya masing-masing disebut elemen
Mempunyai nama yang sama
Mirip representasi sebuah object beserta properties-
nya.
keyword yang memungkinkan kita untuk membuat
sebuah deklarasi untuk membuat
pengelompokan variabel dengan tipe data yang
berbeda.
Contoh: struct MHS punya elemen untuk NIM, Nama dan
Alamat.
STRUCT
DEKLARASI
Syntax:
struct nama_struct {
tipe_data_1 nama_var_1;
tipe_data_2 nama_var_2;
tipe_data_3 nama_var_3;
……
};
Contoh:
struct barang {
char Kode[5];
char Nama[30];
int Unit;
float Harga;
}
STRUCT
Nama_struct : merupakan identitas dari struct tersebut
Variabel : merupakan sepasang block, tempat dimana semua
variabel dikelompokan sebagai member dari struct tersebut.
pembuatan variabel di dalam struct sama sekali tidak ada
perbedaan dengan mendirikan variabel biasa.
Nama_object : merupakan deklarasi yang menggunakan struct
tersebut menjadi tipe data dari deklarasi tersebut. Kita dapat
mendirikan banyak object di tempat tersebut, masing-masing
dipisahkan dengan tanda koma , . Object selalu diletakan
setelah penutup block dan sebelum semicolon ; .
STRUCT
Penjelasan Object
Struct sebenarnya hanyalah deklarasi untuk membuat sebuah
tipe data baru yang didirikan oleh programmer sebagai data
structure. Data structure tersebut akan digunakan sebagai
pembuatan object, pembuatan object itu dapat dilakukan
didalam deklarasi struct atau diluar deklarasi struct.
Pembuaan object sendiri sama seperti pembuatan variabel
seperti biasanya, yang berbeda hanya kita menggunakan tipe
structure sebagai tipe datanya.
Penjelasan Object
STRUCT
CARA PENGAKSESAN
Untuk mengakses tiap elemen di dalam sebuah struct
digunakan operator titik (.)
Syntax: nama_var_struct . nama_var_elemen;
Contoh:
CARA PENGAKSESAN MEMBER
DARI STRUCT
Member adalah variabel yang didirikan di dalam
struct, dijadikan sebagai satu bagian dari struct.
Setelah kita berhasil membuat sebuah deklarasi
object. untuk mengakses member struct dari
object tersebut kita membutuhkan Member Access
Operator . di antara nama object dan nama
anggota variabel struct.
Cara Inisialisasi object
Inisialisasi adalah suatu tindakan untuk memberikan
nilai awal pada suatu variabel. pada object kita
dimungkinkan untuk memberikan nilai awal dengan
beberapa cara yaitu, non-static member initialization,
initializer list, dan uniform initialization.
Cara Inisialisasi object
Non-static Member adalah suatu tindakan memberikan
nilai awal member structure kepada object dengan cara
memberikan nilai di saat mendirikan member dari struct.
Dengan cara tersebut, nilai inisialisasi akan berlaku ke
semua object yang menggunakan tipe structure
tersebut.
Cara Inisialisasi object
Cara Inisialisasi object
Initializer List adalah cara inisialisasi dengan
memberikan nilai awal disaat mendirikan object, nilai
tersebut hanya akan berlaku pada object itu sendiri.
Uniform Initialization merupakan inisialisasi yang masih
sama seperti initializer list, hanya saja tidak
menggunakan tanda = .
Cara Inisialisasi object
Contoh Soal
Buatlah program untuk menghitung gaji karyawan
dengan menginputkan jam kerja. Selain itu perlu
diketahui posisi karyawan tsb di perusahaan.
NO Posisi Gaji Pokok
1 Direktur 4.000.000
2 Manajer 3.000.000
3 Karyawan 2.000.000
Jumlah jam kerja normal per-harinya adalah 8 jam, lebih
dari itu dihitung lembur. Lembur dihitung 30.000/jam.
Perhitungan Gaji :
Gaji Pokok (tergantung jenis posisi) + lembur
Typedef
typedef : adalah alias (nama lain)
Digunakan untuk mempersingkat penulisan, khususnya
untuk nama/identifer yang panjang.
typedef sering digunakan pada structure
Contoh:
typedef struct MahasiswaUnram{
char Nama[20];
int Nim;
float Ipk;
}Mhs;
Pada contoh diatas Mhs adalah nama lain (alias) dari
struct MahasiswaUnram, dan berfungsi sebagai tipedata
baru.
Untuk mendefinisikan variabel struct dengan cara sbb
Mhs ali, tono;
NESTED STRUCT
Sebuah kondisi dimana di dalam sebuah struct
terdapat tipe data berupa struct lagi.
Contoh
NESTED STRUCT
Pada penulisan di atas setiap kita mendirikan object
dengan tipe structure siswa, maka kita akan otomatis
mendapatkan data structure anak pada object ber
identitas anak.
Cara akses Nested Struct
untuk mengakses anggota struct kita membutuhkan tanda
”Member Access Operator ( . )” di antara nama object.
Cara akses Nested Struct
NESTED STRUCT
STRUCT OF ARRAY
Sebuah struct yang di dalamnya terdapat
variable/ elemen yang bertipe array.
ARRAY OF STRUCT
Sebuah array yang setiap data elemennya
bertipe struct. Umumnya dipakai untuk
menyimpan object data yang terstruktur,
misal: data mahasiswa, karyawan, buku,
barang, dsb.
Latihan
Buatlah struct sebagai berikut :
Struct Mhs berisi Nim, Nama, Alamat,
Tempat, TanggalLahir
Alamat merupakan struct yang terdiri
dari NamaJalan, NomorRumah, Kota,
Provinsi
TanggalLahir merupakan struct yang
berisi Tanggal, Bulan dan Tahun
Tampilkanlah untuk 5 Mahasiswa saja
Latihan
Berdasarkan struct berikut :
struct automobile {
int year;
char model[8];
int engine_power;
float weight;
};
Buatlah aplikasi menggunakan array of
structure untuk menginput 5 jenis mobil,
kemudian tampilkan dalam format yang layak.
Latihan
Menggunakan struct berikut :
struct ipkmhs {
char nim[11];
char nama[30];
float ipk;
};
Buatlah program untuk menginput data 5
mahasiswa, dan tampilkan data mahasiswa ipk
>= 3.0 dan ipk < 3.0
Contoh :
Mhs ipk >=3.0 :
Andi
Budi
Candra
Mhs ipk < 3.0 :
Dadu
Emin 30
Latihan
Buatlah sebuah struct :
struct nilaimhs {
char Nim[11];
char Nama [30];
char KodeMtk [5];
int sks;
char grade;
};
Buat program (tanpa menggunakan
array) untuk menginput struct tersebut,
kemudian tampilkan nim, nama,
kodemtk, sks, grade.
31
Latihan
Berdasarkan soal sebelumnya, dengan
mempertimbangkan bobot grade dan
sks :
Grade BobotGrade
A 4
B 3
C 2
D 1
E 0
Buatlah program menggunakan array of
struct untuk menginput 5 nilai
matakuliah pada semester
32 1, kemudian
tampilkan IP mahasiswa.