Pengaturan

Gambar

Lainnya

Tentang KASKUS

Pusat Bantuan

Hubungi Kami

KASKUS Plus

© 2024 KASKUS, PT Darta Media Indonesia. All rights reserved

bbsnafwAvatar border
TS
bbsnafw
[ASK] Perhitungan Aritmatik bahasa C menghasilkan hasil 0/salah
Permisi gan ane mau tanya nih, ane lagi buat program buat hitung regresi pakai bahasa C, nah semua berjalan benar sampai pada hasil dari sigma X itu hasilnya 0, ane udah cek logikanya udah betul kira-kira adakah yang terlewat emoticon-Matabelo

Source Code ane :
<code>
#include <stdio.h>
#include <stdlib.h>

int i,n,j,k,l;
int dataX[],dataY[];
double hasilXY[],hasilX2[],hasilY2[],hasilYa[],hasilEr[],sX,sY,sXY,sX2,sY2,s2X,a,b;
int main()
{
printf("Program Untuk Forecast dengan Teknik Regresi\n\n");
printf("Masukan Banyak data forecast :");
scanf("%d",&n);
for (i=0;i<n;i++) {
printf("\nMasukan Nilai X%d : ",i+1);
scanf("%d",&dataX[i]);
printf("\nMasukan Nilai Y%d : ",i+1);
scanf("%d",&dataY[i]);
}
printf("\n================================================\n");
proses();
getch();
}
void proses() {
printf("Banyak data : %d\n",n);
i =0;
for (i=0;i<n;i++) {
printf("Nilai X%d : %d\n",i+1,dataX[i]);
printf("Nilai Y%d : %d\n",i+1,dataY[i]);
} j=0;
for (j=0;j<n;j++) {
hasilXY[j] = dataX[j]*dataY[j];
hasilX2[j] = dataX[j]*dataX[j];
hasilY2[j] = dataY[j]*dataY[j];
printf("\nNilai XY%d : %lf",j+1,hasilXY[j]);
printf("\nNilai X2(%d) : %lf",j+1,hasilX2[j]);
printf("\nNilai Y2(%d) : %lf",j+1,hasilY2[j]);
}
printf("\n===============================================\n");
Mulai dari sini ada yang ganjil gan
k=0;sX=0.0;sY=0.0;sXY=0.0;sX2=0.0;
for (k=0;k<n;k++) {
sX = sX+dataX[k];
sY = sY+dataY[k];
sXY = sXY+hasilXY[k];
sX2 = sX2+hasilX2[k];
}
printf("\nSigma X : %lf",sX);
printf("\nSigma Y : %lf",sY);
printf("\nSigma XY : %lf",sXY);
printf("\nSigma X2 : %lf", sX2);
printf("\n===============================================\n");
b = (n*sXY-sX*sY)/(n*sX2-(sX*sX));
a = (sY-b*sX)/n;
printf("\n================================================\n");
printf("\n Nilai a : %lf",a);
printf("\n Nilai b : %lf",b);
printf("\n===============================================\n");
l=0;
for (l=0;l<n;l++) {
hasilYa[l] = a + b*dataX[l];
hasilEr[l] = abs(hasilYa[l]-dataY[l]);
printf("Nilai Y%d aksen : %lf",l+1,hasilYa[l]);
printf("\nNilai Error%d : %lf",l+1,hasilEr[l]);
}
printf("\n==================== END =======================\n");
}

</code>
0
580
2
GuestAvatar border
Guest
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Mari bergabung, dapatkan informasi dan teman baru!
Programmer Forum
Programmer ForumKASKUS Official
20.2KThread4.3KAnggota
Terlama
GuestAvatar border
Guest
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Ikuti KASKUS di
© 2023 KASKUS, PT Darta Media Indonesia. All rights reserved.