Sabtu, 13 Mei 2017

Struktur Data Menggunakan Record.

Record/Struct adalah sejumlah elemen yang disebut field. Kalau semua elemen array harus mempunyai tipe data yang sama, maka tiap-tiap elemen pada Record/Struct dapat memiliki tipe data yang berbeda.


A. RECORD/STRUCT

Bentuk umum deklarasi Record/Struct

Algoritma :

namaVar : record

< namaField1 : tipeField1 ,

namaField2 : tipeField2 ,

… …

namaFieldn : tipeFieldn ,

>

Atau namavar dapat dipisah dari deklarasi tiperecordnya, sehingga menjadi :

Type namaTipeRecord : record

<  namaField1 : tipeField1 ,

namaField2 : tipeField2 ,

… …

namaFieldn : tipeFieldn ,

>

namaVar :  namaTipeRecord








Bahasa C++ :

struct namaTipeStruct

{

tipeField1  namaField1;

tipeField2  namaField2;

… …

tipeFieldn  namaFieldn;

} namaVar;

Atau namavar dapat dipisah dari deklarasi tiperecordnya, sehingga menjadi :

typedef  struct

{

tipefield1 namafield1;

tipefield2 namafield2;

… …

tipefieldn namafieldn;

} namatipestruct;

namatipestruct  namavar;

Catatan : namaVar bisa lebih dari satu

Contoh record/struct :

Algoritma :

Deklarasi

Type Mahasiswa : Record <  NIM : integer,

Nama : string,

KodeMK : string,

NilaiHuruf : char >

Mhs1,Mhs2 :  Mahasiswa

Bahasa C++ :

//deklarasi

typedef  struct  {  int NIM;

char Nama[20];

char KodeMK[10];

char NilaiHuruf;

} Mahasiswa;

Mahasiswa  Mhs1,Mhs2;

Cara mengakses elemen record/structur :

namavar.namafield

Contoh Program :

#include <iostream>

#include <string.h>

typedef struct

{ int tanggal, bulan, tahun;

} data_tanggal tgl_lahir;

typedef struct

{ char nama[30];

data_tanggal tgl_lahir;

{ data_rekan;

data_rekan info_rekan;

Main()

{

strcpy(info_rekan.nama,”Budi”);

info_rekan.tgl-lahir.tanggal = 30;

info_rekan.tgl_lahir.bulan = 4;

info_rekan.tgl_lahir.tahun = 2002;

cout << “Nama   : “ <<info_rekan.nama;

cout << “\nTanggal Lahir :”;

cout << “-“ << info_rekan.tgl_lahir.bulan;

cout << “-“ << info_rekan.tgl_lahir.tahun;

}

Contoh Variasi program Cara Mendeklarasikan Structur :

#include<iostream.h>

#include<string.h>

main()

{

struct data_tanggal

{  int tanggal, bulan, tahun; };

struct data_rekan

{  char nama[30];

struct data_tanggal  tgl_lahir;

};

struct data_rekan info_rekan;

strcpy(info_rekan.nama,”Hanif”);

info_rekan.tgl_lahir.tanggal = 30;

info_rekan.tgl_lahir.bulan = 4;

info_rekan.tgl_lahir.tahun = 2002;

cout<<“Nama  : “<<info_rekan.nama;

cout<<“\nTanggal lahir :”;

cout<<info_rekan.tgl_lahir.tanggal;

cout<<“-“<<info_rekan.tgl_lahir.bulan;

cout<<“-“<<info_rekan.tgl_lahir.tahun;

}

B. ARRAY OF RECORD

Algoritma :

namaVar : record

< namaField1 : tipeField1 ,

namaField2 : tipeField2 ,

… …

namaFieldn : tipeFieldn ,

>

namaVar : array[rangeindex] of namaTipeRecord

Bahasa C++ :

struct namaTipeStruct

{

tipeField1  namaField1;

tipeField2  namaField2;

… …

tipeFieldn  namaFieldn;

} namaVar;

namaTipeStruct  namaVar[ukuran];

Tidak ada komentar:

Posting Komentar