Anda di halaman 1dari 4

1.

Capture Program dan beri penjelasan per baris, tambahkan ilustrasi, untuk :
a. Kelas Vertex

Baris 1: Mendefinisikan nama kelas sebagai "Vertex".


Baris 3: Mendeklarasikan variabel instance private "label" sebagai tipe data String.
Variabel ini merepresentasikan label atau nama dari vertex.
Baris 5-8: Mendefinisikan konstruktor kelas Vertex yang menerima parameter "label".
Ketika objek Vertex dibuat, variabel instance "label" diinisialisasi dengan nilai dari
parameter "label".
Baris 10-13: Mendefinisikan getter dan setter untuk variabel instance "label".

b. Kelas Graph

Baris 1: Mendefinisikan kelas Graph.


Baris 2: Mendefinisikan konstanta MAX_VERTS yang akan digunakan untuk
menentukan ukuran maksimum array vertexList dan adjMatrix.
Baris 3-5: Mendefinisikan variabel-variabel instance dari kelas Graph, yaitu array
vertexList, array dua dimensi adjMatrix, dan variabel numVerts.
Baris 7-16: Membuat konstruktor Graph yang menerima parameter maxVerts.
Konstruktor ini menginisialisasi variabel instance MAX_VERTS dengan nilai dari
parameter maxVerts, menginisialisasi array vertexList dan adjMatrix dengan ukuran
MAX_VERTS, dan mengisi semua elemen pada adjMatrix dengan nilai 0 menggunakan
nested loop. Selain itu, variabel numVerts diinisialisasi dengan nilai 0.

c. Constructor Graph(), addVertex(), addEdge(), displayVertex(), tampilMatrik()

Baris 1: Method addVertex untuk menambahkan vertex baru ke dalam graph.


Baris 2: Menginisialisasi objek Vertex baru dan menambahkannya ke dalam array
vertexList, kemudian meningkatkan nilai numVerts dengan satu.
Baris 6: Method addEdge untuk menambahkan edge baru antara dua vertex.
Baris 7-8: Mengatur nilai adjacency matrix di posisi start dan end menjadi 1, menandakan
bahwa ada edge yang menghubungkan dua vertex tersebut. Karena graph yang dibuat
bersifat tidak berarah, maka nilai pada posisi [end][start] juga diatur menjadi 1.
Baris 12: Method displayVertex untuk menampilkan label dari vertex dengan index
tertentu.
Baris 13: Menampilkan label dari vertex dengan index yang diberikan.
Baris 17: Method tampilMatrix untuk menampilkan adjacency matrix dari graph.
Baris 18-21: Mencetak nilai pada setiap posisi dalam adjacency matrix, dengan setiap
baris merepresentasikan satu vertex dalam graph.
Baris 25: Method getNumVertices untuk mendapatkan jumlah vertex dalam graph.
Baris 26: Mengembalikan nilai variabel numVerts.

d. Method Main
Baris 1: Membuat objek Graph baru dengan MAX_VERTS sebesar 5 dan menyimpannya
pada variabel theGraph.
Baris 2: Menambahkan vertex dengan label "A" dan indeks 0 ke dalam graph theGraph.
Baris 3: Menambahkan vertex dengan label "B" dan indeks 1 ke dalam graph theGraph.
Baris 4: Menambahkan vertex dengan label "C" dan indeks 2 ke dalam graph theGraph.
Baris 5: Menambahkan vertex dengan label "D" dan indeks 3 ke dalam graph theGraph.
Baris 6: Menambahkan vertex dengan label "E" dan indeks 4 ke dalam graph theGraph.
Baris 7: Mencetak teks "Daftar Vertex : " ke konsol.
Baris 8: Membuat sebuah loop dengan variable i yang dimulai dari 0 dan berhenti ketika
nilai i sama dengan jumlah vertex dalam graph theGraph.
Baris 9: Memanggil method displayVertex pada objek theGraph dengan parameter i.
Baris 10: Menambahkan edge antara vertex dengan indeks 0 dan 1 ke dalam graph
theGraph.
Baris 11: Menambahkan edge antara vertex dengan indeks 1 dan 2 ke dalam graph
theGraph.
Baris 12: Menambahkan edge antara vertex dengan indeks 0 dan 3 ke dalam graph
theGraph.
Baris 13: Menambahkan edge antara vertex dengan indeks 3 dan 4 ke dalam graph
theGraph.
Baris 14: Mencetak teks "Matriks adjacency:" ke konsol.
Baris 15: Memanggil method tampilMatrix pada objek theGraph. Method ini mencetak
matriks adjacency dari graph theGraph ke konsol.
2. Capture output kelas main

Anda mungkin juga menyukai