Faça um programa que calcule o desvio padrão de um vetor
contendo
números, onde
é a media do vetor.
[
Desvio Padrão=\sqrt{\frac{1}{n-1} \sum_{i=1}{n}(v[i]-m){2}}
Desvio Padrão=\sqrt{\frac{1}{n-1} \sum_{i=1}{n}(v[i]-m){2}}
Passo 1
A tarefa é escrever um programa em C que leia um vetor de tamanho n=10, calcule a média m dos seus elementos e depois use a fórmula do desvio padrão
para exibir o resultado.
Passo 2
Para calcular a média m, percorremos o vetor somando todos os elementos em uma variável soma e depois fazemos
onde n=10.
Passo 3
Em seguida, inicializamos uma variável sum_dev2=0 e percorremos de novo o vetor, acumulando
em sum_dev2 para obter
Passo 4
Por fim, aplicamos a fórmula do desvio padrão usando a função sqrt da biblioteca math.h:
com n-1 = 9.
Passo 5
Pronto! Agora é só implementar em C: ler 10 valores, calcular soma, média, soma dos quadrados das diferenças e imprimir o desvio padrão usando printf.
Resposta
#include <stdio.h>
#include <math.h>
#include <math.h>
int main() {
double v[10];
double soma = 0.0;
double sum_dev2 = 0.0;
double m, sigma;
int i;
double v[10];
double soma = 0.0;
double sum_dev2 = 0.0;
double m, sigma;
int i;
// Leitura dos 10 valores e cálculo da soma
for (i = 0; i < 10; i++) {
printf("Digite o valor %d: ", i + 1);
scanf("%lf", &v[i]);
soma += v[i];
}
// Cálculo da média
m = soma / 10.0;
// Cálculo da soma dos quadrados das diferenças
for (i = 0; i < 10; i++) {
sum_dev2 += (v[i] - m) * (v[i] - m);
}
// Cálculo do desvio padrão
sigma = sqrt(sum_dev2 / (10.0 - 1.0));
// Exibição do resultado
printf("\nDesvio Padrão = %.4f\n", sigma);
return 0;
}