Anda bisa memodifikasi kelas pada:
kelas ini
sehingga user dapat memasukkan array secara manual, dan elemen-elemen array tersebut menjadi data arr pada objek yang diciptakan.
========================================================================
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | package tugasPBO; import java.util.*; public class RerataVariansi { int ukuran_array; double[] arr = new double[this.ukuran_array]; double rerata; double variansi; // Ini adalah konstruktor tanpa argumen dari kelas RerataVariansi public RerataVariansi() { this.ukuran_array = 5; arrayAcak(5,10); this.rerata = 0.0; this.variansi = 0.0; } // Ini adalah konstruktor satu-argumen dari kelas RerataVariansi public RerataVariansi(int ukuran) { this.ukuran_array = ukuran; arrayAcak(ukuran,10); } /* Ini adalah konstruktor dua-argumen dari kelas RerataVariansi * yang memanggil konstruktor satu-argumen */ public RerataVariansi(int ukuran, int pengali) { this(ukuran); arrayAcak(ukuran, pengali); } /* Ini adalah metode helper untuk membangkitkan * array acak yang dipakai untuk konstruktor */ public void arrayAcak(int ukuran, int pengali) { double[] nilaiAcak = new double[ukuran]; for(int i = 0; i < nilaiAcak.length; i++) { nilaiAcak[i] = (double)(Math.random()*pengali); } this.arr = nilaiAcak; } //Metode untuk menampilkan array public void tampilkanArray(double arr[]) { System.out.println("Elemen-elemen array: "); System.out.println(Arrays.toString(arr)); } //Metode untuk menghitung rerata //Menghitung dan menampilkan rerata array public void hitungRerata(double arr[]) { double jum=0.0, rerata=0.0; int j = 0; while(j<arr.length){ jum += arr[j]; j++; } //System.out.println("Total penjumlahan elemen array:"+jum); rerata = jum / arr.length; this.rerata = rerata; } // Metode untuk menghitung dan menampilkan variansi array public void hitungVariansi(double arr[], double rerata) { int k = 0; double variansi = 0.0; double temp = 0.0; while(k<arr.length){ temp += (arr[k]-rerata)*(arr[k]-rerata); k++; } variansi = temp / arr.length; this.variansi = variansi; } //Metode untuk membaca nilai-nilai dari user public void inisialisasiArray() { Scanner s = new Scanner(System.in); System.out.println("Masukkan banyak elemen array: "); int n=s.nextInt(); double arr[]=new double[n]; //Membaca array System.out.println("Masukkan elemen-elemen array: "); int i=0; while(i<n){ arr[i]=s.nextDouble(); i++; } this.arr = arr; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | package tugasPBO; import java.io.*; import java.util.*; public class UjiRerataVariansi { public static void main(String args[]) { //Menciptakan satu objek menggunakan konstruktor tanpa argumen RerataVariansi objek1 = new RerataVariansi(); System.out.println("Nilai-nilai data pada objek objek1: "); objek1.tampilkanArray(objek1.arr); //Menciptakan satu objek menggunakan konstruktor satu-argumen RerataVariansi objek2 = new RerataVariansi(10); System.out.println("\n"); System.out.println("Nilai-nilai data pada objek objek2: "); objek2.tampilkanArray(objek2.arr); //Menciptakan satu objek menggunakan konstruktor dua-argumen RerataVariansi objek3 = new RerataVariansi(15,10); System.out.println("\n"); System.out.println("Nilai-nilai data pada objek objek3: "); objek3.tampilkanArray(objek3.arr); //Menghitung rerata dan variansi untuk objek1 System.out.println("\n"); objek1.hitungRerata(objek1.arr); System.out.println("Rerata array pada objek1: "+objek1.rerata); objek1.hitungVariansi(objek1.arr,objek1.rerata); System.out.println("Variansi array pada objek1: "+objek1.variansi); //Menghitung rerata dan variansi untuk objek2 System.out.println("\n"); objek2.hitungRerata(objek2.arr); System.out.println("Rerata array pada objek2: "+objek2.rerata); objek2.hitungVariansi(objek1.arr,objek2.rerata); System.out.println("Variansi array pada objek2: "+objek2.variansi); //Menghitung rerata dan variansi untuk objek3 System.out.println("\n"); objek3.hitungRerata(objek3.arr); System.out.println("Rerata array pada objek3: "+objek3.rerata); objek3.hitungVariansi(objek3.arr,objek3.rerata); System.out.println("Variansi array pada objek3: "+objek3.variansi); //Menginisialisasi data objek dari user RerataVariansi objek4 = new RerataVariansi(); System.out.println("\n"); objek4.inisialisasiArray(); objek4.tampilkanArray(objek4.arr); objek4.hitungRerata(objek4.arr); System.out.println("Rerata array pada objek4: "+objek4.rerata); objek4.hitungVariansi(objek4.arr,objek4.rerata); System.out.println("Variansi array pada objek4: "+objek4.variansi); } } |
KELUARAN PROGRAM:
Nilai-nilai data pada objek objek1:
Elemen-elemen array:
[8.666967959942264, 2.4513355295560366, 8.14214213495775, 7.897084825440439, 3.84329400738763]
Nilai-nilai data pada objek objek2:
Elemen-elemen array:
[1.8454613490329175, 3.43417910674214, 5.351873038789428, 6.705520347158481, 0.6512700660318727, 8.989228155623438, 5.347314923201699, 1.0545280003287283, 0.5741698290690489, 3.2252675285248222]
Nilai-nilai data pada objek objek3:
Elemen-elemen array:
[6.6391606392743805, 3.555253104220558, 8.245048976729413, 2.4785495640299873, 6.819121899024258, 7.015000844909119, 9.529250293817457, 7.431514208543939, 5.995550704064707, 3.622433701182064, 1.129417252929047, 6.735318281988961, 6.407040084287512, 3.3924326944614682, 0.9047490231303446]
Rerata array pada objek1: 6.200164891456824
Variansi array pada objek1: 6.468898440827632
Rerata array pada objek2: 3.717881234450258
Variansi array pada objek2: 12.630630594669519
Rerata array pada objek3: 5.326656084839547
Variansi array pada objek3: 6.4049400871332045
Masukkan banyak elemen array:
5
Masukkan elemen-elemen array:
1.1
2.2
3.3
4.4
5.5
Elemen-elemen array:
[1.1, 2.2, 3.3, 4.4, 5.5]
Rerata array pada objek4: 3.3
Variansi array pada objek4: 2.42
No comments:
Post a Comment