Complete um procedimento que calcula e imprime a variância do conjunto de números armazenado num vetor. O procedimento recebe dois parâmetros de entrada, um vetor de números reais e um inteiro representando o tamanho do vetor. (5,0 pts)
Fórmula da variância:
\sigma^{2}=\frac{\sum\left(X_{i}-\bar{X}\right)^{2}}{n}
Procedimento calcVar( \_\_\_\_ , \_\_\_\_ ) Inicio
Inteiro i, soma =0, med, temp =0, var
Para ( \mathrm{i}=0 ; \mathrm{i}< \_\_\_\_ ; i=i+1 ) Faça
soma = soma + \_\_\_\_
Fim Para
med = soma / N
Para ( \mathrm{i}=0; \mathrm{i}< \_\_\_\_ ; i=i+1 ) Faça
temp = temp + ( \_\_\_\_ - med )^2
Fim Para
var = temp / N
Imprimir "A variância da distribuição é: " + var
Fim

Passo 1

O que o enunciado pede:
  • Completar um procedimento que calcula e imprime a variância de um conjunto de números guardados em um vetor.
  • O procedimento recebe dois parâmetros: um vetor de números reais e um inteiro que é o tamanho do vetor.
Informações dadas (o que já aparece no enunciado):
  • Fórmula da variância: \sigma^{2}=\frac{\sum\left(X_{i}-\bar{X}\right)^{2}}{n}
  • Esqueleto do procedimento com espaços em branco a serem preenchidos:
    • Assinatura: Procedimento calcVar( \_\_\_\_ , \_\_\_\_ ) Inicio
    • Primeiro laço: Para ( \mathrm{i}=0 ; \mathrm{i}< \_\_\_\_ ; i=i+1 ) Faça soma = soma + \_\_\_\_ Fim Para
    • Cálculo da média: med = soma / N
    • Segundo laço: Para ( \mathrm{i}=0; \mathrm{i}< \_\_\_\_ ; i=i+1 ) Faça temp = temp + ( \_\_\_\_ - med )^2 Fim Para
    • Cálculo da variância: var = temp / N
    • Impressão: Imprimir "A variância da distribuição é: " + var
O que precisamos definir (responder sem ambiguidade):
  • Quais nomes/expressões preencher nas lacunas: assinatura (vetor e tamanho) e nos dois laços (condição de parada) e nas somas (elemento atual do vetor).

Passo 2

Entendendo a estratégia/algoritmo (passo a passo lógico, antes de codificar):
  • A variância exige primeiro a média \bar{X}. A média populacional é \bar{X}=\frac{1}{N}\sum_{i=0}^{N-1}X_i.
  • Para obter \bar{X} no código, soma-se todos os elementos do vetor e divide-se por N.
  • Depois, calcula-se a soma dos quadrados das diferenças entre cada elemento e a média: \sum_{i=0}^{N-1}(X_i-\bar{X})^{2}.
  • Por fim, divide-se essa soma por N para obter \sigma^{2}.
  • Observação prática importantíssima: para evitar divisão inteira (quando N e soma forem inteiros), as variáveis que guardam soma, média, temp e var devem ser do tipo real (ou float) — caso contrário a divisão pode truncar. Assim, declare essas variáveis como reais se o pseudocódigo permitir. No esqueleto original só aparece Inteiro i, soma = 0, med, temp = 0, var; o ideal é declarar soma, med, temp, var como reais.

Passo 3

Preenchendo o primeiro laço (soma dos elementos) e explicando detalhadamente:
  • Índices: o enunciado usa índice começando em zero (i = 0). Isso indica que o vetor tem posições de 0 a N-1.
  • Condição de parada do laço: deve ser \mathrm{i}<N para percorrer exatamente N elementos.
  • Em cada iteração somamos o elemento atual X[\mathrm{i}] à variável acumuladora soma.
  • Em código (linhas do laço): Para ( \mathrm{i}=0 ; \mathrm{i}< \,N\, ; \mathrm{i}=\mathrm{i}+1 ) Faça
    soma = soma + X[\mathrm{i}]
  • Explicação numérica simples: se o vetor tem N=4 e valores 2,4,6,8 armazenados como X[0]=2,X[1]=4,X[2]=6,X[3]=8, o laço soma produzirá soma = 2+4+6+8=20.

Passo 4

Calculando a média e comentando detalhes numéricos:
  • Depois do primeiro laço, calculamos a média usando a fórmula média = soma dividido por N: \text{med}=\frac{\text{soma}}{N}.
  • Lembrete: garantir que a operação seja de ponto flutuante; caso contrário, por exemplo \frac{3}{2} pode virar 1 se feito com inteiros. Por isso med e soma devem ser reais.
  • Exemplo: com soma =20 e N=4, med =20/4=5, que coincide com \bar{X}.

Passo 5

Preenchendo o segundo laço (soma dos quadrados das diferenças) e explicando:
  • Objetivo: calcular \sum_{i=0}^{N-1}(X_i-\bar{X})^{2}.
  • Estrutura do laço: novamente percorrer todos os índices com \mathrm{i}=0 até \mathrm{i}<N.
  • Em cada iteração acumulamos em temp o valor (X[\mathrm{i}] - \text{med})^{2}:
    temp = temp + (X[\mathrm{i}] - \text{med})^{2}.
  • Exemplo numérico: com X=\{2,4,6,8\} e \text{med}=5, as diferenças são -3,-1,1,3, quadrados 9,1,1,9, soma 20. Então temp fica 20.

Passo 6

Cálculo final da variância e impressão:
  • Depois do segundo laço, a variância populacional é dada por \text{var}=\frac{\text{temp}}{N}.
  • Seguindo o exemplo: temp =20, N=4 => var =20/4=5.
  • Por fim, imprimir a mensagem com o valor: "A variância da distribuição é: " + var.

Passo 7

Montando o procedimento completo com todas as lacunas preenchidas (mantendo a estrutura do enunciado). Atenção: todas as variáveis e números aparecem em TeX conforme solicitado.
Procedimento calcVar( X[\,], N) Inicio
Inteiro \mathrm{i}, soma =0, med, temp =0, var
Para ( \mathrm{i}=0 ; \mathrm{i}< N ; \mathrm{i}=\mathrm{i}+1 ) Faça
soma = soma + X[\mathrm{i}]
Fim Para
med = soma / N
Para ( \mathrm{i}=0; \mathrm{i}< N ; \mathrm{i}=\mathrm{i}+1 ) Faça
temp = temp + \bigl(X[\mathrm{i}] - \text{med}\bigr)^{2}
Fim Para
var = temp / N
Imprimir "A variância da distribuição é: " + var
Fim

Resposta

Procedimento calcVar( X[\,], N) Inicio
Inteiro \mathrm{i}, soma =0, med, temp =0, var
Para ( \mathrm{i}=0 ; \mathrm{i}< N ; \mathrm{i}=\mathrm{i}+1 ) Faça
soma = soma + X[\mathrm{i}]
Fim Para
med = soma / N
Para ( \mathrm{i}=0; \mathrm{i}< N ; \mathrm{i}=\mathrm{i}+1 ) Faça
temp = temp + \bigl(X[\mathrm{i}] - \text{med}\bigr)^{2}
Fim Para
var = temp / N
Imprimir "A variância da distribuição é: " + var
Fim

Exercícios relacionados