Questão nº 12

Questão de Informática · FCC TRT-20 2016 (nº 12)

FCC2016Técnico Judiciário - Área AdministrativaInformática
Gabarito: Cver comentário ↓

Uma das funções da lógica de programação é definir os passos para se resolver problemas do mundo real através de programas de computador criados nas linguagens de programação. Considere, nesse contexto, a estrutura de passos em pseudolinguagem abaixo.

```
var salary: real
início
leia(salary)
se(salary<1000)
então salary salary + 100
senão se (salary<2000)
então salary salary + 200
senão se (salary<3000){
então salary salary + 300
senão se (salary<4000){
então salary salary + 400
senão salary salary + 1000
fim_se
fim_se
fim_se
fim_se
exiba(salary)
fim
```

Se for informado o valor 4000 para a variável salary será exibido o valor

Resposta comentada

Gabarito Alternativa C

O conceito-chave aqui é a estrutura condicional aninhada (se-então-senão ou if-else if-else), que permite ao programa tomar decisões diferentes com base em várias condições. O programa avalia as condições em sequência: se uma condição é verdadeira, o bloco de código associado a ela é executado e o restante das condições aninhadas é ignorado; se for falsa, ele passa para a próxima condição senão se ou para o bloco senão final se nenhuma condição anterior for verdadeira.

  • (A) Incorreta: O valor 4400 seria exibido se a condição salary < 4000 fosse avaliada como verdadeira para salary = 4000, o que não é o caso, pois 4000 não é menor que 4000. Essa é a armadilha da banca: muitos alunos podem confundir < (menor que) com <= (menor ou igual a) e parar a execução neste ponto, somando 400 a 4000.
  • (B) Incorreta: O valor 4300 não é alcançado por nenhuma das condições ou caminhos de execução com o valor de entrada 4000.
  • (C) Correta: Com salary = 4000, todas as condições salary < 1000, salary < 2000, salary < 3000 e salary < 4000 são avaliadas como falsas. Como nenhuma das condições se ou senão se foi verdadeira, o fluxo do programa segue para o último bloco senão (que é o "pega-tudo" para qualquer valor que não atendeu às condições anteriores), onde salary recebe salary + 1000. Assim, 4000 + 1000 = 5000.
  • (D) Incorreta: O valor 4200 não é alcançado por nenhuma das condições ou caminhos de execução com o valor de entrada 4000.
  • (E) Incorreta: O valor 9000 não é alcançado por nenhuma das condições ou caminhos de execução com o valor de entrada 4000.

Fonte: FCC TRT-20 2016 Técnico Judiciário - Área Administrativa (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho