/*
  Salva alcuni valori di una funzione in un vettore,
  per poterli usare di nuovo quando servono.
*/

class SalvaFunzione {
  public static void main(String[] args) {
    double[] fvett=new double[101];
    int x;
    double somma;

    /* inizializza il vettore */
    for(x=0; x<=100; x=x+1) {
      fvett[x]=x*x/2+Math.sqrt(Math.abs(x))-12;
    }

    /* valore medio della funzione da 10 a 110 */
    somma=0;
    for(x=10; x<=110; x=x+1) {
      if( (x>=0) && (x<=100) ) {
        somma=somma+fvett[x];
      }
      else {
        somma=somma+x*x/2+Math.sqrt(Math.abs(x))-12;
      }
    }
    System.out.println("La media fra 10 e 110 vale "+somma/101);

    /* stampa i valori della funzione da -200 a +200 */
    for(x=-200; x<=200; x=x+1) {
      if( (x>=0) && (x<=100) ) {
        System.out.println(fvett[x]);
      }
      else {
        System.out.println(x*x/2+Math.sqrt(Math.abs(x))-12);
      }
    }
  }
}
