View
90
Download
1
Category
Preview:
DESCRIPTION
Pengenalan Kepada Algoritma & Struktur Data. (Part II) By Suzila Yusof. Struktur Data Dalam Pengaturcaraan. Struktur ( Structure) dalam bahasa C++ diwakili oleh kata kunci struct yang menunjukkan kepada struktur data untuk membenarkan pelbagai jenis data disimpan dalam satu nama. - PowerPoint PPT Presentation
Citation preview
Pengenalan Kepada Algoritma & Struktur Data
(Part II)
By Suzila Yusof
Struktur Data Dalam Pengaturcaraan Struktur ( Structure) dalam bahasa C++
diwakili oleh kata kunci struct yang menunjukkan kepada struktur data untuk membenarkan pelbagai jenis data disimpan dalam satu nama.
Walaupun jenis data ini berbeza, ttp ia saling berkait antara satu sama lain.
Struktur Data Dalam Pengaturcaraansamb… Tatasusunan merupakan satu bentuk struktur
data tetapi data yang disimpan adalah dari jenis yg sama.
Contoh struktur data :- tatasusunan (array)
- senarai berpaut (linked list) - pepohon (tree) - tindanan (stack) - baris gilir (queue)
Istilah-istilah yang digunakan dalam struktur data Data : merupakan nilai/set nilai-nilai tertentu Item Data : merujuk kepada satu unit nilai Item Kumpulan : Item yang dipecahkan kpd sub-sub
item Item Elementary : Item data yang tidak dipecahkan Contoh :
Nama (Item Kumpulan) boleh dipecahkan kepada NamaPertama dan NamaAkhir tetapi noKP (Item Elementary) wujud sebagai satu item tunggal yg tidak boleh dipecahkan.
Definisi Struktur
Struktur adalah koleksi data yang berkaitan menggunakan satu nama yang sama.
Elemen struktur dikenali sebagai ahli, dan boleh terdiri drp jenis yang sama
Setiap struktur yang ditakrifkan boleh mempunyai nama struktur yang sama yang dikenali sebagai tag struktur
Penyataan struct digunakan bagi menakrifkan struktur. Ia menakrifkan jenis data baru dan mempunyai lebih drp 1 ahli.
Definisi Struktur samb…
Sintaks
struct [tag_struktur]
{
takrifan_ahli
}pembolehubahStruktur;
Definisi Struktur samb…
Setiap takrifan ahli adalah takrifan pembolehubah normal seperti int i atau float sales [20]
Atau sebarang penakrifan pembolehubah yang sah termasuklah pointer sekiranyaa struktur tersebut memerlukan pointer
Pada akhir penakrifan struktur sebelum (;) terakhir, anda boleh menyatakan satu atau lebih pembolehubah struktur.
Ini akan meminta pemproses menyediakan ruang untuk pembolehubah tersebut dan jenis pembolehubah di dalam struktur.
Definisi Struktur samb…
Rekod PelajarRekod PekerjaRekod PelangganRekod PenumpangRekod Inventori
Dalam Bahasa C/C++Rekod = StrukturMedan/Lokasi = ahli data (p/u)
Rekod Pekerja-No Pekerja-Nama Penuh-Jawatan-Gaji Pokok
Setiap REKOD mempunyai MEDAN/LOKASI data yang tersendiri
REKOD
Contoh
Rekod Pelajar Pengisytiharan pembolehubahMedan : No KP Nama Penuh Kursus Semester HPNM
char NoKP[15];char NamaPenuh[35];char Kursus[15];int Semester;float HPNM;
struct RekodPelajar{ char NoKP[15]; char NamaPenuh[35]; char Kursus[15]; int Semester; float HPNM;} pelajar_JTMK;
Takrifan StrukturTag struktur
Ahli data
Pembolehubah Struktur
Pengisytiharan Struktur & Pembolehubah Struktur Secara Berasinganstruct RekodPelajar
{ char NoKP[15]; char NamaPenuh[35]; char Kursus[15]; int Semester; float HPNM;};struct RekodPelajar pelajar_JTMK;
Pengisytiharan Struktur & Pembolehubah Struktur Secara Serentak
struct RekodPelajar{ char NoKP[15]; char NamaPenuh[35]; char Kursus[15]; int Semester; float HPNM;} pelajar_JTMK;
Pengisytiharan Pembolehubah pelajar_JTMK Tanpa Nama Struktur
struct { char NoKP[15]; char NamaPenuh[35]; char Kursus[15]; int Semester; float HPNM;} Pelajar_JTMK;
Pengisytiharan Struktur & Pembolehubah Struktur Dengan Umpukan Nilai Awal
struct RekodPelajar{ char NoKP[15]; char NamaPenuh[35]; char Kursus[15]; int Semester; float HPNM;} pelajar_JTMK = {001122115533, “Ahmad Ali Abu”, “DIP”,5, 3.99};
Perwakilan Memori
Pelajar_JTMK
NoKPNamaPenuhKursusSemesterHPNM
001122115533Ahmad Ali AbuDIP53.99
Rujukan Lokasi
Lokasi bagi ahli struktur dirujuk menggunakan dot operator
Sintaks :
contoh
pembolehubahStruktur.ahliStruktur
NoKPNamaPenuhKursusSemesterHPNM
Lokasi ini dirujuk sebagai : pelajar_JTMK.Kursus
Gambaran 2 p/u struktur RekodPelajar dengan umpukan nilai awal
001101111001Dollah Dolly DIP53.33
990110115566Minah Molly DTP63.77
NoKP
Kursus
HPNM
NamaPenuh
Semester
NoKP
Kursus
HPNM
NamaPenuh
Semester
Pelajar_JTMK
Pelajar_JKE
Contoh-contoh Operasi Ke Atas Unsur Struktur
OperasiPenyataan
Mencetak nama penuh pelajar JTMKCout << pelajar_JTMK.NamaPenuh;
Menukarkan no kad pengenalan pelajar JTMK
pelajar_JTMK.NoKP = 001111111011;
Menukarkan ejaan nama pelajar JKEpelajar_JKE.NamaPenuh[11]=‘i’;
Menukar rekod pelajar JTMK untuk menyamai rekod pelajar JKE
pelajar_JTMK = pelajar_JKE;
Struktur Tersarang
Keadaan di mana dalam struktur yang sama terdapat unsur atau ahli struktur yang lain.
Tujuannya adalah untuk menstrukturkan rekod mengikut klasifikasi tertentu
Pengisytiharan Struktur Dengan Banyak Unsur
Struct pelajar{ char nama; int no_pend; char KodJab; int umur; char jantina; int marka_ kuiz1; int markah_kuiz2; int markah_kuiz3; int markah_tugasan1; int markah_tugasan2; int markah_amali1; int markah amali2; char gred;} rekodPelajar;
Pengisytiharan Struktur Dengan Struktur Tersarang
Struct peribadi_pelajar{ char nama; int no_pend; char KodJab; int umur; char jantina;};struct markah_pelajar{ int markah_ kuiz1; int markah_kuiz2; int markah_kuiz3; int markah_tugasan1; int markah_tugasan2; int markah_amali1; int markah amali2;};struct pelajar{struct peribadi_pelajar peribadi;Struct markah_pelajar markah;char gred;};
Cara Lain Pengisytiharan Struktur Dengan Struktur TersarangStruct pelajar
{ struct { char nama; int no_pend; char KodJab; int umur; char jantina; } peribadi; struct { int markah_ kuiz1; int markah_kuiz2; int markah_kuiz3; int markah_tugasan1; int markah_tugasan2; int markah_amali1; int markah amali2; } markah; char gred;};
Struktur Tersarang samb…
Pengisytiharan p/u dan umpukan nilai awal bagi struktur tersarang adalah sama seperti pengisytiharan p/u struktur biasa. Contoh:
untuk memperkemaskan umpukan bg struktur tersarang,
penggunaan tan ‘{‘ dan ‘}’ untuk kumpulan struktur yang sama amat digalakkan. Contoh :
struct pelajar pAli = {“Ali Abu”, 722, “JTMK”, 20, ‘L’, 5, 4, 4, 8, 8, 7, 6, ‘B+’};
struct pelajar pAli = {{“Ali Abu”, 722, “JTMK”, 20, ‘L’ }, {5, 4, 4, 8, 8, 7, 6}, ‘B+’};
Contoh Rujukan Unsur Bagi Struktur Tersarang
cout <<“NAMA:” <<pAli.peribadi.nama<<“\n;
cout <<“MARKAH KUIZ 3:” <<pAli.markah.markah_kuiz3<<“\n;
cout <<“GRED:” <<pAli.gred<<“\n;
Recommended