Buscar

Na AULA 5 aprendemos sobre o escopo de variáveis e também sobre passagem de parâmetros. Sobre este assunto, observe o código a seguir: presentado t...

Na AULA 5 aprendemos sobre o escopo de variáveis e também sobre passagem de parâmetros. Sobre este assunto, observe o código a seguir: presentado temos 2 linhas de print comentadas (linha 7 e linha 10). Supondo que somente uma das linhas seja habilitada no código por vez, assinale a alternativa que corretamente contém a saída do programa para cada um dos prints, e o motivo correto que gerou esta saída.
Nota: 10.0

A Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: parangaricutirimirruaro.

Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', portanto só existe dentro desta função. Por este motivo, o print dentro de 'tirimirruaro' funcionou concatenando as strings. Já o print no programa principal também retorna a mesma resposta porque o print está sendo realizado no escopo global.

B Linha 7. Saída: tirimirruaro. Linha 10. Saída: parangaricutirimirruaro.

Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', porém a variável 'palavra' é local de outra função, não sendo possível acessar seu valor dentro da função 'tirimirruaro'. Por este motivo, o print dentro de 'tirimirruaro' funcionou somente mostrando a parte acessível que é 'tirimirruaro'. Já o print no programa principal retorna a concatenação das strings porque está no escopo global.

C Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: Erro (NameError).

Justificativa: a variável 'palavra2' é global do programa. Porém, como ela não recebeu nenhuma atribuição no escopo global, um erro acontece.

D Linha 7. Saída: parangaricutirimirruaro. Linha 10. Saída: Erro (NameError).

Justificativa: a variável 'palavra2' é local da função 'tirimirruaro', portanto só existe dentro desta função. Por este motivo, o print dentro de 'tirimirruaro' funcionou concatenando as strings. Já o print no programa principal não funcionou porque ele não conhece a variável do escopo local.


a) A
b) B
c) C
d) D

Respostas

User badge image

Ed Verified user icon

A resposta correta é a alternativa B) B. Linha 7. Saída: tirimirruaro. Linha 10. Saída: parangaricutirimirruaro. Justificativa: A variável 'palavra2' é local da função 'tirimirruaro', portanto só existe dentro desta função. Por esse motivo, o print dentro de 'tirimirruaro' funcionou somente mostrando a parte acessível que é 'tirimirruaro'. Já o print no programa principal retorna a concatenação das strings porque está no escopo global.

0
Dislike0

Responda

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Continue navegando