Anda di halaman 1dari 9

“LAPORAN STUKTUR DATA”

NAMA : S I T I M A R W A
NIM : 105841100122

TAHUN AJARAN 2023


FAKULTAS TEKNIK PRODI INFORMATIKA
UNIVERSITAS MUHAMMADIYAH MAKASSAR
1. PENGENALAN ARRAY
a. Apa itu Array?
Array adalah struktur data yang digunakan dalam pemrograman untuk
mengelompokkan elemen data sejenis dalam satu variabel. Elemen-elemen ini disimpan
dalam urutan yang disebut indeks, dan setiap elemen dalam array dapat berisi data
dengan tipe yang sama.

b. Mengapa kita memerlukan Array?


Array biasanya digunakan karena alasan-alasan berikut:
- Penyimpanan Data Terstruktur: Array memungkinkan Anda menyimpan beberapa
data dalam satu variabel dengan tipe data yang sama dalam struktur yang
terorganisir.
- Akses Efisien: Array dapat mengakses elemen-elemen data dalam array dengan
cepat menggunakan indeksnya, sehingga pencarian dan manipulasi data lebih
efisien.
- Looping (Perulangan): Array memungkinkan Anda mengulang melalui elemen-
elemen dalam array menggunakan perulangan.
- Implementasi Struktur Data: Array adalah dasar untuk banyak struktur data non-
primitive (data yang dapat diubah) lain seperti stack, queue, list, graph, dan tree.

c. Keuntungan dan Kelemahan


KEUNTUNGAN:
- Akses acak ke semua elemen dan kinerja yang cepat berdasarkan posisi.
- Cache locality yang baik, meningkatkan kinerja operasi.
- Memungkinkan penggunaan satu nama untuk beberapa item data dengan tipe yang
sama.
- Tidak ada penambahan alokasi memori, mencegah masalah overflow atau
kekurangan memori.
- Waktu yang dibutuhkan untuk mengakses elemen cenderung konstan.
KEKURANGAN:
- Ukuran tetap, tidak dapat menambah atau menghapus elemen setelah dibuat.
- Penambahan item memerlukan pergeseran elemen-elemen sebelumnya.
- Fungsionalitas terbatas.
- Menghapus item memerlukan penyalinan elemen-elemen sebelumnya, yang mahal.

2.DEKLARASI DAN INISIALISASI ARRAY


a. Deklarasi Array dan Inisialisasi Array
Untuk mendeklarasikan sebuah array, kita dapat melakukannya seperti berikut:

String[] kos2an_putri = new String[11];


float[] biaya = new float[11];

b. Tipe Data Array


Array kos2an_putri memiliki tipe data String.
Array biaya memiliki tipe data float.
3.PENGAKSESAN ELEMEN ARRAY
a. Cara Mengakses Elemen dalam Array
Untuk mengakses elemen dalam array, gunakan nama array diikuti dengan indeksnya,
misalnya:

String roomName = kos2an_putri[0];

Selain itu, Anda juga dapat menggunakan perulangan, misalnya:

for (int i = 0; i < kos2an_putri.length; i++) {


String roomName = kos2an_putri[i];
}

b. Pengindeksan Array (dimulai dari 0)


Di Java dan bahasa pemrograman lainnya, indeks array dimulai dari 0. Artinya,
elemen pertama dalam array memiliki indeks 0, elemen kedua memiliki indeks 1, dan
seterusnya.

4.MANIPULASI ARRAY
a. Menambahkan dan menghapus elemen dalam Array
Anda dapat menambahkan elemen dalam array menggunakan perulangan. Sebagai
contoh, Anda dapat menginput nama dan biaya untuk setiap kamar ke dalam array
kos2an_putri dan biaya.
Untuk menghapus elemen, Anda dapat menggeser elemen-elemen setelahnya ke posisi
sebelumnya dengan menggunakan perulangan saat menghapus nomor kamar yang
diinginkan.

b. Mengganti nilai elemen Array


Anda dapat mengganti nilai elemen array dengan menetapkan nilai baru ke indeks yang
diinginkan, misalnya:

kos2an_putri[0] = "Nama Baru";

c. Menampilkan isi array


Anda dapat menggunakan perulangan for untuk menampilkan isi dari array
kos2an_putri dan biaya setelah operasi penghapusan kamar. Setiap elemen array dapat
ditampilkan bersama dengan biayanya.

5.ITERASI ARRAY
a. Menggunakan perulangan (Loop) untuk mengakses elemen-elemen array
Anda dapat menggunakan perulangan for untuk mengakses dan mencetak elemen-
elemen array.
b. Menggunakan pernyataan for-each (enhanced for loop) untuk iterasi
Anda juga dapat menggunakan pernyataan for-each (enhanced for loop) untuk iterasi
melalui array dengan lebih sederhana. Ini berguna jika Anda hanya perlu mengakses
elemen- elemen array tanpa perlu mengubah indeks.

6. SORCE CODE PROGRAM LATIHAN_ARRAY_1


7. Matriks

A. Aritmatika Matriks

import java.util.Random;

public class matriks {


public static void main(String[] args) {
Random R = new Random();
int[][]a= new int[3][3];
int[][]b= new int[3][3];

System.out.println("Matriks A :");
for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
a[i][j] = R.nextInt(4)+1;
System.out.print(a[i][j] + " ");
}
System.out.println("|");
}

