PENGENALAN KEPADA ALGORITMA & STRUKTUR DATA

Similar documents
Pengenalan Sistem Maklumat Dalam Pendidikan

COMBINING TABLES. Akademi Audit Negara. CAATs ASAS ACL / 1

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11

INSTRUCTION: This section consists of FOUR (4) questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi EMPAT (4) soalan. Jawab SEMUA soalan.

UNIVERSITI SAINS MALAYSIA

MANAGE COURSE RESOURCES LABEL TEXT PAGE URL BOOK FILE FOLDER IMS CONTENT PACKAGE

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN

UNIVERSITI SAINS MALAYSIA. CPT103/ CPM211 Struktur Data & Paradigma Pengaturcaraan

DOKUMEN TIDAK TERKAWAL

PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS

PART A SULIT (EKT 221) BAHAGIAN A. Answer ALL questions. Question 1. a) Briefly explain the concept of Clock Gating.

MSS 318 Discrete Mathematics [Matematik Diskret]

UNIVERSITI SAINS MALAYSIA. CPT111/CPM111 Principles of Programming [Prinsip Pengaturcaraan]

B,8 PERKHIDMATAN KREDIT DAN PERBANKAN. Pemindahan Data PROSEDUR UNIT KOMPUTER. BPKP/KlOK-117 Bilangan Semakan : 0 Tarikh : PERUBAHAN.

M2U MANUAL PENGGUNA USER MANUAL M2UNHJ. 0 P a g e BAHAGIAN SIMPANAN DAN PENGELUARAN JABATAN KHIDMAT PENDEPOSIT DAN OPERASI LEMBAGA TABUNG HAJI

PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)

PANDUAN PENGGUNA (PENSYARAH)

MICROSOFT EXCEL. Membina Hamparan Elektronik Fungsi Hamparan Elektronik

Panduan Menggunakan Autoresponder FreeAutobot.com

Pengguna akan diberikan Username dan Password oleh Administrator untuk login sebagai admin/conference Manager bagi conference yang akan diadakan.

UNIVERSITI SAINS MALAYSIA. CPT113 Programming Methodology & Data Structures [Metodologi Pengaturcaraan & Struktur Data]

Panduan Guru Maker UNO/ Arduino

UNIVERSITI SAINS MALAYSIA. CPT101 Prinsip-Prinsip Pengaturcaraan

TEKNOLOGI, GADJET & KEIBUBAPAAN

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)

UNIVERSITI SAINS MALAYSIA. CPT101 Prinsip-Prinsip Pengaturcaraan

KOLEJ MULTIMEDIA JALAN GURNEY KIRI KUALA LUMPUR

MAT 181 Programming For Scientific Applications [Pengaturcaraan Untuk Penggunaan Sains]

UNIVERSITI SAINS MALAYSIA. CPT103 Struktur Data & Paradigma Pengaturcaraan

Panduan Pengguna Autodesk Education Community

MAT181 Programming For Scientific Applications [Pengaturcaraan Untuk Penggunaan Sains]

PROFORMA KURSUS PUSAT PENGAJIAN SAINS KOMPUTER FAKULTI TEKNOLOGI DAN SAINS MAKLUMAT UNIVERSITI KEBANGSAAN MALAYSIA

MAT 181 Programming For Scientific Applications [Pengaturcaraan Untuk Penggunaan Sains]

EEE 428 SISTEM KOMPUTER

MAT 181 Programming for Scientific Applications [Pengaturcaraan untuk Penggunaan Sains]

UNIVERSITI SAINS MALAYSIA. CMT322/CMM323 Web Engineering & Technologies [Kejuruteraan & Teknologi Web]

Registration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)

UNIVERSITI SAINS MALAYSIA. Peperiksaan Semester Pertama Sidang Akademik 2003/2004. September/Oktober 2003

ALAMAT IP. Sofirudman Mazuin Asmarul shazila Ainul bariah

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

LAB 5: WORKING WITH DATA

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

UNIVERSITI SAINS MALAYSIA. CPT344 Computer Vision & Image Processing [Penglihatan Komputer & Pemprosesan Imej]

UNIVERSITI MALAYSIA PERLIS. DNT 126 Basic Computer Programming [Asas Pengaturcaraan Komputer]

