Exercícios

Para todos os exercícios a seguir não se esqueça de:

  1. Faça o que se pede sem usar as funções max() ou which.max() do R.

    1. No computador implemente o algoritmo visto em sala de aula que recebe como entrada um vetor v e retorna o seu valor máximo.
    2. Em seu caderno escreva um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna a posição onde se encontra o máximo. Nesse item não é para usar o computador.
    3. Agora, novamente no computador, implemente uma nova função que executa o pseudo-código elaborado no item b. Não use o mesmo nome da função implementada no item a.
  2. Faça o que se pede sem usar as funções min() e which.min() do R.

    1. Primeiro escreva em seu caderno um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna o valor mínimo guardado em v. Nesse item não é para usar o computador.
    2. Agora no computador implemente uma função que executa o pseudo-código elaborado do item a.
    3. De volta ao caderno escreva um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna a posição onde se encontra o mínimo. Nesse item não é para usar o computador.
    4. Novamente no computador implemente no uma nova função que executa o pseudo-código elaborado no item c. Não use o mesmo nome da função implementada no item a.
  3. A amplitude de um conjunto \(A\) é definida por \(\max(A) - \min(A)\).

    1. Primeiro escreva no caderno um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna a sua amplitude. Considere que você já fez as funções que retornam o máximo e o mínimo de v(itens anteriores). Não é para usar o computador ainda.
    2. Agora no computador implemente o passo-a-passo feito do item a. Dentro da sua função chame as funções implementadas nos Exercício 1 e 2.
  4. Faça o que se pede sem usar as funções mean() e sum() do R. No computador implemente o algoritmo visto em sala de aula que recebe como entrada um vetor v e retorna a média amostral dos valores em v. Obs: Se quiser use a função mean() apenas para comparação.

  5. Faça o que se pede sem usar a função median() do R. Para ordenar o vetor de entrada use a função sort() do R. No computador implemente o algoritmo visto em sala de aula que recebe como entrada um vetor v e retorna a mediana de v. Obs: Se quiser use a função median() apenas para comparação.

  6. Faça o que se pede sem usar a função quantile() do R. Para ordenar o vetor de entrada use a função sort() do R.

    1. No computador implemente o pseudo-código visto em sala de aula, baseado no Método 1, que recebe como entrada um vetor v e retorna um array com os valores dos três quartis.
    2. No caderno escreva um pseudo-código que calcula os três quartis a partir do Método 2.
    3. No computador implemente o pseudo-código escrito no item acima.
  7. A distânica interquartílica de um conjunto \(A\) é definida por \(q_3 - q_1\), onde \(q_1\) e \(q_3\) são, respectivamentes, o primeiro e terceiro quartil.

    1. Primeiro escreva no caderno um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna a sua Distância Interquartílica. Considere que você já sabe calcular os quartis de v. Não é para usar o computador ainda.
    2. Agora no computador implemente o passo-a-passo feito do item a. Dentro da sua função chame a função implementadas no Exercício 6.
  8. Faça o que se pede sem usar as funções sd(), mean() e sum() do R. No computador implemente o algoritmo visto em sala de aula que recebe como entrada um vetor \(v\) e retorna a sua variância amostral. Para simplificar use a função implementada no Exercício 4. Obs: Se quiser use a função sd() apenas para comparação.

  9. O Desvio Médio de um conjunto de dados \(A = \{a_1, \ldots, a_n\}\) é definido pela expressão abaixo, onde \(m\) é a média amostral de \(A\). \[ \hbox{dm } = \frac{\sum_{i=1}^n |a_i - m|}{n}. \]

    1. Primeiro escreva no caderno um pseudo-código para o algoritmo que recebe como entrada um vetor v e retorna o seu Desvio Médio. Não é para usar o computador ainda. Considere que você já sabe calcular a média amostral de v.
    2. Agora no computador implemente o pseudo-código feito do item a.
  10. Faça o que se pede sem usar as funções mean(), sum() ou qualquer outra pronta do R.

    1. Implemente o algoritmo visto em sala de aula que recebe como entrada dois vetores v e w e retorna a covariância amostral entre eles. Para simplificar use a função implementada no Exercício 4.
    2. Desafio: vamos generalizar o item a. Implemente uma função que recebe como entrada uma matriz de dados. Considere que cada coluna dessa matriz representa um vetor de dados. A função implementada deve retornar a matriz de covariância amostral entre os vetores coluna dessa matriz. Lembre-se que a matriz de covariância é definida pela matriz cuja posição \((i,j)\) guarda a covariância da variável \(i\) com a \(j\).Nesse item pode (e deve) chamar a função implementada no item a.

Para o próximo exercício considere A1 = c(6,9,7,3,9,2,2,6), A2 = c(4,4,6,1,1,2,7,4) e A3 = c(1,9,5,7,2,4,2,1,9,4).

  1. Usando as funções que você implementou nos exercícios anteriores faça as contas que se pede. Tente fazer cada item usando apenas uma linha de comando no R.
    1. Qual a amplitude do conjunto A1?
    2. Qual a média amostral do conjunto A3?
    3. Qual a variância amostral do conjunto A2?
    4. Se A4 for definido pela união dos conjuntos A1 e A2, qual a média de A4?
    5. Qual a mediana de A4?
    6. Qual o desvio médio de A4?
    7. Quais os quartis de A3?
    8. Qual a distância interquartílica de A3?
    9. Qual a covariância entre A1 e A2? É possível fazer essa conta?
    10. Qual a covariância entre A1 e A3? É possível fazer essa conta?