Anda di halaman 1dari 26

LAPORAN PRAKTIKUM

ALGORITMA & PEMROGRAMAN LANJUT


PERTEMUAN KE-4

Disusun Oleh :
NAMA : AYU RIZKY AMALIA
NIM : 195410008
JURUSAN : INFORMATIKA
JENJANG : S1

LaboratoriumTerpadu
Sekolah Tinggi Management Informatika Komputer
AKAKOM
YOGYAKARTA
2020
A. TUJUAN
1. Menjelaskan konsep array 2 dimensi
2. Merencanakan struktur data dalam bentuk array 2 dimensi
3. Mengaplikasikan array 2 dimensi

B. PEMBAHASAN LISTING
Pengertian array 2 dimensi
Array 2 Dimensi atau bisa disebut juga Array Multi Dimensi ,adalah versi lanjut dari Array
biasa ,yang merupakan sebuah deretan atau susunan , nama-nama variable( element)    , yang
memiliki tipe data sama dalam struktur list atau daftar, yang dapat diakses secara baris dan
kolom, berdasarkan element/indexnya.

Seperti halnya pada matriks di pelajaran matematika,yang mungkin kalian pernah pelajari . Jika
kita ingin menggunakan Array 2 Dimensi ,kita bisa menggunakan simbol  [] []  , saat kita
menginisialisasi nilai yang ada pada variable. Sebagai contoh , kalian bisa melihat gambar
dibawah , Contoh dari Array 2 Dimensi di bahasa pemrograman Java.

PRAKTIK 1

Deklarasi dan inisialisasi array 2-dimensi. Bandingkan dengan array 1-dimensi dan jelaskan
dalam program
public class Array2 {
public static void main(String[] args) {
String cats[][]= {{"terry","brown"},{"kitty","white"},
{"toby","gray"},{"fido","black"}};
System.out.println("Nama Kucing\tWarna");
System.out.println(cats[0][0] +"\t\t" + cats[0][1]);
System.out.println(cats[1][0] + "\t\t" + cats[1][1]);
System.out.println(cats[2][0] + "\t\t" + cats[2][1]);
System.out.println(cats[3][0] + "\t\t" + cats[3][1]);
}
}

Penjelasan:

String cats[][]= {{"terry","brown"},  Membuat array diikuti dengan nama


{"kitty","white"}, “cats” bertipe data string
{"toby","gray"},
{"fido","black"}};

System.out.println("Nama Kucing\tWarna");  Menampilkan keterangan dilayar


output bahwa kolom pertama diisi
dengan nama kucing, kolom kedua
untukwarna nya.
System.out.println(cats[0][0] +"\t\t" + cats[0]  Untuk menmpilkan index baris ke-0,
[1]); kolom ke-0 dan baris ke-0,kolom ke-1
System.out.println(cats[1][0] + "\t\t" + cats[1]  Untuk menmpilkan index baris ke-1,
[1]); kolom ke-0 dan baris ke-1,kolom ke-1
System.out.println(cats[2][0] + "\t\t" + cats[2]  Untuk menmpilkan index baris ke-2,
[1]); kolom ke-0 dan baris ke-2,kolom ke-1
System.out.println(cats[3][0] + "\t\t" + cats[3]  Untuk menmpilkan index baris ke-3,
[1]); kolom ke-0 dan baris ke-3,kolom ke-1

Output:

PRAKTIK 2

Modifikasi program praktik 1untuk menampilkan array menggunakan perulangan for. Amati
hasilnya dan jelaskan dalam laporan
public class praktik2 {
public static void main(String[] args) {
String cats[][]= {{"terry","brown"},
{"kitty","white"},
{"toby","gray"},
{"fido","black"}};
System.out.println("Nama Kucing\tWarna");
for (int i=0;i<cats.length;i++) {
for (int j=0;j<cats[i].length;j++) {
System.out.print(cats[i][j]);
System.out.print("\t");

}
System.out.println(" ");
}
}
}
Penjelasan:

String cats[][]= {{"terry","brown"},  Fungsi cast mengijinkan Anda untuk


{"kitty","white"}, mengkonversi nilai ke tipe data tertentu
{"toby","gray"}, atau untuk menugaskan sebuah set
{"fido","black"}}; karakter ke sebuah nilai.
 Untuk mendeklarasikan array dengan
