Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Program ini gunanya untuk:
- 1. itung koefisien korelasi.
- 2. cari persamaan regresi.
- */
- #include <iostream>
- using namespace std;
- #include <stdio.h>
- #include <math.h>
- #include <stdlib.h>
- float set1[100], set2[100];
- void corr_coeff(float[], float[], int);
- void regression(float[], float[], int);
- int main()
- {
- int n, i, x;
- char ans;
- cout << "\n Mau berapa data yang ingin diinput: ";
- cin >> n;
- cout << "\n\n Masukkan nilai untuk set data yang pertama: \n";
- for (i = 0; i <= n - 1; i++)
- cin >> set1[i];
- cout << "\n\n Masukkan set data yang kedua: \n";
- for (i = 0; i <= n - 1; i++)
- cin >> set2[i];
- do
- {
- cout << " 1. hitung koefisien korelasi \n";
- cout << " 2. cari persamaan regresi \n";
- cout << " 3. keluar dari program \n";
- cout << "\n\n\n Ayo, mo pilih yang mana:? ";
- cin >> x;
- switch (x)
- {
- case 1:
- cout << "\n Koefisien korelasinya adalah: ";
- corr_coeff(set1, set2, n);
- break;
- case 2:
- cout << "Persamaan regresinya adalah: \n";
- regression(set1, set2, n);
- break;
- case 3:
- cout << "\n Makasih";
- cout << "\n\n\n\n\n tekan tombol keyboard apa saja untuk keluar.";
- cin.get();
- exit(0);
- default:
- cout << "\n\n Pilihannya salah. Coba lagi deh";
- cin.get();
- }
- cout << "\n\n Lanjut gak? (y/n)";
- cin >> ans;
- } while (ans == 'y' || ans == 'Y');
- cout << "\n Makasih";
- cout << "\n\n\n\n\n tekan tombol keyboard apa saja untuk keluar.";
- cin.get();
- }
- void corr_coeff(float x[], float y[], int p)
- {
- int i;
- float sx = 0.0, sy = 0.0, sxy = 0.0, sxs = 0.0, sys = 0.0;
- float mx = 0.0, stddivx = 0.0, my = 0.0, stddivy = 0.0;
- float num, den, rxy;
- for (i = 0; i <= p - 1; i++)
- {
- sx = sx + x[i];
- sy = sy + y[i];
- sxy = sxy + (x[i] * y[i]);
- sxs = sxs + (x[i] * x[i]);
- sys = sys + (y[i] * y[i]);
- }
- mx = sx / p;
- my = sy / p;
- stddivx = sqrt(((sxs / p) - (mx * mx)));
- stddivy = sqrt(((sys / p) - (my * my)));
- num = (sxy / p) - (mx * my);
- den = stddivx * stddivy;
- rxy = num / den;
- cout << rxy;
- }
- void regression(float x[], float y[], int p)
- {
- int i;
- float sx = 0.0, sy = 0.0, sxy = 0.0, sxs = 0.0, sys = 0.0;
- float mx = 0.0, stddivx = 0.0, my = 0.0, stddivy = 0.0;
- float num, den, rxy, r;
- for (i = 0; i <= p - 1; i++)
- {
- sx = sx + x[i];
- sy = sy + y[i];
- sxy = sxy + (x[i] * y[i]);
- sxs = sxs + (x[i] * x[i]);
- sys = sys + (y[i] * y[i]);
- }
- mx = sx / p;
- my = sy / p;
- stddivx = sqrt(((sxs / p) - (mx * mx)));
- stddivy = sqrt(((sys / p) - (my * my)));
- num = (sxy / p) - (mx * my);
- den = stddivx * stddivy;
- rxy = num / den;
- r = rxy * (stddivy / stddivx);
- cout << "\n\n\n Y =" << my << "+" << r << "*"
- << "(X - " << mx << ")";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement