Quick actions

cmd+k|ctrl+k

Navigation

Languages

Maior, Média, Variancia e Desvio

Snippet info

Language

C

Visibility

public

Author

orlando0206

Created

2016-10-18T12:40:12Z

Updated

2016-10-24T21:59:09Z

#include <stdio.h>                  // inclui biblioteca padrão de entradas e saidas
#include <stdlib.h>                 // inclui biblioteca padrão de C
#include <math.h>                   // inclui biblioteca de matematica para utilizar raiz quadrada e exponenciação

int MaiorValor (int *Num, int n)    //função para encontrar maior valor
    {   int i, aux=0;
        for (i=0; i<n;i++){         //comando FOR faz a varredura em toda a memoria
            if (Num[i]>Num[aux])    //testa os valores dois a dois para saber o maior
            {
                aux=i;              // caso encontre um maior no teste IF altera a posição salva como maior
            }
        }
        return aux;                 //retorna a posição do maior numero encontrado nos testes
    }

float Media (float *Num, int n)     //função para calcular a média
    {   int i;
        float aux=0;
        for (i=0;i<n;i++)           //comando FOR faz a varredura em toda a memoria
        {
            aux=aux+Num[i];         //faz a somatoria dos valos e salva na memoria auxiliar
        }
        aux=aux/n;                  //divide a somatoria pelo numero de elementos obtendo a média aritmetica
        return aux;                 //retorna com o valor da média
    }
        
float Variancia (float *Num, int n, float NumMedia) //função para calcular a variancia ((valor-média)^2)/n
    {   int i;
        float aux;
        for (i=0;i<n;i++)                           //comando FOR faz a varredura em toda a memoria
        {
            aux=aux+(pow(Num[i]-NumMedia,2));       //faz a somatoria de (valor-média)^2 e salva na memoria auxiliar
        }
        aux=aux/n;                                  //divide a somatoria pelo numero de elementos e encontra a variancia
        return aux;                                 //retorna com o valor da variancia
    }
    
float DesvioPadrao (float NumVariancia)             //função para calcular o desvio padrão
    {
        float aux;
        aux = sqrt (NumVariancia);                  //calcula a raiz quadrada e salva na memoria auxiliar
        return aux;                                 //retorna com o valor do desvio padrão
    }

int main(void) {
    float Num[100], NumMedia, NumVariancia, NumDesvio;
    int NumMaior, k, n;
    printf("Digite o numero de elementos:\n");
    scanf ("%d",&n);                                    //lê o numeros de elementos que serão computados
    printf("Digite os %d numeros aleatorios:\n", n);
    for (k=0;k<n;k++)                                   //comando FOR faz a varredura até escrever o numero de elementos especificados
    {
        scanf ("%f",&Num[k]);                           //lê os valores digitados e salva no vetor
    }
    NumMedia = Media (Num, n);                          //chama função Média e salva o resultado do retorno
    printf("\nMédia: %.2f",NumMedia);                   //imprime na tela o resultado da função
    NumMaior = MaiorValor (Num, n);                     //chama função MaiorValor e salva o resultado do retorno
    printf("\nMaior: %.2f",Num[NumMaior]);              //imprime na tela o numero gravado na posição indicada no resultado da função
    NumVariancia = Variancia (Num, n, NumMedia);        //chama função Variancia e salva o resultado do retorno
    printf("\nVariancia: %.2f",NumVariancia);           //imprime na tela o resultado da função
    NumDesvio = DesvioPadrao (NumVariancia);            //chama função DesvioPadrão e salva o resultado do retorno
    printf("\nDesvio Padrão: %.2f",NumDesvio);          //imprime na tela o resultado da função
    return 0;
}
INFO