class RegLin{int n; // nombre de points de supportdouble[] x; // abscisses des points de supportdouble[] y; // ordonnees des points de supportdouble a, b; // resultats de la regression : ax+bRegLin(double[] xdata, double[] ydata) {x = xdata; y = ydata; n = x.length;
calculCoef();}private void calculCoef() {double sx=0, sx2=0, sy=0, sy2=0, sxy=0;for (int i=0; i<n; i++) {sx += x[i]; 
sx2 += x[i]*x[i];sy += y[i];sxy += x[i]*y[i];}a = (sxy-(sx*sy/n))/(sx2-sx*sx/n);b = (sy - a*sx) /n;}public double geta() {return a;}public double getb() {return b;}
public double getxi(int i) {return x[i];}public double getyi(int i) {return y[i];}
public void print() {System.out.println(" a= "+a+" b= "+b);}//public double calcul(double z) {return a*z+b;}//public String libelle() {return "regression lineaire";}}