System.out.println("Matriks B :");
for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
b[i][j] = R.nextInt(4)+1;
System.out.print(b[i][j] + " ");
}
System.out.println("|");
}

System.out.println("Matriks A + B :");
for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
System.out.print(a[i][j]+b[i][j] + " ");
}
System.out.println("|");
}

System.out.println("Matriks A - B :");
for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
System.out.print(a[i][j]-b[i][j] + " ");
}
System.out.println("|");
}
int total=0;
System.out.println("Matriks A * B :");
for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int k = 0; k < 3; k++){
total = 0;
for (int j = 0; j < 3; j++){
total =(a[i][j]*b[j][k])+total;
}
System.out.print(total + " ");
}
System.out.println("|");
}

B. Transpos Matriks

System.out.println("Transpos Matriks A :");


for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
System.out.print(a[j][i] + " ");
}
System.out.println("|");
}

System.out.println("Transpos Matriks B :");


for (int i = 0; i < 3; i++) {
System.out.print("|");
for (int j = 0; j < 3; j++){
System.out.print(b[j][i] + " ");
}
System.out.println("|");
}

C. Determinan Matriks

int x;
float detA, detB;
int jumlah = 0;
System.out.print("Determinan Matriks A :");
for (int k = 0; k < 3; k++){
x = k;
total = 1;
for (int j = 0; j < 3; j++){
total = a[j][x]*total;
x++;
if (x == 3){
x = 0;
}
}
jumlah = total + jumlah;

}
System.out.println("-");
for (int k = 0; k < 3; k++){
x = k;
total = 1;
for (int j = 2; j >= 0; j--){
total = a[j][x]*total;
x++;
if (x == 3){
x = 0;
}
}
jumlah = jumlah - total;
}
System.out.println(jumlah);
detA = (float) jumlah;

jumlah = 0;
System.out.print("Determinan Matriks B :");
for (int k = 0; k < 3; k++){
x = k;
total = 1;
for (int j = 0; j < 3; j++){
total = b[j][x] * total;
x++;
if (x == 3){
x = 0;
}
}
jumlah = total + jumlah;
}
for (int k = 0; k < 3; k++){
x = k;
total = 1;
for (int j = 2; j >= 0; j--){
total = b[j][x] * total;
x++;
if (x == 3){
x = 0;
}
}
jumlah =jumlah - total;
}
System.out.println(jumlah);
detB =(float) jumlah;

D. Adjoin Matriks

int y;
float [][] AdjA = new float[3][3];
float [][] AdjB = new float[3][3];
System.out.println("Adjoin Matriks A :");
for (int i = 0; i < a.length; i++) {
System.out.print("|");
for (int j = 0; j < a.length;j++) {
x = 0;
y = 0;
jumlah=0;
total = 1;
for (int k = 0 ; k < a.length-1;k++) {
if (x == i){
x++;
}
if (x == 3){
x = 0;
}
if (y == j) {
y++;
}
if (y == 3){
y = 0;
}
total = a[x][y]*total;
x++;
y++;
}
jumlah = jumlah + total;
total = 1;
x = 2;
y = 0;
for (int k = 0 ; k < a.length-1;k++) {
if (x == i){
x--;
}
if (x == -1){
x = 2;
}
if (y == j) {
y++;
}
if (y == 3){
y = 0;
}
total = a[x][y]*total;
x--;
y++;
}
jumlah = jumlah - total;
if ((i+j)%2 == 1) {
jumlah *= -1;
}
System.out.print(jumlah + " ");
AdjA[i][j]= (float) jumlah;

}
System.out.println("|");
}

System.out.println("Adjoin Matriks B :");


for (int i = 0; i < b.length; i++) {
System.out.print("|");
for (int j = 0; j < b.length;j++) {
x = 0;
y = 0;
jumlah = 0;
total = 1;
for (int k = 0 ; k < b.length-1;k++) {
if (x == i)
x++;
if (x == 3)
x = 0;
if (y == j)
y++;
if (y == 3)
y = 0;
total = b[x][y]*total;
x++;
y++;
}
jumlah = jumlah + total;
total = 1;
x = 2;
y = 0;
for (int k = 0 ; k < b.length-1;k++) {
if (x == i)
x--;
if (x == -1)
x = 2;
if (y == j)
y++;
if (y == 3)
y = 0;
total = b[x][y]*total;
x--;
y++;
}
jumlah = jumlah - total;
if ((i+j)%2 == 1) {
jumlah *= -1;
}
System.out.print(jumlah + " ");
AdjB[i][j]= (float) jumlah;
}
System.out.println("|");
}

E. Invers Matriks

System.out.println("Invers Matriks A :");


for (int i=0; i<3;i++) {
System.out.print("|");
for (int j=0; j<3; j++){
System.out.print(AdjA[i][j]/detA + " ");
}
System.out.println("|");
}

System.out.println("Invers Matriks B :");


for (int i=0; i<3;i++) {
System.out.print("|");
for (int j=0; j<3; j++){
System.out.print( AdjB[i][j] / detB + " ");
}
System.out.println("|");
}

}
}

Anda mungkin juga menyukai