Modul Latihan: Pembangunan Applikasi Pangkalan Data dan JSP Bahagian 1

Lab 4 : Sorting Techniques

Registration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)

UNIVERSITI SAINS MALAYSIA. CPT103/CPM211 Struktur Data & Paradigma Pengaturcaraan

UNIVERSITI SAINS MALAYSIA. CPT211-CPM313 Programming Language Concepts & Paradigm [Konsep & Paradigma Bahasa Pengaturcaraan]

ISI KANDUNGAN. Microsoft PowerPoint 2016

1. Threats bermaksud ancaman, atau lebih dikenali sebagai malware (malicious

Pengaturcaraan web ASP.NET. Sinopsis:

VIRTUAL PRIVATE NETWORK: ARCHITECTURE AND IMPLEMENTATIONS

TS2963 : Pangkalan Data. Nota Makmal. Makmal 4

UNIVERSITI SAINS MALAYSIA. CPT111 Principles of Programming [Prinsip Pengaturcaraan]

Modul Asas JavaServer Pages

INSTRUCTION: This section consists of TWO (2)short answers and TWO (2) structured essays. Answer ALL questions.

FIRST TIME LOGIN & SELF REGISTRATION USER GUIDE LOG MASUK KALI PERTAMA & PENDAFTARAN SENDIRI PANDUAN PENGGUNA

Semasa buku ini ditulis XAMPP mengandungi empat versi:

1. Akses untuk koperasi adalah melalui

Penggunaan Teks Dalam Multimedia BAB 5: PENGGUNAAN TEKS DALAM MULTIMEDIA. 5.1 Pengenalan

Tutorial: Pengenalan kepada Virtools

...a- JEE ELEKTRONIK DIGIT II. UNlVERSlTl SAINS MALAYSIA. Peperiksaan Semester Kedua Sidang Akademik FebruarVMac 2003.

INSTRUCTION: This section consists of TWO (2) short answer and structured essay questions. Answer ALL questions.

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

ASAS SAINS KOMPUTER (ASK) RANCANGAN PELAJARAN TAHUNAN TINGKATAN Disediakan Oleh;


Information Security Management System ISO/IEC 27001:2013

CPT111/CPM111 Principles of Programming [Prinsip Pengaturcaraan]

ISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

UNIVERSITI SAINS MALAYSIA. CCS521 Advanced Distributed Systems Concepts and Design [Konsep dan Reka Bentuk Sistem Teragih Maju]

HARDWARE/SOFTWARE SYSTEM-ON-CHIP CO-VERIFICATION PLATFORM BASED ON LOGIC-BASED ENVIRONMENT FOR APPLICATION PROGRAMMING INTERFACING TEO HONG YAP

UNIVERSITI SAINS MALAYSIA. CPT101 Prinsip-Prinsip Pengaturcaraan

EEE 348 PENGANTAR REKABENTUK LITAR BERSEPADU

BAB 4: PROTOKOL ATM. 4.1 Pengenalan. 4.2 The ATM Protokol Stack

Visitor Management System

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

Persekitaran Pengaturcaraan Arduino

UNIVERSITI SAINS MALAYSIA. CST232 Operating Systems [Sistem Pengendalian]

UNIVERSITI SAINS MALAYSIA. CST131 Computer Organisation [Organisasi Komputer]

UNIVERSITI SAINS MALAYSIA. CST131 Computer Organisation [Organisasi Komputer]

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

UNIVERSITI SAINS MALAYSIA. CST333 Distributed & Grid Computing [Perkomputeran Teragih & Grid]

Sistem Capaian Berbilang Terminal

CARA-CARA UNTUK MEMBUAT POSTER MELALUI PERISIAN PHOTOSHOP. Untuk membuat poster sediakan beberapa bahan seperti berikut:

INSTRUCTION: This section consists of TEN (10) structured questions. Answer ALL questions.

GARIS PANDUAN PERMOHONAN IMBUHAN PENERBITAN JURNAL / PROSIDING / SITASI BERINDEKS SCOPUS

UNIVERSITI SAINS MALAYSIA. CST331 Principles of Parallel & Distributed Programming [Prinsip Pengaturcaraan Selari & Teragih]

PERKHIDMATAN KREDIT DAN PERBANKAN PROSEDUR UNIT KOMPUTER. Proses Backup ( Windows) BPKP/KlOK-118 Bilangan Semakan : Q Tarikh :

UNIVERSITI SAINS MALAYSIA. CCS522 Advanced Data Communication & Computer Networks [Rangkaian Komputer & Komunikasi Data Lanjutan]

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

CPT212 Design & Analysis of Algorithms [Reka Bentuk & Analisis Algoritma]

SISTEM INTERAKTIF PROFIL PUSTAKAWAN MALAYSIA Interactive Profile System (IPS) for Malaysian Librarians

FUZZY NEURAL NETWORKS WITH GENETIC ALGORITHM-BASED LEARNING METHOD M. REZA MASHINCHI UNIVERSITI TEKNOLOGI MALAYSIA

Transcription:

UNIT 1 PENGENALAN KEPADA ALGORITMA & STRUKTUR DATA Konsep Algoritma Struktur Data Dalam Pengaturcaraan Definisi Struktur Menyatakan Ahli Suatu Struktur Tatasusunan Struktur Struktur Bersarang

1.1 Konsep Algoritma Algoritma merupakan satu senarai langkah-langkah bagi menyelesaikan sesuatu masalah. Masa dan ruang merupakan ukuran penting dalam satu-satu algotima yang efisyen. Setiap satu algoritma dalam menyelesaikan masalah akan melibatkan struktur data tertentu. Dalam kes tertentu, kadangkala algoritma yang digunakan adalah tidak efisyen bergantung kepada pilihan struktur data dan juga sekerap mana operasi ke atas data dilakukan. Kadangkala, pilihan kepada struktur data mengambilkira ruang-masa; dgn meningkatnya jumlah ruang bagi penyimpanan data, masa untuk memproses data akan berkurang dan sebaliknya. Menulis algoritma untuk menyelesaikan masalah Senarai langkah demi langkah bagi arahan yang baik dan tersusun dalam menyelesaikan sesuatu masalah Contoh:- Satu tatasusunan; DATA yang menyimpan nilai numeric dalam ingatan. Carian ke atas lokasi; LOK dan juga nilai elemen terbesar; MAKS di dalam tatasusunan perlu dilakukan. Penyelesaian:- Setkan nilai awal LOK = 1, MAKS = DATA[1]. Bandingkan nilai MAKS dengan setiap elemen yang terkandung di dalam tatasusunan DATA[k]. Jika DATA[k] melebihi nilai MAKS, maka nilai bagi LOK dan MAKS dikemaskini supaya LOK = k dan MAKS = DATA[k]. Nilai akhir yang disimpan dalam LOK dan MAKS memberikan lokasi dan nilai/elemen terbesar dalam tatasusunan DATA. Penulisan algoritma (Carian Elemen terbesar dalam tatasusunan). Sebuah tatasusunan DATA yang tidak kosong dengan nilai N diberikan. Algoritma berikut digunakan untuk mencari lokasi; LOK dan juga nilai elemen terbesar; MAKS dalam tatasusunan DATA. Pembolehubah k digunakan sebagai pembilang. 1.0 Set k = 1, LOK = 1, MAKS = DATA[1] 2.0 Set k = k + 1 3.0 If ( k > N) Cetak LOK, MAKS dan EXIT 4.0 If (MAKS < DATA[k]) Set LOK = K, MAKS = DATA[k] 5.0 Ulang langkah 2.0 2

Format penulisan algoritma dibahagikan kepada 2 bahagian. Bahagian pertama ialah perenggan yang menerangkan tujuan algoritma, mengenalpasti pembolehubah yang digunakan dalam algoritma dan senarai data yang akan diinput. Bahagian kedua algoritma mengandungi senarai langkah yang akan dilaksanakan untuk menyelesaikan masalah. MULA k=1, LOK=1, MAKS=DATA[1] k = k + 1 k > N Benar LOK, MAKS Palsu Palsu MAKS < DATA[k] TAMAT Benar LOK = k MAKS = DATA[k] 1.2 Struktur Data Dalam Pengaturcaraan Data mungkin diselenggara dalam pelbagai cara; samada secara logikal atau model matematik dalam organisasi ke atas data. Struktur (Structure) dalam bahasa C++ diwakili oleh katakunci struct yang menunjukkan kepada struktur data untuk membenarkan pelbagai jenis data disimpan dalam satu nama. Walaupun jenis data ini berbeza, tetapi ia saling berkait antara satu sama lain. Tatasusunan merupakan satu bentuk struktur data tetapi data yang disimpan adalah dari jenis yang sama. Contoh-contoh struktur data seperti tatasusunan(array), senarai berpaut(linked list), pepohon(tree), tindanan(stack) dan 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 data yang dipecahkan kepada sub-sub item Item Elementary Item data yang tidak dipecahkan 3

Contoh:- Nama (Item Data) boleh dipecahkan kepada NamaPertama dan NamaAkhir tetapi NoK/P wujud sebagai satu item tunggal iaitu tidak boleh dipecahkan. Koleksi data biasanya diorganisasikan kepada bentuk hirarki medan > rekod > fail (fields > record > file). Entiti mempunya beberapa atribut / set ciri-ciri yang menyimpan nilai tertentu. Nilai tersebut mungkin dalam bentuk numerik atau bukan numerik. Contoh:- Entiti PELAJAR Atribut Nama Umur Jantina NoK/P Nilai Fatimah 20 P 870101-08-5962 Beberapa entiti yang mempunyai atribut yang sama membentuk set entiti. Setiap atribut dalam set entiti mewakili nilai yang pelbagai. Cara data disusun / diorganisasikan kepada bentuk hirarki medan > rekod > fail mempunyai persamaan dengan hubungan atribut > entiti > set entiti. Di mana, Medan 1 unit maklumat (atribut) Rekod koleksi medan-medan (entiti) Fail koleksi rekod bagi entiti (set entiti) 1.3 Definisi struktur Struktur adalah koleksi data yang berkaitan menggunakan satu nama yang sama. Elemen struktur dikenali sebagai ahli, dan boleh terdiri dari jenis yang berbeza. Setiap struktur yang telah ditakrifkan boleh mempunyai nama struktur yang sama yang dikenali sebagai tag struktur. Untuk menakrifkan struktur, gunakan penyataan struct. Ia menakrifkan jenis data yang baru dan mempunyai lebih daripada satu ahli. Sintaks : struct [tag struktur] takrifan ahli; pembolehubahstruktur; Setiap takrifan ahli adalah takrifan pembolehubah yang normal, seperti int i atau float sales[20] atau sebarang penakrifan pembolehubah yang sah, termasuklah penunjuk pembolehubah jika sesuatu struktur memerlukan penunjuk sebagai ahli. Pada akhir penakrifan struktur, sebelum koma bertindih (;) terakhir, anda boleh menyatakan satu atau lebih pembolehubah struktur. Jika anda menyatakan pembolehubah struktur, anda meminta C untuk menyediakan ruang untuk pembolehubah tersebut dan jenis pembolehubah di dalam struktur. 4

Rekod Rekod Pelajar Rekod Pekerja Rekod Pelanggan Rekod Penumpang Rekod Inventori Setiap REKOD mempunyai LOKASI data yang tersendiri Dalam Bahasa C Rekod = struktur Lokasi = ahli data (pembolehubah) Rekod Pekerja - No Pekerja - Nama Penuh - Jawatan - Gaji asas Contoh : Rekod Pelajar Lokasi : No Kad Pengenalan Nama Penuh Nama Diploma Nombor Semester CGPA Pengisytiharan Pembolehubah char NoKP[15]; char NamaPenuh[35]; char NamaDiploma[15]; int NomborSemester; float CGPA; Takrifan Struktur: struct RekodPelajar char NoKP[15]; char NamaPenuh[35]; char NamaDiploma[15]; int NomborSemester; float CGPA; pelajar; Lokasi Memori struct RekodPelajar char NoKP[15]; char Nama Penuh[35]; char NamaDiploma[15]; int NomborSemester; float CGPA; pelajar; Tag Struktur Ahli Data Pembolehubah Struktur 5

Perwakilan Memori Pelajar NoKP NamaPenuh NamaDiploma NomborSemester CGPA Rujukan Lokasi Lokasi bagi ahli struktur dirujuk menggunakan dot operator. Sintaks : pembolehubahstruktur. ahlistruktur Pelajar Dot operator NoKP NamaPenuh NamaDiploma NomborSemester CGPA Lokasi ini (atau ahli data) dirujuk sebagai : pelajar.namapenuh Pengisytiharan Struktur #include <iostream.h> void readrecord(); void printrecord(); struct RekodPelajar char NoKP[15]; char NamaPenuh[35]; char NamaDiploma[15]; pelajar; Struktur ditakrifkan sebelum fungsi main() main() bacarekod(); cetakrekod(); void bacarekod() cout<< "Masukkan Nombor KP : "; cin>> pelajar.nokp; cout<< "Masukkan Nama : "; cin>> pelajar.namapenuh; cout<< "Masukkan Nama Diploma: "; cin<< pelajar.namadiploma; void cetakrekod() cout<<"nombor KP Anda : "<< pelajar.nokp<<endl; cout<<"nama Anda : "<< pelajar.namapenuh<<endl; cout<<"nama Diploma : "<< pelajar.namadiploma<<endl; 6

Penggunaan typedef dalam struktur typedef struct char NoKP[15]; char NamaPenuh[35]; char NamaDiploma[15]; int NomborSemester; float CGPA; pelajar; main() pelajar JTMK; int jabatan; // struct tidak dinyatakan semasa memanggil tagstruktur 1.4 Menyatakan Ahli sesuatu struktur Terdapat 2 cara untuk menakrifkan ahli sesuatu struktur. 1. Semasa penakrifan pembolehubah struktur 2. Di dalam badan aturcara Pendekatan yang lebih baik untuk menyatakan ahli struktur adalah dengan menggunakan dot operator (.). Sintaks : namapembolehubahstruktur.namaahli Dot operator Ia memberikan satu cara untuk menyatakan ahli individu sesuatu pembolehubah struktur di dalam badan aturcara. Nama pembolehubah struktur mestilah selalu diletakkan sebelum dot operator, dan nama ahli struktur selepas dot operator. 7

Contoh: struct KoleksiCD char Tajuk[15]; char Artis[35]; int JumLagu; float Harga; char TarikhBeli[15]; CDPertama = Arah, Rabbani, 10, 29.50, 16/12/1998 ; CDPertama Tajuk Artis JumLagu Harga TarikhBeli Arah Rabbani 10 29.50 16/12/1998 Kandungan Paparan CDPertama Tajuk Artis JumLagu Harga TarikhBeli Arah Rabbani 10 29.50 16/12/1998 cout<< Koleksi CD Pertama Saya << endl; cout<< Tajuk CD : << CDPertama.Tajuk << endl; cout<< Artis : << CDPertama.Artis << endl; cout<< Jumlah Lagu : << CDPertama.JumLagu << endl; cout<< Harga (RM) : << CDPertama.Harga << endl; cout<< TarikhBeli : << CDPertama.TarikhBeli << endl; 8

Templet Struktur Menakrifkan struktur tanpa pembolehubah struktur. Penyelesaian kepada masalah struktur setempat dan sejagat. Menakrifkan semua pembolehubah struktur hanya kepada fungsi yang memerlukannya. struct KoleksiCD char Tajuk[15]; char Artis[35]; int JumLagu; float Harga; char TarikhBeli[15]; ; Pembolehubah Struktur Tiada pembolehubah struktur di sini struct KoleksiCD char Tajuk[15]; char Artis[35]; int JumLagu; float Harga; char TarikhBeli[15]; pertama, kedua, ketiga; Pembolehubah Struktur pertama.tajuk pertama Tajuk Artis JumLagu Harga TarikhBeli Arah Rabbani 10 29.50 16/12/1998 kedua.artis kedua Tajuk Artis JumLagu Hrga TarikhBeli Raihan Raihan 10 29.50 5/11/1999 ketiga.jumlagu ketiga Tajuk Artis JumLagu Harga TarikhBeli Ellite Ellite 10 15.50 10/5/1997 9

1.5 Tatasusunan Struktur Adalah satu senarai rekod. Anda boleh menggunakan mycd[ ] (pembolehubah struktur) jika anda tidak tahu berapa banyak ruang yang diperlukan untuk menyimpan data bagi sesuatu struktur. Contoh : struct KoleksiCD char Tajuk[15]; char Artis[35]; int JumLagu; float Harga; char TarikhBeli[15]; mycd[5]; mycd mycd[3].harga [0] [1] [2] [3] [4] Tajuk Artis JumLagu Harga TarikhBeli mycd[1].artis Operasi input terhadap unsur pertama tatasusunan ialah: cin>> mycd[0].tajuk; cin>> mycd[0].artis; cin>> mycd[0].jumlagu; cin>> mycd[0].harga; cin>> mycd[0].tarikhbeli; Operasi output terhadap unsur pertama tatsusunan ialah: cout<< Tajuk CD : << mycd[0].tajuk<< endl; cout<< Artis : << mycd[0].artis<< endl; cout<< Jumlah Lagu : << mycd[0].jumlagu<< endl; cout<< Harga : << mycd[0].harga<< endl; cout<< Tarikh Beli : << mycd[0].tarikhbeli<< endl; Untuk menjadikan proses input dan output lebih mudah, penggunaan strukutr kawalan gelung digunakan. for( i = 0; i < 5; i++ cout<< Tajuk CD : << mycd[0].tajuk<< endl; cout<< Artis : << mycd[0].artis<< endl; cout<< Jumlah Lagu : << mycd[0].jumlagu<< endl; cout<< Harga : << mycd[0].harga<< endl; cout<< Tarikh Beli : << mycd[0].tarikhbeli<< endl; 10

Contoh aturcara yang menggunakan tatasusunan struktur #include<iostream.h> #include<string.h> #define BIL 3 void main() /* Pengisytiharan struktur pelajar yang mengandungi pelbagai ahli yang berlainan jenis data */ struct pelajar char nama[20]; char nopendf[11]; char kelas[5]; int tahun; float hpnm; pelajar_dit[bil]; /* istihar struktur berjenis tatasusunan */ int i; // Umpuk nilai ke dlm struct melalui input dr pengguna for( i = 0; i <= BIL; i++ ) cout<< Nama Pelajar : ; cin>>pelajar_dit[i].nama; cout<< No Pendaftaran : ; cin>>pelajar_dit[i].nopendf; cout<< Kelas : ; cin>>pelajar_dit[i].kelas; cout<< Tahun Pengajian : ; cin>>pelajar_dit[i].tahun; cout<< Nilai HPNM : ; cin>>pelajar_dit[i].hpnm; // Cetak maklumat rekod pelajar for( i = 0; i <= BIL; i++ ) cout<< Maklumat Pelajar <<i<<endl; cout<< Nama Pelajar : <<pelajar_dit[i].nama<<endl; cout<< No Pendaftaran : <<pelajar_dit[i].nopendf<<endl; cout<< Kelas : <<pelajar_dit[i].kelas<<endl; cout<< Tahun Pengajian : <<pelajar_dit[i].tahun<<endl; cout<< HPNM : <<pelajar_dit[i].hpnm<<endl; cout<<endl; 11

1.6 Struktur Bersarang Menakrifkan ahli biasa hanya sekali di dalam struktur mereka sendiri dan kemudian menggunakan struktur tersebut sebagai satu ahli dalam struktur yang lain. Sintaks : STRUKTUR LUAR /*ahli struktur luar */ STRUKTUR DALAM Contoh Pengisytiharan Struktur Bersarang : struct tarikh int hari; int bulan; int tahun; ; struct cuti char nopekerja[10]; struct tarikh haribulan; ; Contoh aturcara: #include<iostream.h> #include<string.h> #define SUBJEK 3 main() typedef struct pelajar char nama[30]; char nopendf[11]; char nokp[14]; struct markah_pelajar; it; struct Markah float markah; char kodsubj[5]; markah_pelajar[3]; pelajar it; cout<< Nama Pelajar : ; cin>>it.nama; cout<< No pendaftaran : ; cin>>it.nopendf; cout<< No K/Pengenalan : ; cin>>it.nokp; for (int i=1; i<subjek; i++) cout<< Kod Subjek : << i << : ; cin>>markah_pelajar[i].kodsubj; cout<< Markah : << i << : ; cin>>markah_pelajar[i].markah; return 0; 12