laporan rencana praktikum modul 4
DESCRIPTION
Laporan Algoritma dan PemrogramanTRANSCRIPT
-
5/19/2018 Laporan Rencana Praktikum Modul 4
1/8
LAPORAN RENCANA PRAKTIKUM
ALGORITMA DAN PEMROGRAMAN II
Oleh :
Nama : ALDALILAH SAKHA MAHANI
NIM : DBC 112 050
Kelompok : AP IIE
Modul : IV (RELASI KELAS)
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PALANGKARAYA
2013
-
5/19/2018 Laporan Rencana Praktikum Modul 4
2/8
MODUL IV
RELASI KELAS
I.
TUJUAN
Setelah menyelesaikan modul ini, mahasiswa di harapkan mampu membuat
berbagai jenis relasi antar kelas.
II. LANDASAN TEORI
Jenis relasi antar kelas terdiri dari pewarisan, agregasi, asosiasi. Pewarisan
merupakan hubungan antar satu kelas dengan kelas lain dalam suatu hirarki kelas
induk dan kelas turunan. Superclass (kelas dasar atau kelas induk) merupakan
kelas yang lebih general dalam relasi is-a. Subclass (kelas turunan atau kelas
anak) merupakan kelas yang lebih spesifik dalam relasi is-a. Objek yang
dikelompokan dalam sub kelas memiliki atribut dan perilaku kelas induk, dan juga
atribut dan perilaku tambahan. Kita mengatakan subclass mewarisi suatu
superclass (atau juga bisa dikatakan sebuah subclass turunan dari suatu
superclass).
Agregasi merupakan hubungan antar kelas yang menyatakan suatu kelas
merupakan bagian dari kelas yang lain atau hubungan antar kelas yang
menyatakan suatu kelas memiliki kelas lain [sebagai atribut]. Agregasi
merupakan relasi has a, contoh :
Mobil memiliki mesin Fakultas terdiri atas jurusan
Rumah memiliki dapur
Mobil, Fakultas dan Rumah dinyatakan sebagai kelas agregat. Mesin, Jurusan dan
Dapur merupakan kelas penyusunan.
Kardinalitas menyatakan jumlah objek penyusunan yang terlibat dalam
pembentukan relasi agregasi. Suatu KelasAgregat dibentuk dari beberapa
(disimbolkan dengan *) objek KelasPenyusun.
-
5/19/2018 Laporan Rencana Praktikum Modul 4
3/8
Asosiasi menggambarkan hubungan struktural antar kelas. Setiap kelas
memiliki kedudukan yang sama (tidak merupakan bagian dari kelas lain). Pada
saat merancang relasi antar kelas, ada dua hal yang perlu diperhatikan yaitu
berapa objek yang terlibat dari masing-masing kelas yang ber-relasi dan apakah
relasi tersebut bersifat wajib (mandatory) atau opsional.
III.LANGKAH KERJA
1. Buatlah program seperti dibawah ini!
Agregasi.cpp
#include
#include
class Titik {
private:
float sbX,sbY;
public:
Titik()
{
sbX = sbY = 0.0f;
}
Titik(float x, float y)
{
sbX = x; sbY = y;
}
-
5/19/2018 Laporan Rencana Praktikum Modul 4
4/8
void posisiTitik()
{
cout
-
5/19/2018 Laporan Rencana Praktikum Modul 4
5/8
void cetakLingkaran()
{
cout
-
5/19/2018 Laporan Rencana Praktikum Modul 4
6/8
char *namaMK;
int sksMK;
public:
MataKuliah(char *kode, char *nm, int sks)
{
kodeMK = kode;
namaMK = nm;
sksMK = sks;
}
void cetakMK()
{
cout
-
5/19/2018 Laporan Rencana Praktikum Modul 4
7/8
int indeks;
public:
Dosen(char *noPeg, char *nm)
{
NPP = noPeg;
Nama = nm;
indeks = 0;
}
void tambahMK(MataKuliah matakuliah)
{
mk[indeks] = matakuliah;
indeks++;
}
void cetakInformasi()
{
cout
-
5/19/2018 Laporan Rencana Praktikum Modul 4
8/8
int main()
{
Dosen dsn("P001", "Steve Owen");
MataKuliah mk1("MK001", "PBO", 3);
MataKuliah mk2("MK002", "Struktur Data", 3);
MataKuliah mk3("MK003", "R. Perangkat Lunak", 3);
MataKuliah mk4("MK004", "Analisis Algoritma", 2);
MataKuliah mk5("MK005", "Sistem Operasi", 3);
dsn.tambahMK(mk1);
dsn.tambahMK(mk2);
dsn.tambahMK(mk3);
dsn.tambahMK(mk4);
dsn.tambahMK(mk5);
dsn.cetakInformasi();
}