tipe string.
for (int i = 0; i<cats.length; i++) { deklarasi perulangan untuk menampilkan
baris. i merupakan deklarasi untuk baris,
yaitu untuk variabel NamaKucing.
Cats.length merupakan inisialisasi untuk
jumlah elemen/panjang array.
for (int j=0;j<cats[i].length;j++) deklarasi perulangan untuk
menampilkan kolom. j merupakan
deklarasi untuk kolom, yaitu untuk
variabelWarna. Cats.length merupakan
inisialisasi untuk jumlah elemen/panjang array.
System.out.print(cats[i][j]); Memanggil dan menampilkan nilai dari i dan
j
System.out.print("\t"); Memberi tab antara nilai variabel i dan
nilai variabel j

Output:

PRAKTIK 3

Modifikasi program nomor 2 agar dapat menerima inputan dari user.


import java.util.Scanner;
public class praktik3 {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int b;
int k=2;
String warna,nama;
System.out.print("jumlah baris:");
b=in.nextInt();
String cats[][]=new String[b][k];
for(int x=0; x<cats.length;x++){
for(int y=0; y<cats[x].length;y++){
System.out.print("Nama Kucing=");
nama=in.next();
cats[x][y]=nama;
y++;
System.out.print("warna kucing=");
warna=in.next();
cats[x][y]=warna;
}
}
System.out.println("================");
System.out.println("nama kucing \t warna kucing");
for (int i=0;i<cats.length;i++) {
for (int j=0;j<cats[i].length;j++) {
System.out.print(cats[i][j]);
System.out.print("\t");

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

Penjelasan:

Pada program diatas kita user dapat menginputkan nama kucing dan warna kucing yang
diinginkan. Selain menginputkan nama dan warna kucing, user juga dapat menentukan jumlah
kucing yang diinputkan.

Scanner in=new Scanner(System.in);  fungsi dari code ini adalah untuk


pendeklarasian variable Scanner (variabel
nya adalah "in"
int b;  Deklarasikan nilai b
int k=2;  Deklarasikan nilai k samadengan 2
String warna,nama;  Deklarasikan warna dan nama
System.out.print("jumlah baris:");  untuk keluarkan tampilan “jumlah
b=in.nextInt(); baris”
 agar user dapat menginputkan nilai b
String cats[][]=new String[b][k];  Membuat array diikuti dengan nama
“cats” bertipe data string.untuk
memasukkan baris”b” dan kolom”k”
for(int x=0; x<cats.length;x++){  Untuk perulangan x dan y di samping
for(int y=0; y<cats[x].length;y++){ digunakan untuk mewakili penomoran
System.out.print("Nama Kucing="); di dalam array
nama=in.next();  Jadi setiap user menginputkan nama
cats[x][y]=nama; kucing dan warna kucing , maka akan
y++; di berikan penomeran (index)
System.out.print("warna kucing=");
warna=in.next();
cats[x][y]=warna;

 Untuk mengeluarkan tampilan “====”


System.out.println("================");
System.out.println("nama kucing \t  Untuk mengeluarkan tampilan”nama
warna kucing"); kucing” tab “wana kucing”

for (int i=0;i<cats.length;i++) {  Perulangan di samping untuk


for (int j=0;j<cats[i].length;j++) { menampilakan yang sudah diinputkan
System.out.print(cats[i][j]); user
System.out.print("\t");
}
System.out.println(" ");

Output:

PRAKTIK 4

Cobalah program berikut dan Amati hasilnya dan jelaskan dalam laporan.
import java.util.Scanner;
public class Matrik {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[][] x ={{1, 2, 3}, {4, 5, 6}};
int[][] y = {{3, 6, 1}, {4, 7, 9}};
int baris = 2;
int kolom = 3;
int[][] z = new int[baris][kolom];
System.out.println("ini adalah matrix x");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
System.out.print(x[i][j] + " ");
}
System.out.println();
}
System.out.println("ini adalah matrix y");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
System.out.print(y[i][j] + " ");
}
System.out.println();
}}}

Penjelasan:

Scanner input = new Scanner(System.in);  fungsi dari code ini adalah untuk
pendeklarasian variable Scanner (variabel
nya adalah "input"
int[][] x ={{1, 2, 3}, {4, 5, 6}};  untuk membuat array yang diikuti
int[][] y = {{3, 6, 1}, {4, 7, 9}}; dengan nama x dan bertipe data
integer, dengan isi {{1, 2, 3}, {4, 5,
6}}
 untuk membuat array yang diikuti
dengan nama y dan bertipe data
integer, dengan isi {{3, 6, 1}, {4, 7,
9}}
int baris = 2;  deklarasikan baris sama dengan 2
int kolom = 3;  deklarasikan kolom sama dengan 3
int[][] z = new int[baris][kolom];  Membuat array diikuti dengan nama
“z” bertipe data integer untuk
memasukkan baris”baris” dan
kolom”kolom”
System.out.println("ini adalah matrix x");  Untuk mengeluarkan tampilan "ini
for (int i = 0; i < baris; i++) { adalah matrix “x"
for (int j = 0; j < kolom; j++) {  Perulangan disamping untuk
System.out.print(x[i][j] + " "); memberikan penomeran(index) setiap
} baris dan kolom matrix “x”
System.out.println();  [0][0]untuk menampilkan index baris
} ke 0,kolom ke 0 dan menampilkan
angka”1”.
 [0][1]untuk menampilkan index baris
ke 0,kolom ke 1 dan menampilkan
angka”2”.
 [0][2]untuk menampilkan index baris
ke 0,kolom ke 2 dan menampilkan
angka”3”.
 [1][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”4”.
 [1][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”5”.
 [1][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”6”.
System.out.println("ini adalah matrix y");  Untuk mengeluarkan tampilan "ini
for (int i = 0; i < baris; i++) { adalah matrix “y"
for (int j = 0; j < kolom; j++) {  Perulangan disamping untuk
System.out.print(y[i][j] + " "); memberikan penomeran(index) setiap
} baris dan kolom matrix “y”
System.out.println();  [0][0]untuk menampilkan index baris
}}} ke 0,kolom ke 0 dan menampilkan
angka”4”.
 [0][1]untuk menampilkan index baris
ke 0,kolom ke 1 dan menampilkan
angka”6”.
 [0][2]untuk menampilkan index baris
ke 0,kolom ke 2 dan menampilkan
angka”1”.
 [1][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”4”.
 [1][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”7”.
 [1][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”9”.

Output:
PRAKTIK 5

Modifikasi program nomor 4 untuk menampilkan hasil output pengurangan dan penjumlahan
dari matrik tersebut
import java.util.Scanner;
public class praktik5 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[][] x ={{1, 2, 3}, {4, 5, 6}};
int[][] y = {{3, 6, 1}, {4, 7, 9}};
int baris = 2;
int kolom = 3;
int[][] z = new int[baris][kolom];
System.out.println("ini adalah matrix x");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
System.out.print(x[i][j] + " ");
}
System.out.println();
}
System.out.println("ini adalah matrix y");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
System.out.print(y[i][j] + " ");
}
System.out.println();
}

System.out.println("penjumlahan x+y");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
int jum= x[i][j]+ y[i][j];
System.out.print(jum + " ");
}
System.out.println();
}
System.out.println("penjumlahan x-y");
for (int i = 0; i < baris; i++) {
for (int j = 0; j < kolom; j++) {
int kur= x[i][j]- y[i][j];
System.out.print(kur + " ");
}
System.out.println();
}
}
}

Penjelasan:

Scanner input = new Scanner(System.in); Scanner input = new Scanner(System.in);


int[][] x ={{1, 2, 3}, {4, 5, 6}};  untuk membuat array yang diikuti
int[][] y = {{3, 6, 1}, {4, 7, 9}}; dengan nama x dan bertipe data
integer, dengan isi {{1, 2, 3}, {4, 5,
6}}
 untuk membuat array yang diikuti
dengan nama y dan bertipe data
integer, dengan isi {{3, 6, 1}, {4, 7,
9}}
int baris = 2;  deklarasikan baris sama dengan 2
int kolom = 3;  deklarasikan kolom sama dengan 3
int[][] z = new int[baris][kolom];  Membuat array diikuti dengan nama
“z” bertipe data integer untuk
memasukkan baris”baris” dan
kolom”kolom”
System.out.println("ini adalah matrix x");  Untuk mengeluarkan tampilan "ini
for (int i = 0; i < baris; i++) { adalah matrix “x"
for (int j = 0; j < kolom; j++) {  Perulangan disamping untuk
System.out.print(x[i][j] + " "); memberikan penomeran(index) setiap
} baris dan kolom matrix “x”
System.out.println();  [0][0]untuk menampilkan index baris
} ke 0,kolom ke 0 dan menampilkan
angka”1”.
 [0][1]untuk menampilkan index baris
ke 0,kolom ke 1 dan menampilkan
angka”2”.
 [0][2]untuk menampilkan index baris
ke 0,kolom ke 2 dan menampilkan
angka”3”.
 [1][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”4”.
 [1][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”5”.
 [1][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”6”.
System.out.println("ini adalah matrix y");  Untuk mengeluarkan tampilan "ini
for (int i = 0; i < baris; i++) { adalah matrix “y"
for (int j = 0; j < kolom; j++) {  Perulangan disamping untuk
System.out.print(y[i][j] + " "); memberikan penomeran(index) setiap
} baris dan kolom matrix “y”
System.out.println();  [0][0]untuk menampilkan index baris
} ke 0,kolom ke 0 dan menampilkan
angka”4”.
 [0][1]untuk menampilkan index baris
ke 0,kolom ke 1 dan menampilkan
angka”6”.
 [0][2]untuk menampilkan index baris
ke 0,kolom ke 2 dan menampilkan
angka”1”.
 [1][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”4”.
 [1][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”7”.
 [1][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”9”.

System.out.println("penjumlahan x+y");  Untuk menampilkan keluaran


"penjumlahan x+y");
for (int i = 0; i < baris; i++) {  Perulangan di samping untuk
for (int j = 0; j < kolom; j++) { menjumlahkan matrix “x” dan “y”
int kur= x[i][j] + y[i][j];
System.out.print(kur + " ");
}
System.out.println();
}
}
}
System.out.println("penjumlahan x-y");  Perulangan di samping untuk
for (int i = 0; i < baris; i++) { pengurangan matrix “x” dan “y”
for (int j = 0; j < kolom; j++) {
int kur= x[i][j]- y[i][j];
System.out.print(kur + " ");
}
System.out.println();
}

Output:

PRAKTIK 6

Cobalah program berikut untuk menampilkan Transpose dari matrik amati hasil outputnya
public class MatriksTranspose {
public static void main(String[] args) {
int[][] matriks ={{12,23,32},{34,56,63},{78,89,97}};
int j,k;
System.out.println("Matriks Sebelum Transpose");
for(j=0;j<3;j++){
for(k=0;k<3;k++){
System.out.print(matriks[j][k]+"");
}
System.out.println();
}
System.out.println("\nMatriks Setelah Transpose");
for(j=0;j<3;j++){
for(k=0;k<3;k++){
System.out.print(matriks[k][j]+"");
}
System.out.println();
}
}
}

Penjelasan:

int[][] matriks ={{12,23,32},{34,56,63},  untuk membuat array yang diikuti


{78,89,97}}; dengan nama “matriks” dan bertipe
int j,k; data integer, dengan isi {{12,23,32},
{34,56,63},{78,89,97}};

System.out.println("Matriks Sebelum  keluarkan tampilan "Matriks Sebelum


Transpose"); Transpose"
for(j=0;j<3;j++){  Perulangan disamping untuk
for(k=0;k<3;k++){ memberikan penomeran(index) setiap
System.out.print(matriks[j][k]+""); baris dan kolom matrix
}  J sama dengan 0, j kurang dari 3 nilai j
System.out.println(); akan dilakukan penambahan nilai.
}  k sama dengan 0, k kurang dari 3 nilai
k akan dilakukan penambahan nilai.

 [0][0]untuk menampilkan index baris


ke 0,kolom ke 0 dan menampilkan
angka”12”.
 [0][1]untuk menampilkan index baris
ke 0,kolom ke 1 dan menampilkan
angka”23”.
 [0][2]untuk menampilkan index baris
ke 0,kolom ke 2 dan menampilkan
angka”32”.
 [1][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”34”.
 [1][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”56”.
 [1][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”63”.
 [2][0]untuk menampilkan index baris
ke 1,kolom ke 0 dan menampilkan
angka”78”.
 [2][1]untuk menampilkan index baris
ke 1,kolom ke 1 dan menampilkan
angka”89”.
 [2][2]untuk menampilkan index baris
ke 1,kolom ke 2 dan menampilkan
angka”97”.
System.out.println("\nMatriks Setelah  Perulangan di samping untuk
Transpose"); menampilkan matriks yang telah di
for(j=0;j<3;j++){ tanspose
for(k=0;k<3;k++){
System.out.print(matriks[k][j]+"");
}
System.out.println();
}
}

Output:

Praktik 7

Buatlah program di bawah ini dan amati hasil outputnya

import java.util.Scanner;
public class Array2Dimensi1 {
public static void main(String[] args){
int b=3;int d=3; //matrik 3 baris 3kolom
System.out.println("Masukan NilaiMatrix:");
int[][] matrix1=new int[b][d];
for(int i=0;i<b;i++){
for(int j=0;j<d;j++){
matrix1[i][j]=input();
}
}
for(int i=0;i<b;i++){
for(int j=0;j<d;j++){
System.out.print(matrix1[i][j]+"");
}
System.out.println();
}
}
static int input(){
Scanner a=new Scanner(System.in);
int b=a.nextInt();
return b;
}
}

Penjelasan:

int b=3;int d=3;  Untuk mendeklarasikan b(baris)=3


 Untuk mendeklarasikan d(kolom)=3
System.out.println("Masukan NilaiMatrix:");  Tampilkan "Masukan NilaiMatrix:”
int[][] matrix1=new int[b][d];  Membuat array diikuti dengan nama
“matrix1” bertipe data integer untuk
memasukkan b”baris” dan d”kolom”
for(int i=0;i<b;i++){  Perulangan disamping untuk
for(int j=0;j<d;j++){ menapilkan dan memberi
matrix1[i][j]=input(); penomeran(index) pada nilai yang
} diinputkan oleh user
}
for(int i=0;i<b;i++){  Untuk menampilkan nilai matriks
for(int j=0;j<d;j++){ yang sudah diinputkan dengan
System.out.print(matrix1[i][j]+""); ketentuan perulangan di samping
}  [0][0],[0][1],[0][2]
System.out.println();  [1][0],[1][1],[1][2]
}  [2][0],[2][1],[2][2]
}

Output:
Praktik 8

Ubahlah kembali praktik program no 7, agar menghasilkan perkalian matrik


import java.util.Scanner;
public class praktik8 {
public static void main(String[] args){
int b=3;int d=3; //matrik 3 baris 3kolom
Scanner input=new Scanner(System.in);
System.out.println("Masukan NilaiMatrix:");
int[][] matrix1=new int[b][d];
for(int i=0;i<b;i++){
for(int j=0;j<d;j++){
matrix1[i][j]=input.nextInt();
}
}
System.out.println("matrix a");
for(int i=0;i<b;i++){
for(int j=0;j<d;j++){
System.out.print(matrix1[i][j]+"");
}
System.out.println();

}
System.out.println("matrix a x a");
int a;
for(int i=0;i<b;i++){
for(int j=0;j<d;j++){
a=matrix1[i][j]* matrix1[j][i];
System.out.println(a+" ");
}
System.out.println(" ");
}
}
}

Penjelasan:

int b=3;int d=3;  Untuk mendeklarasikan b(baris)=3


 Untuk mendeklarasikan d(kolom)=3
Scanner input=new Scanner(System.in);  Scanner input =newScanner(System.in);
System.out.println("Masukan  Untuk menampilkan "Masukan
NilaiMatrix:"); NilaiMatrix:");
int[][] matrix1=new int[b][d];  Membuat array diikuti dengan nama
“matrix1” bertipe data integer untuk
memasukkan b”baris” dan d”kolom”
for(int i=0;i<b;i++){  Perulangan disamping untuk
for(int j=0;j<d;j++){ menapilkan dan memberi
matrix1[i][j]=input.nextInt(); penomeran(index) pada nilai yang
} diinputkan oleh user
}
System.out.println("matrix a");  Untuk menampilkan nilai matriks yang
for(int i=0;i<b;i++){ sudah diinputkan dengan ketentuan
for(int j=0;j<d;j++){ perulangan di samping
System.out.print(matrix1[i][j]+"");  [0][0],[0][1],[0][2]
}  [1][0],[1][1],[1][2]
System.out.println();  [2][0],[2][1],[2][2]

}
System.out.println("matrix a x a");  Perulangan disamping untuk
int a; menghitung perkalian matriks a dikali
for(int i=0;i<b;i++){ matriks a
for(int j=0;j<d;j++){
a=matrix1[i][j]* matrix1[j]
[i];
System.out.println(a+" ");
}
System.out.println(" ");
}
}
}

Output:
C. TUGAS

Latihan1

import java.util.Scanner;
public class JavaApplication2 {
public static void main(String[] args) throws Exception {
Scanner input = new Scanner(System.in);
int mhs,jml, banyakTes = 3, nilai[][], ntt[], ntr[];
float rata[], jumlah[], rtt, rtr;
System.out.print("Masukkan Jumlah Mahasiswa : ");
mhs = input.nextInt();
nilai = new int[mhs][banyakTes];
jumlah = new float[mhs];
rata = new float[mhs];
ntt = new int[banyakTes];
ntr = new int[banyakTes];
System.out.println();
for(int h=0;h<mhs;h++){ //Mahasiswa
System.out.println("Mahasiswa " + (h+1));
for(int i=0;i<banyakTes;i++){ //Tes keberapa
System.out.print("Nilai Tes " + (i+1) + " : ");
nilai[h][i] = input.nextInt();
jumlah[h] = jumlah[h] + nilai[h][i];
}
rata[h] = jumlah[h]/banyakTes;
System.out.println();
}
for(int i=0;i<banyakTes;i++){
ntt[i] = nilai[0][i];
ntr[i] = nilai[0][i];
}
rtt = rata[0];
rtr = rata[0];
for(int i=0;i<banyakTes;i++){
for(int j=0;j<mhs;j++){
if(ntt[i] < nilai[j][i]){
ntt[i] = nilai[j][i];
}
if(ntr[i] > nilai[j][i]){
ntr[i] = nilai[j][i];
}
}
}
for(int i=0;i<mhs;i++){
if(rtt < rata[i]){
rtt = rata[i];
}
if(rtr > rata[i]){
rtr = rata[i];
}
}
System.out.println("---------------------------");
System.out.println("Daftar Nilai Mahasiswa : ");
System.out.println("---------------------------");
System.out.println();
System.out.println("\t\tTest 1\tTest 2\tTest 3\tRata-rata");
for(int j=0;j<mhs;j++){
System.out.print("Mahasiswa " + (j+1));
for(int k=0;k<banyakTes;k++){
System.out.print("\t" + nilai[j][k]);
}
System.out.print("\t" + rata[j]);
System.out.println();
}
System.out.println();
System.out.print("Nilai Tertinggi\t");
for(int j=0;j<banyakTes;j++){//Nilai tertinggi
System.out.print(ntt[j] + "\t");
}
System.out.print(rtt);//Rata-rata tertinggi
System.out.println();
System.out.print("Nilai Teredah\t");
for(int j=0;j<banyakTes;j++){//Nilai terendah
System.out.print(ntr[j] + "\t");
}
System.out.print(rtr);//Rata-rata terendah
System.out.println();
}
}

Penjelasan:

Scanner input = new Scanner(System.in);  Scanner input=newScanner(System.in);


int mhs,jml, banyakTes = 3, nilai[][],  Membuat array diikuti dengan nama
ntt[], ntr[]; “mhs,jml,banyakTes” bertipe data integer
float rata[], jumlah[], rtt, rtr; untuk memasukkan nilai,ntt dan ntr
mhs = input.nextInt();  Statement di samping untuk menginputka
data mhs
nilai = new int[mhs][banyakTes];  Membuat array diikuti dengan nama
“nilai” bertipe data integer untuk
memasukkan mhs dan banyakTes
jumlah = new float[mhs];  Membuat array diikuti dengan nama
“jumlah” bertipe data float untuk
memasukkan mhs
rata = new float[mhs];  Membuat array diikuti dengan nama “rata”
bertipe data float untuk memasukkan
banyakTes
ntt = new int[banyakTes];  Membuat array diikuti dengan nama “ntt”
bertipe data integer untuk memasukkan
banyakTes
 Membuat array diikuti dengan nama “ntr”
ntr = new int[banyakTes]; bertipe data integer untuk memasukkan
System.out.println(); banyakTes
for(int h=0;h<mhs;h++){ //Mahasiswa  Perulanagn di sampaing untuk mempilkan
System.out.println("Mahasiswa " + ("Mahasiswa " + (h+1)); sesuai yang
(h+1)); diinputka user
for(int i=0;i<banyakTes;i++){ //Tes  Jumlah tes yang di ambil setiap mahasiswa
keberapa 3 kali
System.out.print("Nilai Tes " + (i+1) + " :
");  Untuk menginputkan nilai
nilai[h][i] = input.nextInt();  Jumlah nilai sam dengan jumlah ditambah
jumlah[h] = jumlah[h] + nilai[h][i]; nilai [h][i]
}  Setiap nilai mahasiswa yang diinputkan
rata[h] = jumlah[h]/banyakTes; akan di cari rata-ratanya
System.out.println();
}
for(int i=0;i<banyakTes;i++){  Nilai I sama dengan 0, nilai I kurang dari
ntt[i] = nilai[0][i]; namyakTes
ntr[i] = nilai[0][i];  Nilai tes ke-1 masukan, lalu akan disimpan
}  Masukkan nilai tes ke-2 jika nilai ke-2
rtt = rata[0]; lebih tinggi maka nilai ke-2 akan disimpan
rtr = rata[0];  Masukan nilai ke-3, jika nilai ketiga lebih
for(int i=0;i<banyakTes;i++){ tinggi nilai ke-2 akan di ganti dengan nilai
for(int j=0;j<mhs;j++){ ke-3
if(ntt[i] < nilai[j][i]){
ntt[i] = nilai[j][i];
}
if(ntr[i] > nilai[j][i]){
ntr[i] = nilai[j][i];
}

for(int i=0;i<mhs;i++){  Nilai tertinggi akan di cari rata-ratanya


if(rtt < rata[i]){  Begitu juga dengan nilai terendah
rtt = rata[i];
}
if(rtr > rata[i]){
rtr = rata[i];
}
}

System.out.print(rtt);//Rata-rata tertinggi  Untuk menampilkan rata-rata, nilai


System.out.println(); terendah dan nilai tertinggi
System.out.print("Nilai Teredah\t");
for(int j=0;j<banyakTes;j++){//Nilai
terendah
System.out.print(ntr[j] + "\t");
}
System.out.print(rtr);//Rata-rata terendah
System.out.println();
}
}

Output:
Latihan 2

Modifikasi program Latihan 1 untuk menambah data inputan menampilkan : Nama, Nim dan Jurusan

import java.util.Scanner;
public class latihan2 {
public static void main(String[] args) throws Exception {
Scanner input = new Scanner(System.in);
int mhs,jml,nim, banyakTes = 3, nilai[][], ntt[], ntr[];
float rata[], jumlah[], rtt, rtr;
String nama,jur;
System.out.print("Masukkan Jumlah Mahasiswa : ");
mhs = input.nextInt();
nilai = new int[mhs][banyakTes];
jumlah = new float[mhs];
rata = new float[mhs];
ntt = new int[banyakTes];
ntr = new int[banyakTes];
System.out.println();
for(int h=0;h<mhs;h++){ //Mahasiswa
System.out.println("Mahasiswa " + (h+1));
System.out.print("Masukan nama\t:");
nama=input.next();
System.out.print("Masukan nim\t:");
nim=input.nextInt();
System.out.print("Masukan jurusan\t:");
jur=input.next();
for(int i=0;i<banyakTes;i++){ //Tes keberapa
System.out.print("Nilai Tes " + (i+1) + " : ");
nilai[h][i] = input.nextInt();
jumlah[h] = jumlah[h] + nilai[h][i];
}
rata[h] = jumlah[h]/banyakTes;
System.out.println();
}
for(int i=0;i<banyakTes;i++){
ntt[i] = nilai[0][i];
ntr[i] = nilai[0][i];
}
rtt = rata[0];
rtr = rata[0];
for(int i=0;i<banyakTes;i++){
for(int j=0;j<mhs;j++){
if(ntt[i] < nilai[j][i]){
ntt[i] = nilai[j][i];
}
if(ntr[i] > nilai[j][i]){
ntr[i] = nilai[j][i];
}
}
}
for(int i=0;i<mhs;i++){
if(rtt < rata[i]){
rtt = rata[i];
}
if(rtr > rata[i]){
rtr = rata[i];
}
}

System.out.println("---------------------------");
System.out.println("Daftar Nilai Mahasiswa : ");
System.out.println("---------------------------");
System.out.println();
System.out.println("\t\tTest 1\tTest 2\tTest 3\tRata-rata");
for(int j=0;j<mhs;j++){
System.out.print("Mahasiswa " + (j+1));
for(int k=0;k<banyakTes;k++){
System.out.print("\t" + nilai[j][k]);
}
System.out.print("\t" + rata[j]);
System.out.println();
}
System.out.println();
System.out.print("Nilai Tertinggi\t");
for(int j=0;j<banyakTes;j++){//Nilai tertinggi
System.out.print(ntt[j] + "\t");
}
System.out.print(rtt);//Rata-rata tertinggi
System.out.println();
System.out.print("Nilai Teredah\t");
for(int j=0;j<banyakTes;j++){//Nilai terendah
System.out.print(ntr[j] + "\t");
}
System.out.print(rtr);//Rata-rata terendah
System.out.println();
}
}

Penjelasan:

Scanner input = new Scanner(System.in);  Scanner input=newScanner(System.in);


int mhs,jml, banyakTes = 3, nilai[][],  Membuat array diikuti dengan nama
ntt[], ntr[]; “mhs,jml,banyakTes” bertipe data integer
float rata[], jumlah[], rtt, rtr; untuk memasukkan nilai,ntt dan ntr
mhs = input.nextInt();  Statement di samping untuk menginputka
data mhs
nilai = new int[mhs][banyakTes];  Membuat array diikuti dengan nama
“nilai” bertipe data integer untuk
memasukkan mhs dan banyakTes
jumlah = new float[mhs];  Membuat array diikuti dengan nama
“jumlah” bertipe data float untuk
memasukkan mhs
rata = new float[mhs];  Membuat array diikuti dengan nama “rata”
bertipe data float untuk memasukkan
banyakTes
ntt = new int[banyakTes];  Membuat array diikuti dengan nama “ntt”
bertipe data integer untuk memasukkan
banyakTes
 Membuat array diikuti dengan nama “ntr”
ntr = new int[banyakTes]; bertipe data integer untuk memasukkan
System.out.println(); banyakTes
for(int h=0;h<mhs;h++){ //Mahasiswa  Perulanagn di sampaing untuk mempilkan
System.out.println("Mahasiswa " + ("Mahasiswa " + (h+1)); sesuai yang
(h+1)); diinputka user
for(int i=0;i<banyakTes;i++){ //Tes  Jumlah tes yang di ambil setiap mahasiswa
keberapa 3 kali
System.out.print("Nilai Tes " + (i+1) + " :
");  Untuk menginputkan nilai
nilai[h][i] = input.nextInt();  Jumlah nilai sam dengan jumlah ditambah
jumlah[h] = jumlah[h] + nilai[h][i]; nilai [h][i]
}  Setiap nilai mahasiswa yang diinputkan
rata[h] = jumlah[h]/banyakTes; akan di cari rata-ratanya
System.out.println();
}
System.out.print("Masukan nama\t:");  Tambahkan statmen di samping untuk
nama=input.next(); menampilkan nama,nim, dan jurusan
setiap mahasiswa yang ikut tes
System.out.print("Masukan
nim\t:");
nim=input.nextInt();

System.out.print("Masukan
jurusan\t:");
jur=input.next();

for(int i=0;i<banyakTes;i++){  Nilai I sama dengan 0, nilai I kurang dari


ntt[i] = nilai[0][i]; namyakTes
ntr[i] = nilai[0][i];  Nilai tes ke-1 masukan, lalu akan disimpan
}  Masukkan nilai tes ke-2 jika nilai ke-2
rtt = rata[0]; lebih tinggi maka nilai ke-2 akan disimpan
rtr = rata[0];  Masukan nilai ke-3, jika nilai ketiga lebih
for(int i=0;i<banyakTes;i++){ tinggi nilai ke-2 akan di ganti dengan nilai
for(int j=0;j<mhs;j++){ ke-3
if(ntt[i] < nilai[j][i]){
ntt[i] = nilai[j][i];
}
if(ntr[i] > nilai[j][i]){
ntr[i] = nilai[j][i];
}

for(int i=0;i<mhs;i++){  Nilai tertinggi akan di cari rata-ratanya


if(rtt < rata[i]){  Begitu juga dengan nilai terendah
rtt = rata[i];
}
if(rtr > rata[i]){
rtr = rata[i];
}
}

System.out.print(rtt);//Rata-rata tertinggi  Untuk menampilkan rata-rata, nilai


System.out.println(); terendah dan nilai tertinggi
System.out.print("Nilai Teredah\t");
for(int j=0;j<banyakTes;j++){//Nilai
terendah
System.out.print(ntr[j] + "\t");
}
System.out.print(rtr);//Rata-rata terendah
System.out.println();
}
}

Output:

D. KESIMPULAN
Dari pertemuan ini dapat disimpulkan bahwa mahasiswa harus menjelaskan konsep array
2 dimensi ,merencanakan struktur data dalam bentuk array 2 dimensi dan
mengaplikasikan array 2 dimensi.

Anda mungkin juga menyukai