Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — FUNDATEC 2024

ProgramaçãoConceitos básicos de programação
Código
qg162304
Banca
FUNDATEC
Órgão
CRF-RS
Ano
2024
Nível
Médio
Cargo
Técnico de Informática
Analise o algoritmo abaixo, escrito no software VisuAlg 3.0:Imagem associada para resolução da questãoAo final da execução do algoritmo, qual será o valor da variável “ret”?
  1. A6
  2. B12
  3. C15
  4. D20
  5. E30
Revelar gabarito e comentário

GabaritoB — 12

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Resolução

Gabarito: letra B — a conta chega a ret = 12 — alternativa B.

A ideia por trás

Uma função em programação é um bloco de código que recebe valores de entrada (parâmetros), executa uma tarefa e devolve um resultado. No VisuAlg, ela é declarada com 'funcao' e usa 'retorne' para enviar o resultado de volta a quem a chamou. A variável que recebe esse retorno guarda o valor para uso posterior.

A função soma(a, b) calcula a + b e retorna esse valor. O que importa é que o 'retorne' define exatamente o que sai da função — qualquer cálculo interno que não seja retornado não afeta o resultado final. Quando o programa principal faz 'ret <- soma(5, 7)', ele substitui a chamada pelo valor retornado, ou seja, 12.

Esta questão testa se você entende que a função retorna apenas o valor do 'retorne' e que a chamada com argumentos 5 e 7 produz a soma direta. Basta seguir o fluxo da chamada até o retorno.

O que a questão dá

  • função soma(a, b) definida no algoritmo

  • chamada soma(5, 7) no programa principal

  • variável ret recebe o retorno da função

O que queremos: o valor final da variável ret

Passo 1 — Substituir os parâmetros na função

Dentro da função, os parâmetros a e b recebem os valores passados na chamada. Isso é necessário para saber o que a função vai calcular.

Por que esta fórmula: A função soma é definida como a + b, então precisamos usar os valores que chegaram.

soma(a,b)=a+bsoma(a, b) = a + b

De onde vem cada valor: aa = definição: parâmetro da função, recebe o primeiro argumento da chamada (5) · bb = definição: parâmetro da função, recebe o segundo argumento da chamada (7)

soma(5,7)=5+7=12soma(5, 7) = 5 + 7 = \boxed{12}
NÃO CAIA NESSA!

Esquecer que os parâmetros são copiados e tentar usar outros valores.

Passo 2 — Retornar o valor calculado

O comando 'retorne' envia o resultado da soma de volta para o programa principal. Sem isso, a função não devolveria nada.

Por que esta fórmula: O retorno é o valor que a função entrega, que será usado na atribuição.

retornea+bretorne a + b

De onde vem cada valor: a+ba + b = passo 1: 5 + 7 = 12

retorne12=12retorne 12 = \boxed{12}
NÃO CAIA NESSA!

Achar que a função retorna algo diferente do que está no 'retorne'.

Passo 3 — Atribuir o retorno à variável ret

O programa principal recebe o valor retornado e o guarda na variável ret. É esse valor que será exibido ao final.

Por que esta fórmula: A atribuição ret <- soma(5, 7) faz ret receber o valor retornado pela função.

retsoma(5,7)ret \leftarrow soma(5, 7)

De onde vem cada valor: soma(5,7)soma(5, 7) = passo 2: 12

ret12=12ret \leftarrow 12 = \boxed{12}
NÃO CAIA NESSA!

Confundir a atribuição com uma comparação ou esquecer que o valor é copiado.

Resposta: ret = 12 — alternativa B

Link permanente: /questoes/qg162304