Olá Caroline,
gostaria de saber qual o problema que poderia ter acometido meu avaliador...
Muito obrigado por sua pergunta!
Essa dúvida deve ajudar a outros e outras que venham a ter o mesmo problema.
Quando o programa avaliador apresenta apenas a mensagem
minha_funcao(): iniciando avaliação dos testes (vale x pontos)
e não apresenta a mensagem
minha_funcao(): avaliação encerrada...
Isso indica que a avaliação da minha_funcao()
não pôde ser concluída.
A razão da avaliação não ter sido concluída é muito provavelmente devido a um loop infinito na função.
Algo como, por exemplo,
#---------------------- def minha_funcao( n ): '''(int) -> None Recebe um inteiro n e imprime os n primeiros números ímpares positivos. ''' i = 0 while i < n: print(2*i+1) i =+ 1
Nesse caso, devo olhar minha_funcao()
, e caso não perceba rapidamente o problema,
colocar alguns print()
em lugares estratégico para verificar a razão do loop infinito.
No exemplo acima eu poderia fazer algo como
#---------------------- def minha_funcao( n ): '''(int) -> None Recebe um inteiro n e imprime os n primeiros números ímpares positivos. ''' i = 0 while i < n: print(2*i+1) i =+ 1 print("i =", i, "n =", n) # procurando o erro
Bem, voltando ao EP08 ...
Como o avaliador escreveu
experimento_debug(): iniciando avaliação dos testes (vale 3 ponto(s))
e não escreveu que a avaliação da função foi encerrada, isso indica que é
possível que a função experimento()
esteja em loop infinito.
Para testar essa hipótese de loop infinito pedimos a ajuda do Python Shell.
Por favor, no Python Shell, escreva
In [6]: experimento(2, 1, True)
e veja o que acontece.