Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

TUGAS PBO

NAMA : MUHAMMAD MISBAH SUBKHI/100411100105

import java.lang.*; import java.util.*; interface statistician { public abstract void tambah(double num); berfungsi untuk memasukkan nilai public abstract void jumlah(); berfungsi untuk menjumlahkan nilai public abstract void ratarata(); berfungsi untuk menghitung rata rata public abstract int size (); berfungsi untuk menghitung banyaknya nilai dari data public abstract double maksi(); berfungsi untuk mengetahui nilai terbesar public abstract double minim(); berfungsi untuk mengetahui nilai terkecil public abstract double akhir(); berfungsi untuk mengetahui data terkahir } class NumStat implements statistician{ double j, k, l, m, n; int data1=0; public NumStat(){} public void tambah(double num){ data1++; if (data1==1){ j=num; } else if(data1==2){ k=num; } else if(data1==3){ l=num; } else if(data1==4){ m=num; } else if(data1==5){ n=num; } } public void jumlah(){ double jumlah; if(data1==1){ jumlah=j; System.out.print("jumlah data:"+jumlah); } else if(data1==2){ jumlah=j+k;

System.out.print("jumlah data:"+jumlah); } else if(data1==3){ jumlah=j+k+l; System.out.print("jumlah data:"+jumlah); } else if(data1==4){ jumlah=j+k+l+m; System.out.print("Jumlah data:"+jumlah); } else if(data1==5){ jumlah=j+k+l+m+n; System.out.print("jumlah data:"+jumlah); } } public void ratarata(){ double jumlah; double rata; if(data1==1){ jumlah=j; rata=jumlah/data1; System.out.print("Rata-rata :"+rata); } else if(data1==2){ jumlah=j+k; rata=jumlah/data1; System.out.print("Rata-rata :"+rata); } else if(data1==3){ jumlah=j+k+l; rata=jumlah/data1; System.out.print("Rata-rata :"+rata); } else if(data1==4){ jumlah=j+k+l+m; rata=jumlah/data1; System.out.print("Rata-rata :"+rata); } else if(data1==5){ jumlah=j+k+l+m+n; rata=jumlah/data1; System.out.print("Rata-rata :"+rata); } } public int size (){ return data1; } public double maksi (){ double maksiimum=0; if(data1==1){maksiimum=j;} else if(data1==2){ if(k<j){

maksiimum=j; } if(j<k){ maksiimum=k; } } else if(data1==3){ if(j<l&&k<l){maksiimum=l; } if(j<k&&l<k){maksiimum=k; } if(k<j&&l<j){maksiimum=j; } } else if (data1==4){ if(j<m&&k<m&&l<m){ maksiimum=m; } if(j<l&&k<l&&m<l){ maksiimum=l; } if(j<k&&l<k&&m<k){ maksiimum=k; } if(k<j&&l<j&&m<j){ maksiimum=j; } }else if(data1==5){if(j<n&&k<n&&l<n&&m<n){ maksiimum=n; } if(j<m&&k<m&&l<m&&n<m){ maksiimum=m; } if(j<l&&k<l&&m<l&&n<l){ maksiimum=l; } if(j<k&&l<k&&m<k&&n<k){ maksiimum=k; } if(k<j&&l<j&&m<j&&n<j){ maksiimum=j; } } return maksiimum; } public double minim(){ double minimimum=0; if(data1==1){ minimimum=j; }else if(data1==2){if(k>j){ minimimum=j; } if(j>k){ minimimum=k;

} }else if(data1==3){if(j>l&&k>l){ minimimum=l; } if(j>k&&l>k){ minimimum=k; } if(k>j&&l>j){ minimimum=j; } }else if (data1==4){if(j>m&&k>m&&l>m){ minimimum=m; } if(j>l&&k>l&&m>l){ minimimum=l; } if(j>k&&l>k&&m>k){ minimimum=k; } if(k>j&&l>j&&m>j){ minimimum=j; } }else if(data1==5){if(j>n&&k>n&&l>n&&m>n){ minimimum=n; } if(j>m&&k>m&&l>m&&n>m){ minimimum=m; } if(j>l&&k>l&&m>l&&n>l){ minimimum=l; } if(j>k&&l>k&&m>k&&n>k){ minimimum=k; } if(k>j&&l>j&&m>j&&n>j){ minimimum=j; } } return minimimum; } public double akhir(){ double akhir=0; if(data1==1){ akhir=j; } if(data1==2){ akhir=k; } if(data1==3){ akhir=l; } if(data1==4){ akhir=m; }

if(data1==5){ akhir=n; } return akhir; } } class ArrayStat implements statistician{ public int nilaiarray=0; public double Subkhi []=new double [5]; public jrrayStat(){ } public void arraybaru(){ if (nilaiarray == Subkhi.length) { int ukurankaru = 2 * Subkhi.length; double [] Subkhikaru = new double [ukurankaru]; System.arraycopy(Subkhi, 0, Subkhikaru, 0, Subkhi.length); Subkhi = Subkhikaru; } } public void tambah(double num){ //memasukkan nilai if (nilaiarray<Subkhi.length){ Subkhi[nilaiarray]=num; nilaiarray++; } else if(nilaiarray>=Subkhi.length){ arraybaru(); Subkhi[nilaiarray]=num; nilaiarray++; } } public void jumlah(){ //menjumlahkan nilai dari data double jumlah=0; for(int i=0;i<nilaiarray;i++){ jumlah=jumlah+Subkhi[i]; } System.out.print("Jumlah : "+jumlah); } public void ratarata(){ //menghitung rata-rata nilai dari data double jumlah=0; for(int i=0;i<nilaiarray;i++){ jumlah=jumlah+Subkhi[i]; } double rata=jumlah/nilaiarray; System.out.print("Rata-Rata : "+rata); } public int size (){ return nilaiarray; }

public double maksi(){ double maksiimum=Subkhi[0]; for(int i=1; i<nilaiarray; i++){ if(Subkhi[i] > maksiimum){ maksiimum = Subkhi[i]; }} return maksiimum; } public double minim(){ double minimimum=Subkhi[0]; for(int i=1; i<nilaiarray; i++){ if(Subkhi[i] <minimimum){ minimimum = Subkhi[i]; }} return minimimum; } public double akhir(){ double akhir = Subkhi[nilaiarray-1]; return akhir; } }

public class Subkhi { static int pil; static int pilarray; static int pilnum; static NumStat ObjectNum = new NumStat(); static jrrayStat Objectjrray = new jrrayStat(); static void menu(){ System.out.println("MENU = "); System.out.println("1. CLASS NumStat"); System.out.println("2. CLASS ArrayStat"); System.out.print("\nMasukkan Pilihan Anda :"); } static void menuarray(){ System.out.println("Menu ArrayStat:"); System.out.println("1.Masukkan data"); System.out.println("2.Jumlah data"); System.out.println("3.Rata-rata data"); System.out.println("4.Banyak data"); System.out.println("5.Nilai Maksimum"); System.out.println("6.Nilai Minimum"); System.out.println("7.Nilai Terakhir"); System.out.println("8.Keluar"); System.out.println("\n"); System.out.print("Masukkan Pilihan :"); } static void menunum(){

System.out.println("Menu NumStat: "); System.out.println("1.Masukkan data"); System.out.println("2.Jumlah data"); System.out.println("3.Rata-rata data"); System.out.println("4.Banyak data"); System.out.println("5.Nilai Maksimum"); System.out.println("6.Nilai Minimum"); System.out.println("7.Nilai Terakhir"); System.out.println("8.Keluar"); System.out.print("\nMasukkan Pilihan :");

} public static void main (String[] args) { Scanner in = new Scanner(System.in); do{ menu(); pil=in.nextInt(); System.out.println(""); switch(pil){ case 1: do{ menunum(); pilnum=in.nextInt(); System.out.println(""); switch(pilnum){ case 1:if(ObjectNum.data1<5){ System.out.print("Masukkan data: "); double masuk=in.nextDouble(); ObjectNum.tambah(masuk); } else System.out.print("data Penuh!"); System.out.println(""); break; case 2:ObjectNum.jumlah();System.out.println(""); break; case 3:ObjectNum.ratarata();System.out.println(""); break; case 4:System.out.print("Banyak data="+ObjectNum.size());System.out.println(""); break; case 5:System.out.print("Nilai Maksimum="+ObjectNum.maksi());System.out.println(""); break; case 6:System.out.print("Nilai Minimum="+ObjectNum.minim());System.out.println(""); break; case 7:System.out.print("Nilai Terakhir="+ObjectNum.akhir());System.out.println(""); } } while(pilnum<8&&pilnum>0); break; case 2:

do{menuarray(); pilarray=in.nextInt(); System.out.println(""); switch(pilarray){ case 1:System.out.print("Masukkan data: "); double masuk=in.nextDouble(); Objectjrray.tambah(masuk); break; case 2:Objectjrray.jumlah();System.out.println(""); break; case 3:Objectjrray.ratarata();System.out.println(""); break; case 4:System.out.print("Banyak data="+Objectjrray.size());System.out.println(""); break; case 5:System.out.print("Nilai Maksimum="+Objectjrray.maksi());System.out.println(""); break; case 6:System.out.print("Nilai Minimum="+Objectjrray.minim());System.out.println(""); break; case 7:System.out.print("Nilai Terakhir="+Objectjrray.akhir());System.out.println(""); } } while(pilarray<8&&pilarray>0); break; } } while(pil==2||pil==1); } }

Running :

You might also like