E 4162

Programming 2

kepada Object Oriented Programming C++
4

BAB 1 Pengenalan

* APAKAH C++?

C++

C

Pengaturcaraan Berstruktur

Pengaturcaraan Berorientasikan Objek

Rajah 1.1: Menunjukkan C++ merupakan superset kepada C

* KEPERLUAN C++ :
• Peningkatan program yg semakin kompleks • Penggunaan yang meluas – industri perkilangan, perlainan dan rekabentuk persekitaran Unix
5

Contoh keratan aturcara C #include <stdio.h> void EnterData(); void EnterData() { char name[30]; printf (“Name:”); gets(name); } : : :

Contoh keratan aturcara C++ #include<iostream.h> #include<string.h> class Person{ private: char name[30]; public: void EnterData(); }; void Person::EnterData(char *a) { cout<<”Name: “; cin.getline(name,30)} :

6

h> cin>> cout<< // 7 .Perbezaan C dan C++ Item Header file Input function Output Function Comment C #include <stdio.h> scanf() printf() /* */ C++ #include<iostream.

8 .Evolusi C++ • Pengaturcaraan C telah dicipta sewalam 1970 di Makmal Bell oleh Brian Kernighan and Dennis Ritchie.

9 . • Bahasa C kemudiannya dikemaskini ke Bahasa C++ (“ C plus plus”).Evolusi C++ • Pengaturcaraan Bahasa C diubahsuai dari Bahasa B. • C++ telah dicipta oleh Bjarne Stroustrup di makmal yang sama Bell Labs seawal tahun 1980.

* Pengaturcaraan berorientasikan objek (OOP) 1.pelajar : Menyusun senarai pelajar berdasarkan No.pelajar. Suatu pendekatan menulis perisian di mana data dan kelakuan objek dipakejkan bersama di dalam kelas. 10 .pelajar Markah Jenis data Integer Perpuluhan Jenis operasi: No.0 Konsep berorientasikan objek Satu jenis pengaturcaraan di mana pengaturcara mentakrifkan jenis data bagi struktur data dan mentakrifkan jenis operasi yang akan dilaksanakan pada struktur data. Contoh: Struktur data Data No. Markah : Mengira markah. Objek merupakan ahli bagi suatu kelas.

0 Objek dan Kelas OBJEK • Istilah yang digunakan untuk menerangkan pelbagai benda.pelajar Markah Pelajar Mewarisi Pelajar perempuan Pelajar lelaki 2. • Mengandungi data dan method.No. 11 .. • Apakah DATA? – Data adalah….

. • Apakah METOD? – Metod adalah…. nokadpengenalan. Tidak boleh dilihat seperti manusia mempunyai nama. alamat. Boleh dilihat seperti objek manusia mempunyai sepasang tangan. status Metod : MenentukanStatus() Objek Data Method : Kotak : tinggi. markah. lebar : MengiraIsipadu() Satu Objek Contoh 1 : Objek Pelajar dengan data dan metod Satu Objek Contoh 2 : Objek Kotak dengan data dan metod 12 . Objek : Pelajar Data : nama. id. Didalam dunia nyata ciri-ciri boleh dibahagikan kepada dua bahagian: 1. seperti method MenentukanStatus() boleh menentukan keputusan peperiksaan objek pelajar. kedalaman. Ciri-ciri (properties) sesuatu objek dikenali sebagai data.  Method ialah suatu set fungsi yang memanipulasikan data. 2.

