STRUCTURE Struktur (Structure = struct) merupakan suatu struktur data yang terdiri dari satu atau lebih variabel yang bertipe data sama atau berbeda. Struktur secara logik membuat suatu tipe data baru(user defined type) yang dapat dipergunakan untuk menampung data / informasi yang bersifat majemuk. Misalnya, data seorang mahasiswa BINUS, dimana tiap mahasiswa mempunyai: Nim, Nama, Alamat, Nilai, IPK, SKS, dll, dan semua itu harus dipandang sebagai satu data mahasiswa. Structure - Yessy Asri
Deklarasi Struktur : struct Nama_Struktur { blok_anggota_struktur; }; dimana: Nama_Struktur (structTag) -> tipe_data baru Contoh : struct Titik { double x; // anggota struktur double y; // anggota struktur struct point { float x, y; }; Structure - Yessy Asri
struct Mahasiswa { char NIM[11]; char Nama[30]; char Mata_Kuliah[30]; float Nilai; } struct Barang { char Id[11], Nama_Barang[30]; int Jumlah; float Harga; }; Deklarasi Variabel Struktur : Struktur yang telah didefinisikan dapat dipergunakan sebagai tipe data dalam membentuk satu variabel. Contoh : struct Titik { double x; double y; }; Titik p1, p2, p3; Titik p[3]; Structure - Yessy Asri
struct Titik { double x; double y; } p1, p2, p3, p[3]; atau struct Titik { double x; double y; } p1, p2, p3, p[3]; struct { double x; double y; } p1, p2, p3, p[3]; Akses Anggota Strktur : C++ memberikan fasilitas inisialisasi satu struktur serta akses anggota struktur. Contoh : struct Titik { double x; double y; }; Titik p1 = { 1.0, 8.5 }; Titik p1, p2; p1.x = 1.0; p1.y = 8.5; p2.x = 5.0; p2.y = 7.2; Structure - Yessy Asri
#include <iostream.h> #include <iomanip.h> Contoh Program C++ : #include <iostream.h> #include <iomanip.h> #include <conio.h> #include <stdio.h> struct Mahasiswa { char Nim[11]; char Nama[20]; char Mata_Kuliah[20]; float Nilai; }; main() { Mahasiswa M[3]; clrscr(); for ( int i=0; i<3; i++ ) cout << "Nim : "; gets ( M[i].Nim ); cout << "Nama : "; gets ( M[i].Nama ); cout << "Mata Kuliah : "; gets ( M[i].Mata_Kuliah ); cout << "Nilai : "; cin >> M[i].Nilai; cout << "\ n"; } Structure - Yessy Asri
cout << " No Nim Nama Mahasiswa Mata Kuliah Nilai\ n"; for ( i=0; i<3; i++ ) { printf ("%4d % -11s %-20s %- 20s %5.2f \n", i+1, M[i].Nim, M[i].Nama, M[i].Mata_Kuliah, M[i].Nilai ); } getch(); return 0; Structure - Yessy Asri
Struktur dapat disusun dalam struktur yang lain ( Nested Structured ). Struktur Bertingkat : Struktur dapat disusun dalam struktur yang lain ( Nested Structured ). Contoh : struct Jarak { int feet; float inches }; struct Kamar { Jarak Panjang; Jarak Lebar; }; Contoh Program C++ : #include <iostream.h> #include <conio.h> struct Jarak { int feet; float inches; }; struct Kamar { Jarak Panjang; Jarak Lebar; } Structure - Yessy Asri
Makan.Panjang.inches = 6.5; Makan.Lebar.feet = 10; void main() { Kamar Makan; Makan.Panjang.inches = 6.5; Makan.Lebar.feet = 10; Makan.Lebar.inches = 5.0; float P = Makan.Panjang.feet + Makan.Panjang.inches/12; float L = Makan.Lebar.feet + Makan.Lebar.inches/12; float Luas = P * L; cout << "Luas kamar makan = "; cout.width(7); cout.precision(2); cout << Luas << " feet^2"; getch(); } Structure - Yessy Asri