Rabu, 01 Juni 2016

STRUKTUR


Struktur  bermanfaat  untuk mengelompokkan sejumlah  data dengan tipe  yang berlainan. Perhatikan contoh struktur berikut ini:
struct data_tanggal
{
int tahun;
int bulan;
int tanggal;
};

Struktur di atas bernama data_tanggal, yang tersusun atas 3 unit penyusunnya yaitu  tahun,  tanggal,  dan  bulan.  Setelah  dibuat  struktur  tanggal,  selanjutnya struktur tersebut dapat digunakan sebagai tipe data suatu variabel, dalam hal ini disebut tipe data abstrak.

Berikut contoh programnya.
Contoh 1.
#include<iostream.h>
#include<conio.h>
void main()
{
struct data_tanggal
{
int tanggal;
int bulan;
int tahun;
};
data_tanggal tanggal_lahir;
tanggal_lahir.tanggal = 1;
tanggal_lahir.bulan = 9;
tanggal_lahir.tahun = 1979;
cout << tanggal_lahir.tanggal << ‘/’ << tanggal_lahir.bulan << ‘/’
<< tanggal_lahir.tahun;
}
Misalkan terdapat 2 buah variabel tgl1 dan tgl2 sama-sama bertipe data_tanggal. Selanjutnya  diinginkan  mengcopy isi  dari  tgl1  ke tgl2,  maka  dapat dilakukan dengan perintah assignment biasa. Contoh:
Contoh 2.
#include<iostream.h>
#include<conio.h>
void main()
{
struct data_tanggal
{
int tanggal;
int bulan;
int tahun;
};
data_tanggal tgl1, tgl2;
tgl1.tanggal = 1;
tgl1.bulan = 9;
tgl1.tahun = 1979;
tgl2 = tgl1; // atau
tgl2.tanggal = tgl1.tanggal;
tgl2.bulan = tgl1.bulan;
tgl2.tahun = tgl2.tahun;
cout << tgl1.tanggal << ‘/’ << tgl1.bulan << ‘/’ << tgl1.tahun << endl;
cout << tgl2.tanggal << ‘/’ << tgl2.bulan << ‘/’ << tgl2.tahun << endl;
}

Untuk membandingkan 2 buah struktur, masing-masing unit harus dibandingkan sendiri-sendiri, contoh:

if ((tgl1.tanggal == tgl2.tanggal) && (tgl1.bulan == tgl2.bulan) &&
  (tgl1.tahun == tgl2.tahun))
cout << “Isi strukturnya sama”;
else cout << “Isi struktur tak sama”;

Suatu struktur juga dapat digunakan untuk argumen/parameter suatu function.

Contoh 3.
#include<iostream.h>
#include<conio.h>
struct data
{
int x;
int y;
};
void tampilkan(data nilai)
void main()
{
data nilaiku;
nilaiku.x = 10;
nilaiku.y = 16;
tampilkan(nilaiku);
}
void tampilkan(data nilai)
{
cout << “Nilai x = “ << nilai.x << endl;
cout << “Nilai y = “ << nilai.y << endl;

}

Tidak ada komentar:

Posting Komentar