• Contoh1 . Begitu juga dengan method iaitu perlu menentukan status pelajar sama ada lulus atau tidak. lebar dan kedalaman.kelas Kotak. status dan sebagainya. 13 . • Contoh2 . Method yang perlu ialah untuk mengira luas dan isipadu kotak.KELAS • Satu set objek yang mempunyai ciri-ciri dan method yang hampir sama.  Pelajar mempunyai ciri-ciri seperti nama. • Dengan menggunakan konsep kelas.kelas Pelajar. alamat. atribut dan method sesuatu kelas boleh digunakan oleh setiap objek daripada kelas tersebut.  Setiap kotak boleh mempunyai ciri-ciri am iaitu panjang.

}. else status = “Fail”. status. height.} double ComputeArea() { return( width * height ). double ComputeVolume() { return( width * height * depth ). char DetermineStatus() { if marks >= 40 status = “Pass”.class Student { String name. data method Kelas / Class Contoh 1 : Mendefinisikan Kelas Pelajar class Box { double width. } }. int icno. depth. sid. method data } Kelas / Class Contoh 2 : Mendefinisikan Kelas Kotak 14 . double marks. address.

Analisa berorientasikan objek (Object Oriented Analysis .OOP) 15 .OOD) 3.4. Pengaturcaraan berorientasikan objek (Object Oriented Programming . Rekabentuk berorientasikan objek (Object Oriented Design .0 KITAR HAYAT PEMBANGUNAN PROGRAM BERORIENTASIKAN OBJEK • Kitar hayat pembangunan program berorientasikan objek mengandungi 3 fasa utama iaitu: 1.OOA) 2.

0 KITAR HAYAT PEMBANGUNAN PROGRAM BERORIENTASIKAN OBJEK 1. 16 . Kita juga boleh mengenalpasti atribut penting bagi objek-objek ini dan menentukan tingkahlaku serta interaksi objek-objek ini. Analisa berorientasikan objek (OOA): Fasa ini merupakan proses menentukan keperluan sistem dan mengenalpasti kelas-kelas dan hubungan di antara kelas.4.

17 .0 KITAR HAYAT PEMBANGUNAN PROGRAM BERORIENTASIKAN OBJEK 2. Rekabentuk berorientasikan objek(OOD): Fasa ini merupakan fasa untuk merekabentuk kelas-kelas yang dikenalpasti semasa fasa analisa dan antaramuka pengguna.4.

Analisa berorientasikan objek dan rekabentuk berorientasikan objek merupakan disiplin yang berlainan tetapi ia boleh saling dihubungkaitkan.4. Pengaturcaraan berorientasikan objek (perlaksanaan) -OOP. 18 .0 KITAR HAYAT PEMBANGUNAN PROGRAM BERORIENTASIKAN OBJEK 3. Fasa ini akan menterjemahkan rekabentuk yang dibuat kepada kod yang sebenar.

Analisa berorientasikan objek Rekabentuk berorientasikan objek Pengaturcaraan berorientasikan objek (Perlaksanaan) Rajah 1.8: Kitar hayat pembangunan program berorientasikan objek 19 .

ia memudahkan pengaturcara memodulkan masalah kerana data-data yang digunakan adalah menggambarkan situasi sebenar. III. IV. Antaranya ia dapat mengatasi masalah kerumitan perisian dan juga meningkatkan produktiviti.5. 20 . II. Ia lebih sesuai dengan perisian baru. Berikut adalah beberapa kelebihan yang boleh digariskan: I. Dengan cara ini ia akan meningkatkan produktiviti pengaturcara.0 KELEBIHAN PENGATURCARAAN BERORIENTASIKAN OBJEK  Pengaturcaraan berorientasikan objek ini menawarkan beberapa kelebihan. Ia akan menjimatkan kos dan masa yang diperlukan untuk membangunkan sesuatu perisian. Menggambarkan dunia sebenar Dengan penggunaan konsep pengaturcaraan berorientasikan objek. Contoh: pengawal automatik VCR berfungsi dengan cara yang sama dengan VCR baru yang bakal digunakan di masa hadapan. Oleh itu kerumitan dan kesukaran dalam membangunkan perisian dapat dikurangkan. Kod boleh digunakan berulangkali Kod yang sedia ada telah diuji terlebih dahulu serta boleh diwarisi dari modul yang terdahulu. Kod boleh ditambah Kemampuan untuk menambah pada kod yang telah wujud dan diselaraskan mengikut keperluan. Keselamatan data Penggunaan konsep pengkapsulan telah menjadikan data-data lebih selamat dari gangguan dan penyalahgunaan dari pihak luar.

return 0.0 CONTOH ATURCARA PERTAMA C++ PENGATURCARAAN BERORIENTASIKAN OBJEK //Aturcara pertama dalam C++ #include <iostream.0 PERBEZAAN PENGATURCARAAN BERSTRUKTUR DAN PENGATURCARAAN BERORIENTASIKAN OBJEK 6.5.h> int main() { cout<<”Hello!”<<endl. } (6) Return value (1) Komen (2) Pra pemroses direktif (3)Kepala fungsi (5)Arahan mencetak (4) Badan fungsi main ( ) 21 .

3) Kepala fungsi Mengandungi nilai yang dipulangkan (di dalam contoh diatas ialah int). 2) Prapemproses direktif Satu komponen dalam pengkompil C++ yang akan mengarahkan prapemproses memasukkan kandungan fail iostream. Merupakan fungsi yang pertama yang akan dilaksanakan oleh pengkompil. 22 .h ke dalam aturcara.1) Komen Komen digunakan untuk memudahkan program dibaca.

Di antara tanda kurungan tersebut adalah semua penyataan di dalam fungsi C++ yang dipanggil blok. 5) Sintak untuk mengarahkan aturcara untuk mencetak perkataan Hello! yang terletak di antara “ dan “. Walau bagaiman amaran akan dikeluarkan oleh pengkompil jika tidak menyertakannya. Katakunci endl digunakan untuk mengakhirkan cetakan dengan baris baru.4) Badan fungsi main().  RINGKASAN BAB1 23 . 6) Nilai sifar dipulangkan pada sistem bagi menandakan bahawa aturcara ini telah b Tidak dimestikan untuk menyertakannya di dalam aturcara anda. Tanda kurungan sebelah kiri { menunjukkan permulaan setiap fungsi dan sebelah kanan }untuk menamatkan fungsi tersebut.

0 Pengabstrakan data 2.0 Polimorfisma  CONTOH program yang mengandungi 4 konsep OOP 24 .0 Pewarisan data 4.0 Pengkapsulan data 3.0 KONSEP-KONSEP UTAMA PENGATURCARAAN BERORIENTASIKAN OBJEK 1.3.

