Média e Desvio Padrão

Wednesday, Nov 2, 2016

Sejam as fórmulas matemáticas:

Fórmula para calcular a média aritmética simples:

n ¯ = 1 n i = 1 n x i

Fórmula para calculcar o desvio padrão:

s 2 = 1 n - 1 i = 1 n x i 2 - 1 n i = 1 n x i 2

o algoritmo:

public class MediaAritmeticaEDesvioPadrao{
  public static void main(String[] args) {
    int tamanhoVetor = 10;
    double soma = 0;
    double soma2  = 0d;
    double media = 0d;
    double desvioPadrao = 0d;
    for (int i = 1; i <= tamanhoVetor ; i++) {
      soma = soma + i;
      soma2 = soma2 + elevarAoQuadrado(i);
      System.out.println("I = "+i);
    }    
    media = soma/tamanhoVetor;
    desvioPadrao = tirarRaizQuadrada(
      (soma2-elevarAoQuadrado(soma)/tamanhoVetor)
      /tamanhoVetor-1
    );
    System.out.println("Média = "+media);
    System.out.println("Desvio Padrão = "+desvioPadrao);
  }
  private static double elevarAoQuadrado(double valor){
    return Math.pow(valor,2);
  }
  private static double tirarRaizQuadrada(double valor){
       return Math.sqrt(valor);
  }
}
<?php
class MediaAritmeticaEDesvioPadrao {
  function main(){  
    $tamanhoVetor = 10;
    $soma = 0;
    $soma2 = 0;
    $media = 0;
    $desvioPadrao = 0;
    for ($i=0; $i <= $tamanhoVetor ; $i++) {
      $soma = $soma + $i;
      $soma2 = $soma2 + $this->elevarAoQuadrado($i);
      echo "i = $i<br/>\n";
    }
    $media = $soma/$tamanhoVetor;
    $desvioPadrao = $this->tirarRaizQuadrada(
     ($soma2-$this->elevarAoQuadrado($soma)/$tamanhoVetor)
      /$tamanhoVetor-1
    );
    echo "Média  = $media<br/>\n";
    echo "Desvio Padrão = $desvioPadrao<br/>\n";
    }
  function elevarAoQuadrado($valor){
    return pow($valor, 2);
  }
  function tirarRaizQuadrada($valor){
    return sqrt($valor);
  }
}
$a =new MediaAritmeticaEDesvioPadrao();
$a->main();