Contoh soal algoritma pemrograman array
2:11 AMARRAY JAVA
Soal :Nyatakan pasangan data berikut dalam 2 buah larik
X=1,2,3,4,5,6,7,8,9,10
Y=23.4,26.9,32.5,34.9,40.3,39.9,42.9,47.0,50.1,53.2
Kemudian tuliskan algoritma untuk menentukan koefisien persamaan regresi dari pasangan data tersebut yang membentuk:
Y=a+bX
Dalam hal ini a dan b dapat dihitung melalui rumus berikut
Jawab: Source code jawaban dari program soal diatas adalah
public class soalarray {
public static void main(String[] args){
//deklarasi dan inisiasi variabel yang dibutuhkan
int[] X={1,2,3,4,5,6,7,8,9,10};
double[] Y={23.4,26.9,32.5,34.9,40.3,39.9,42.9,47.0,50.1,53.2};
double[] XY=new double[10];
double sigmax=0;double sigmay=0;double sigmaXY=0;
int sigmaX2=0;double b,a;
double xbar; double ybar;
//mencari rata-rata X dan Y;
for(int i=0;i<10;i++){
int temp=X[i];double temp2=Y[i];
sigmax+=temp;
sigmay+=temp2;
}
xbar=sigmax/X.length;ybar=sigmay/Y.length;
//menghitung sigmaXY
for(int i=0;i<10;i++){
XY[i]=X[i]*Y[i];
double temp=XY[i];
sigmaXY+=temp;
}
//menghitung sigmaXkuadrat
for(int i=0;i<10;i++){
int temp=X[i]*X[i];
sigmaX2+=temp;
}
//menghitung b
b=(sigmaXY-((sigmax*sigmay)/10))/(sigmaX2-(sigmaX2/10));
//menghitung a
a=ybar+(b*xbar);
//menampilkan hasil penghitungan
System.out.println("Data");
for(int i=0;i<10;i++){
System.out.println("| "+X[i]+" | "+Y[i]+" |");
}
System.out.println("cari koefisien persamaan regresi Y=a+bX");
System.out.println(" ");
System.out.println("Jawab : ");
System.out.println("Rata-rata X= "+xbar);
System.out.println("Rata-rata Y= "+ybar);
System.out.println("nilai a= "+a);
System.out.println("nilai b= "+b);
System.out.println("Y = "+a+" + "+b+"X");
}
}
public static void main(String[] args){
//deklarasi dan inisiasi variabel yang dibutuhkan
int[] X={1,2,3,4,5,6,7,8,9,10};
double[] Y={23.4,26.9,32.5,34.9,40.3,39.9,42.9,47.0,50.1,53.2};
double[] XY=new double[10];
double sigmax=0;double sigmay=0;double sigmaXY=0;
int sigmaX2=0;double b,a;
double xbar; double ybar;
//mencari rata-rata X dan Y;
for(int i=0;i<10;i++){
int temp=X[i];double temp2=Y[i];
sigmax+=temp;
sigmay+=temp2;
}
xbar=sigmax/X.length;ybar=sigmay/Y.length;
//menghitung sigmaXY
for(int i=0;i<10;i++){
XY[i]=X[i]*Y[i];
double temp=XY[i];
sigmaXY+=temp;
}
//menghitung sigmaXkuadrat
for(int i=0;i<10;i++){
int temp=X[i]*X[i];
sigmaX2+=temp;
}
//menghitung b
b=(sigmaXY-((sigmax*sigmay)/10))/(sigmaX2-(sigmaX2/10));
//menghitung a
a=ybar+(b*xbar);
//menampilkan hasil penghitungan
System.out.println("Data");
for(int i=0;i<10;i++){
System.out.println("| "+X[i]+" | "+Y[i]+" |");
}
System.out.println("cari koefisien persamaan regresi Y=a+bX");
System.out.println(" ");
System.out.println("Jawab : ");
System.out.println("Rata-rata X= "+xbar);
System.out.println("Rata-rata Y= "+ybar);
System.out.println("nilai a= "+a);
System.out.println("nilai b= "+b);
System.out.println("Y = "+a+" + "+b+"X");
}
}
dan outputnya adalah seperti ini..
Dalam source code diatas telah diberi comment comment yang menunjukkan langkah langkah penghitungan persamaan regresi linier diatas, sebenarnya program diatas dapat disederhanakan code nya menjadi beberapa for saja, tapi untuk lebih jelas maka langkah langkah nya dipisahkan menjadi beberapa for.
Sumber soal : Algoritma dan pemrograman menggunakan Java, Abdul Kadir
Untuk lebih jelasnya mengenai regresi. . . regresi dan korelasi
Mau lebih jelas lagi? saya juga menerima jasa kursus java dasar. .leave comment atau email deavenditama@gmail.com untuk jelasnya. .
Baca Juga Tutorial Java di Android
5 comments
programnya bermanfaat gan,
ReplyDeleteane jadiin referensi dari artikel regresi ane ya :-D
pake library statistik lebih mudah lagi gan.
ReplyDeletetapi kalo buat belajar ya hardcode aja dah...
baru tau ada library statistik. .
ReplyDelete0_0
ini cuma jawab soal di buku alpro aja bab array, jadi belum kepikiran pake library statistik
Gan mintak tolong gan soal ARRAY
ReplyDeleteDiberikan suatu algoritma diketahui nilai dari array:
X(0)=10;x(1)=12; x(2)=12;x(3)=10;dan
Y(0)=2;y(1)=3;y(2)=4; y(3)=5;
Int i;
Int x[4],y[4];
Float hasil;
Hasil=
For(i=0;i<=3;i++)
Hasil=hasil+x[i]/y[i];
Cout<<"hasil="<<hasil;
Maka nilai dari hasil algoritma di atas adalah..
Minta tolong gan cara ngerjainya gima
Buat elemen array sebanyak 10 buah, masukkan nilai 8 pada array
ReplyDeleteyang berbeda, kemudian buat program untuk menampilkan posisi
array yang bernilai 8 tersebut. bARU BELAJAR CARANYA GMNA