//integer //titik perpuluhan //huruf //string // nilai input //nilai 2 input //nilai 3 input 25 . Penggunaan aliran input dan output Penggunaan cin dan cout . cin>>x>>y. cin mengawal input. cin>>x>>y>>z. cin>>w. char y. >> operator pengarahan semula atau penyelitan.ASAS(REVIEW) 1.B. STRUKTUR PEMPROGRAMAN VISUAL C++ . float x.Pengawal input (Console input) Untuk memasukkan data melalui pengawal sistem (papan kekunci). char z[15]. Contoh : //pengistiharan pembolehubah int w.

. << operator ‘indirection’ atau ‘extraction’. Contoh: cout<<w. //cetak tanpa label cout<< “ The value of x is “<<x<<endl cout<<”Coordinate(x.Pengawal output(console output) Menghantar output kepada pengawal sistem (monitor).”<<y<<”)\n”.y)=(“<<x<<”. cout mengawal output. 26 .

/* menambah x dan y */ cout<<endl<<”Sum=”<<sum. cout<<”\nEnter first number :”. count<<” \nEnter second number:”./* Program ini mengandungi pengiraan bagi jumlah 2 nombor */ #include <iostream. /* Bahagian ini perlu dimasukkan oleh pengguna */ cin>>x.y. /* menunjukkan program telah diakhiri dengan jayanya */ } 27 . return 0.h> /* Ini merupakan prapemproses yang mengandungi arahan */ main ( ) { int x.sum. cin>>y. sum=x + y.

28 . Nama ii. •Tetap (constant) – Nilai tetap ditetapkan.Data 2kategori data •Berubah (variable) – Nilai boleh ditukar semasa pelaksanaan program.h> void main() { cout<<”C++ is with Classes”.Struktur program #include <iostream. }  Teknik-teknik pengaturcaraan  Jenis-jenis data . Setiap pembolehubah mesti ada : i. Jenis iii Nilai yang dipegang yang telah anda umpukkan.

. Integer 3.. String -Tiada jenis string dalam C++ **Gunakan tatasusunan huruf atau penunjuk untuk mengistiharkan pembolehubah 29 .Huruf : A.Jenis data pembolehubah boleh dibahagikan kepada 4 subkategori utama : 1. Nombor titik perpuluhan 4.Z. Huruf char. singed char 2.Nombor : 0…9 ..z . a..Panjang maksima : 30 huruf (bergantung kepada pengkompil) • Jenis data pembolehubah .Panjang minima : 1 huruf .Underscore : _10 • Panjang pembolehubah . unsigned char.Peraturan memberi nama pembolehubah : • Mesti dimulakan dengan huruf abjad tetapi selepas huruf pertama ia boleh mengandungi :.

Penyataan pengumpukan Contoh : length = 25. 30 .NOTA:!!!! Terdapat 2 cara yang boleh digunakan untuk mengumpukkan nilai kepada pembolehubah. Penyataan input Contoh : cin>>length.

b y= a * b y= a / b y= a & b Keputusan jika a=5. Operator . Operator Matematik Simbol Symbol + * / & Makna Meaning Tambahan / Additional Penolakan / Subtraction Pendaraban / Multiply Bahagi / Division Modulus Contoh Example y= a + b y= a . Terdapat 5 jenis operator iaitu : i. menghasilkan nilai yang boleh diumpukkan kepada pembolehubah. b=3 Result if a=5. b=3 y=8 y=2 y = 15 y = 1.Operator ialah simbol yang “mengendalikan” satu atau lebih ungkapan.667 y=2 31 .

Operator logikal .Digunakan untuk membandingkan DATA Simbol Symbol == != < > <= >= Makna Meaning Sama dengan / Equal to Tidak sama / Not equal to Lebih besar / Greater than Lebih kurang / Less then Lebih besar atau sama / Greater than or equal to Lebih kurang atau sama / Less than or equal to 32 .ii.

33 . a.Operator logikal Simbol Symbol && || ! Makna Meaning DAN / AND ATAU / OR TIDAK / NOT Pengumpukan majmuk .Kombinasi operator matematik dan pengumpukan Simbol Symbol += -= *= /= %= Pengumpukan Majmuk Compound Assignment a+ = 1. a = a -1. a* = 1. a% = 1. a/ = 1. a = a %1. a = a /1. Pengumpukan Normal Normal Assignment a = a +1.= 1. a = a *1.

…….. penyataan2.Struktur kawalan Untuk mengawal keputusan. ……. penyataan3. bermula daripada arahan yang pertama dan diakhiri dengan arahan terakhir. Carta alir Arahan akhir Masuk S1 S2 S3 S4 Keluar 34 . C++ menyediakan struktur kawalan ( dikenali juga dengan nama penyataan kawalan ) Berjujukan Pelaksanaan penyataan dalam susunan yang khusus ( sesuatu arahan akan dilaksanakan selepas arahan sebelumnya telah dibuat ) Sintaks: penyataan1.. Arahan pertama Arahan di dalam program ini dilaksanakan secara berjujukan satu persatu.

Sign up to vote on this title
UsefulNot useful