Avaliação Diagnóstica
Esta página contém as soluções das questões da Avaliação Diagnóstica com comentários, bem como algumas indicações de leitura para aqueles que erraram alguma das questões ou que queiram rever o conteúdo.
Questão 1
Será impresso 10, já que inteiros são imutáveis em Python. De fato, a variável x dentro da função adiciona não é a mesma variável global x que é impressa.
Leitura recomendada:
- Aula 09 de MC102 - Listas (parte de Objetos Mutáveis e Imutáveis)
- Aula 12 de MC102 - Funções I (parte de Objetos Mutáveis e Imutáveis)
- Aula 13 de MC102 - Funções II (parte de Escopo de Variáveis)
Questão 2
Será impresso [1, 2, 3, 4], já que listas são objetos mutáveis em Python e o método append de fato altera a lista. Apesar de existirem duas variáveis com o mesmo nome lista (uma local e outra global), note que elas referenciam o mesmo objeto.
Leitura recomendada:
- Aula 09 de MC102 - Listas (parte de Objetos Mutáveis e Imutáveis)
- Aula 12 de MC102 - Funções I (parte de Objetos Mutáveis e Imutáveis)
- Aula 13 de MC102 - Funções II (parte de Escopo de Variáveis)
Questão 3
Novamente será impresso [1, 2, 3, 4] já que outra_lista e lista referenciam o mesmo objeto.
Leitura recomendada:
- Aula 09 de MC102 - Listas (parte de Objetos Mutáveis e Imutáveis)
- Aula 12 de MC102 - Funções I (parte de Objetos Mutáveis e Imutáveis)
- Aula 13 de MC102 - Funções II (parte de Escopo de Variáveis)
Questão 4
Uma possível solução seria:
E outra solução mais Pythonesca seria:
Alguns alunos confundiram o operador resto da divisão % com o operador de divisão inteira //.
Leitura recomendada:
- Aula 02 de MC102 - Objetos, atribuição, entrada/saída e expressões aritméticas
- Aula 09 de MC102 - Listas
Questão 5
Uma possível solução seria:
Note que 0! é igual a 1 e não igual a 0 como o algumas soluções computavam.
Leitura recomendada:
Questão 6
Uma possível solução seria:
Leitura recomendada:
Questão 7
Você poderia apresentar algoritmos como BubbleSort, InsertionSort, SelectionSort, MergeSort e Quicksort.
Leitura recomendada: