ARRAY

Kelompok 2 ([1]Musawan Intan Paembonan Embong Bulan, [2]Fadhilah Pratiwi,[3]Mutiah Fadila Saputri, [4]Muhammad Amin Said, [5]Ananda Elisa Putri)

2025-04-28

Mendeklarasikan Array 1 Dimensi

Ganjil = seq(5, 100, by=2)
Ganjil
##  [1]  5  7  9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53
## [26] 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99
  1. Menampilkan semua elemen yang habis dibagi 4
Dibagi4 = Ganjil [Ganjil%%4==0]
Dibagi4
## numeric(0)
  1. Mengurutkan array tersebut secara menurun (descending)
Menurun = sort(Ganjil, decreasing=TRUE)
Menurun
##  [1] 99 97 95 93 91 89 87 85 83 81 79 77 75 73 71 69 67 65 63 61 59 57 55 53 51
## [26] 49 47 45 43 41 39 37 35 33 31 29 27 25 23 21 19 17 15 13 11  9  7  5
  1. Menghitung jumlah total dan rata-ratanya
Jumlah = sum(Ganjil)
Rata_rata = mean(Ganjil)
Jumlah
## [1] 2496
Rata_rata
## [1] 52

Mendeklarasikan Array 2 Dimensi

Menentukan ukuran m dan n = 6

m = 6
n = 6

Membuat array 6×6 berisi kelipatan 4 pertama (4, 8, 12, …)

arr =array(seq(from = 4, by = 4, length.out = m * n),
             dim = c(m, n))
print(arr)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    4   28   52   76  100  124
## [2,]    8   32   56   80  104  128
## [3,]   12   36   60   84  108  132
## [4,]   16   40   64   88  112  136
## [5,]   20   44   68   92  116  140
## [6,]   24   48   72   96  120  144
  1. Menghitung berapa elemen dalam array yang bernilai lebih dari (mxn)
elemen=sum(arr > (m * n))
cat("a) Jumlah elemen >",m * n, "=",
    elemen,"\n")
## a) Jumlah elemen > 36 = 27
  1. Menampilkan elemen pada diagonal utama.
diagonal_utama=diag(arr)
cat("b) Diagonal utama:", diagonal_utama, "\n")
## b) Diagonal utama: 4 32 60 88 116 144
  1. Menghitung jumlah seluruh elemen baris ke-2
Jumlah_baris2=sum(arr[2, ])
cat("c) Jumlah elemen baris ke-2 =", Jumlah_baris2, "\n")
## c) Jumlah elemen baris ke-2 = 408

Mendeklarasikan Array 3 Dimensi

Menentukan dimensi array dan membuat array 3 dimensi (x, y, z) dari angka lebih dari 10 dan kurang dari 100

x = 5  # Jumlah baris
y = 5  # Jumlah kolom
z = 4  # Jumlah lapisan
# Membuat array 3D berisi angka 11 sampai 99
# Note: Karena 5x5x4=100 elemen sedangkan 11:99 hanya 89 angka,
# maka nilai akan diulang mulai dari 11 setelah mencapai 99
arr_3D = array((11:99), dim = c(x,y,z))
cat("Array 3D:\n");print(arr_3D)  #mencetak label dan menampilkan isi array
## Array 3D:
## , , 1
## 
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   11   16   21   26   31
## [2,]   12   17   22   27   32
## [3,]   13   18   23   28   33
## [4,]   14   19   24   29   34
## [5,]   15   20   25   30   35
## 
## , , 2
## 
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   36   41   46   51   56
## [2,]   37   42   47   52   57
## [3,]   38   43   48   53   58
## [4,]   39   44   49   54   59
## [5,]   40   45   50   55   60
## 
## , , 3
## 
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   61   66   71   76   81
## [2,]   62   67   72   77   82
## [3,]   63   68   73   78   83
## [4,]   64   69   74   79   84
## [5,]   65   70   75   80   85
## 
## , , 4
## 
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   86   91   96   12   17
## [2,]   87   92   97   13   18
## [3,]   88   93   98   14   19
## [4,]   89   94   99   15   20
## [5,]   90   95   11   16   21
  1. Melihat seluruh elemen pada lapisan ke-(z-3)
lapisan_ke_z3 = arr_3D[, , z - 3]
cat("Elemen pada lapisan ke-(z-3):\n");print(lapisan_ke_z3)
## Elemen pada lapisan ke-(z-3):
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   11   16   21   26   31
## [2,]   12   17   22   27   32
## [3,]   13   18   23   28   33
## [4,]   14   19   24   29   34
## [5,]   15   20   25   30   35
  1. Melihat nilai maksimum pada seluruh array
nilai_maksimum = max(arr_3D)
cat("Nilai maksimum pada seluruh array:");print(nilai_maksimum)
## Nilai maksimum pada seluruh array:
## [1] 99
  1. Mencari rata-rata per kolom
# Setiap nilai adalah rata-rata dari 5 angka dalam satu kolom pada satu lapisan.
for (k in 1:4) {
  cat("Rata-rata kolom pada lapisan ke-", k, ":\n", sep = "")
  print(colMeans(arr_3D[, , k]))  # Menggunakan arr_3D
}
## Rata-rata kolom pada lapisan ke-1:
## [1] 13 18 23 28 33
## Rata-rata kolom pada lapisan ke-2:
## [1] 38 43 48 53 58
## Rata-rata kolom pada lapisan ke-3:
## [1] 63 68 73 78 83
## Rata-rata kolom pada lapisan ke-4:
## [1] 88.0 93.0 80.2 14.0 19.0

Kesimpulan

Berdasarkan hasil percobaan yang dilakukan, dapat disimpulkan bahwa:

  1. Array 1 dimensi dapat dibuat menggunakan angka ganjil dari 5 hingga 100, serta dapat diolah untuk mencari elemen tertentu, mengurutkan, menghitung jumlah total, dan rata-ratanya.

  2. Array 2 dimensi dengan ukuran lebih dari 4x4 dapat dibuat menggunakan kelipatan 4. Dari array tersebut dapat dihitung jumlah elemen tertentu, serta mengakses elemen pada diagonal utama dan jumlah seluruh elemen pada baris kedua.

  3. Array 3 dimensi dapat dibentuk dari angka lebih dari 10 hingga kurang dari 100, serta dapat diambil lapisan tertentu, ditentukan nilai maksimumnya, dan dihitung rata-rata per kolomnya.

Melalui pembelajaran tentang array satu, dua, dan tiga dimensi di R, kita bisa memahami cara mengelola data dengan lebih terstruktur.