As questões do mini teste #1 tinham um graus de dificuldade baixo. Aqui vai um esboço de solução.
Questão 1.
As cadeias de caracteres e as listas são tipos de objectos. Identifique de forma clara e sintética as suas semelhanças e as suas diferenças.
As cadeias de caracteres e as listas são colecções ordenadas de objectos. As listas são heterogéneas e mutáveis. As cadeias de caracteres são homogéneas e imutáveis.
Questão 2.
Explique o que acontece de modo claro, sintético e rigoroso, quando executa o comando: a= 5.
Resposta:
Questão 3.
Resposta:
Questão 4.
Resposta:
O nome "a" caso não exista é criado e passa a pertencer ao espaço de nomes corrente. Este nome fica associado ao objecto 5 através da identidade deste.
Questão 3.
O programa da listagem abaixo pretende criar e devolver a cópia de uma dada lista. No entanto não funciona na esmagadora maioria dos casos, podendo mesmo dar erro na sua execução}. Identifique o tipo do erro que o sistema comunica e explique a sua razão.
def minha_copia(lista):
"""
Fabrica a cópia da lista "lista".
"""
copia = []
for i in range(len(lista)):
copia = copia.append(lista[i])
return copia
O método append devolve como valor o objecto "None". Assim, depois da primeira execução dentro do ciclo "copia" fica com o valor "None", pelo que na segunda iteração dá erro: na segunda pasagem o nome cópia estado associado ao objecto None, que não tem o método "append" definido. Para corrigir basta retirar a atribuição dentro do ciclo.
Questão 4.
Desenvolva um programa que dada uma lista de números devolva a soma dos seus números pares e a soma dos seus números ímpares. A listagem abaixo ilustra o que se pretende.
>>> lst = [1,4,7,9,3,2,8,5,6]
>>> # ---> Aqui o seu programa de nome pares_impares.
>>> pares_impares(lst)
(20, 25)
>>>
Resposta:
def pares_impares(lista):
"""
Devolve o valor da soma dos números pares e o valor da soma
dos números ímpares.
"""
pares = 0
impares = 0
for i in range(len(lista)):
if lista[i] % 2 == 0:
pares = pares + lista[i]
else:
impares = impares + lista[i]
return pares,impares
Querido prof, ja agora, se não fosse muito incomodo, gostaria muito de ver as soluções da "segunda versão" do mini-teste...
ResponderEliminarsegunda versão? :O
ResponderEliminar