Em um algoritmo de autenticação, as variáveis são usuarioTipo (texto: 'admin'/'convidado') e ultimaAtividade…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em um algoritmo de autenticação, as variáveis são usuarioTipo (texto: 'admin'/'convidado') e ultimaAtividade (inteiro, dias). Escreva a expressão condicional que permite acesso se usuarioTipo for 'admin' ou, se for 'convidado', ultimaAtividade = 7.
- A) (numero % 2 = 0 AND numero < 10) OR sinalizado = false
- B) usuarioTipo = 'admin' OR (usuarioTipo = 'convidado' AND ultimaAtividade <= 7)
- C) numero % 2 = 1 AND numero > 10 AND numero < 50
- D) sinalizado = false AND numero < 10
- E) numero % 2 = 0 OR (numero < 10 AND numero > 50)
✅ Resposta correta: alternativa B
Resolução passo a passo
- O enunciado pede uma expressão que dê acesso se usuarioTipo for 'admin' ou, se for 'convidado', se ultimaAtividade for igual a 7. A forma correta seria: usuarioTipo = 'admin' OR (usuarioTipo = 'convidado' AND ultimaAtividade = 7). Passo 2: Comparando com as alternativas, apenas a B usa as variáveis do enunciado (usuarioTipo e ultimaAtividade) e tem a mesma estrutura lógica: a condição 'admin' em OR com uma conjunção que exige 'convidado' e a condição sobre ultimaAtividade. Passo 3: A B não está perfeitamente correta, porque usa ultimaAtividade <= 7 em vez de ultimaAtividade = 7. Com <= 7, um convidado com 3 dias de inatividade teria acesso, o que o enunciado não permite. Por isso, discordo parcialmente do gabarito: a B é a melhor opção disponível, mas não é exata, e o enunciado deveria ter a condição de igualdade. Passo 4: A alternativa A usa as variáveis numero e sinalizado, que não existem no enunciado, e tem a lógica de outro problema. Passo 5: A alternativa C também usa numero, que não aparece no enunciado, e impõe uma faixa de valores (maior que 10 e menor que 50) sem relação com o acesso por tipo de usuário. Passo 6: A alternativa D usa sinalizado e numero, sem relação com usuarioTipo nem com ultimaAtividade. Passo 7: A alternativa E também usa numero, e sua parte (numero < 10 AND numero > 50) é impossível, pois nenhum número é menor que 10 e maior que 50 ao mesmo tempo. Conclusão: a escolha é B, com a ressalva de que a condição ideal seria ultimaAtividade = 7.
💡 Dica: Analise as condições de acesso e escreva a expressão correta.
Alternativa por alternativa
O aluno pode ter se concentrado em montar uma expressão com OR e AND sem verificar quais variáveis o enunciado define. Ele aplicou uma lógica de outro problema, usando numero e sinalizado.
Por que engana: Confundir a lógica da condição, utilizando operadores incorretos ou a ordem errada na expressão condicional.
Admins têm acesso incondicional; convidados só se sua última atividade ocorreu há 7 dias ou menos, portanto usa-se OR entre as duas condições.
O aluno pode ter tratado a questão como um teste de faixa numérica e de paridade, esquecendo que o enunciado fala de tipo de usuário e dias de atividade. Ele usou numero, variável inexistente no enunciado.
O aluno pode ter achado que a expressão deveria combinar um sinalizador com um limite numérico, usando AND onde o enunciado pede OR entre tipos de usuário. Ele ignorou usuarioTipo e ultimaAtividade.
O aluno pode ter escrito a condição numero < 10 AND numero > 50 sem perceber que ela é impossível, pois nenhum número satisfaz as duas ao mesmo tempo. Ele também usou a variável numero, que não existe no enunciado.
Raio-X da questão
expressão condicional
avaliacao
expressões lógicas · condicionais em algoritmos
Revisar a sintaxe de expressões condicionais em algoritmos.
Confundir a lógica da condição, utilizando operadores incorretos ou a ordem errada na expressão condicional.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Pesquisadores acompanham há três anos o avanço de resíduos flutuantes em um trecho de rio urbano. Em uma simulação para…
- — O caminhão não pode ir a uma rua em dia errado — explicou a agente de limpeza durante a reunião do bairro. O município…
- — Nem toda travessia precisa emitir som ao mesmo tempo — explicou a técnica responsável pelos sinais acessíveis da…
- Na porta de um centro comunitário, voluntários recebem pedidos de doação e querem reduzir erros na hora de separar e…
- Em pseudocódigo, para um loop 'enquanto' que percorre índices i iniciando em 1 para acessar lista[1..n], qual condição…
- Projete em pseudocódigo um algoritmo que valide a força de uma senha recebida como dado: a senha deve ter pelo menos 8…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
