Introdução
Neste laboratório, aprenderemos como escrever um programa C++ para calcular o desvio padrão de um conjunto de números usando funções. O programa demonstrará como calcular a variância de um conjunto de números, que é a média das diferenças quadráticas em relação à média, e então sua raiz quadrada fornecerá o desvio padrão.
Definir a função para calcular o desvio padrão
Começaremos definindo uma função que recebe um array de valores float e retorna o desvio padrão desses valores.
float SD(float values[]) // função para calcular o desvio padrão
{
float sum = 0.0, mean, sd = 0.0;
int i;
for(i = 0; i < 10; ++i)
{
sum = sum + values[i]; // calculando a soma
}
mean = sum/10; // encontrando a média.
for(i = 0; i < 10; ++i)
sd = sd + pow(values[i] - mean, 2); // calculando o desvio padrão
return sqrt(sd / 10);
}
Nesta função, primeiro calculamos a soma de todos os valores. Em seguida, dividimos a soma pelo número total de valores para obter a média (mean). Depois, calculamos a variância (variance) somando as diferenças quadráticas de cada valor em relação à média. Após isso, calculamos o desvio padrão (standard deviation) tirando a raiz quadrada da variância.
Escrever a função principal para ler a entrada e exibir os resultados
Em seguida, escrevemos a função main, que lê a entrada do usuário, armazena os valores em um array, chama a função SD para obter o desvio padrão e, em seguida, exibe o resultado.
int main()
{
int i;
float arr[10];
cout << "Enter 10 elements: ";
for(i = 0; i < 10; ++i)
cin >> arr[i];
cout << endl << "Standard Deviation = " << SD(arr); // chamando a função
return 0;
}
Nesta função, primeiro declaramos um array arr para armazenar a entrada do usuário. Em seguida, solicitamos ao usuário que insira 10 valores, um de cada vez. Depois, chamamos a função SD com o array arr para obter o desvio padrão e o imprimimos no console.
Executar o programa
Agora, podemos compilar e executar o programa usando o seguinte comando no terminal:
g++ ~/project/main.cpp -o main && ./main
Este comando compilará o arquivo main.cpp no diretório ~/project e, em seguida, executará o executável resultante.
Verificar a saída
Vamos inserir 4 5 7 8 9 6 3 2 1 7 como entrada e verificar se estamos obtendo a saída correta.
Enter 10 elements: 4 5 7 8 9 6 3 2 1 7
Standard Deviation = 2.5219
Podemos ver que o desvio padrão é 2.5219, que é o mesmo valor que obtivemos quando resolvemos o problema manualmente.
Código completo
Aqui está o código completo do arquivo main.cpp para referência:
#include <iostream>
#include <cmath>
using namespace std;
float SD(float values[]) // function for calculating standadr deviation
{
float sum = 0.0, mean, sd = 0.0;
int i;
for(i = 0; i < 10; ++i)
{
sum = sum + values[i]; // calculating sum
}
mean = sum/10; // finding mean.
for(i = 0; i < 10; ++i)
sd = sd + pow(values[i] - mean, 2); // calculating standard deviation
return sqrt(sd / 10);
}
int main()
{
int i;
float arr[10];
cout << "Enter 10 elements: ";
for(i = 0; i < 10; ++i)
cin >> arr[i];
cout << endl << "Standard Deviation = " << SD(arr); // calling function
return 0;
}
Resumo
Neste laboratório, aprendemos como calcular o desvio padrão de um conjunto de números usando funções em um programa C++. Usamos uma função para calcular a variância (variance), que é a média das diferenças quadradas em relação à média, e então sua raiz quadrada para obter o desvio padrão. Também aprendemos como ler a entrada do usuário, armazená-la em um array (vetor) e, em seguida, chamar a função para obter o desvio padrão. Finalmente, compilamos e executamos o programa para verificar se estávamos obtendo a saída correta.



