Crie um algoritmo que leia um usuário (número) e uma senha (número) e escreva “Acesso permitido” se:
  • O usuário lido for igual a 1 e senha igual a 1234 OU se o usuário lido for igual a 2 e senha igual a 5678
    Caso contrário, mostrar “Acesso negado”.

Passo 1

O que o enunciado pede e os dados que temos:
  • Pede para criar um algoritmo que leia dois valores numéricos: um usuário e uma senha.
  • Se o par (usuário, senha) for igual a (1,\,1234) OU igual a (2,\,5678) então o algoritmo deve escrever exatamente “Acesso permitido”.
  • Caso contrário, o algoritmo deve escrever exatamente “Acesso negado”.
  • Não há outras condições nem múltiplas tentativas pedidas no enunciado; é uma verificação direta após ler os dois números.

Passo 2

Entendendo a lógica booleana que vamos usar (aulas rápidas e sem enrolação).
  • Igualdade: para testar se um valor é igual a outro usamos a comparação de igualdade. Em matemática isso é escrito como \text{usuario}=1 ou \text{senha}=1234.
  • Conjunção (AND): queremos que duas condições sejam verdadeiras ao mesmo tempo. Em lógica usamos \land. Exemplo: " \text{usuario}=1 e \text{senha}=1234" é escrito \text{usuario}=1 \land \text{senha}=1234.
  • Disjunção (OR): queremos que pelo menos uma das duas alternativas seja verdadeira. Em lógica usamos \lor. Exemplo: alternativa A OU alternativa B é (\text{A}) \lor (\text{B}).
  • Precedência: normalmente \land tem precedência maior que \lor. Para evitar confusão, sempre use parênteses para agrupar as conjunções que pertencem a cada alternativa.
  • Em pseudocódigo/linguagens: muitas usam símbolos diferentes: igualdade de teste é == em C/Python, atribuição é =. No pseudocódigo aqui vou escrever comparações de forma matemática (como \text{usuario}=1) e explicar o equivalente em Python/C quando necessário.

Passo 3

Estratégia do algoritmo (passo a passo conceitual, o que fazer na prova):
  1. Ler o valor do usuário e guardar em uma variável chamada \text{usuario}.
  2. Ler o valor da senha e guardar em uma variável chamada \text{senha}.
  3. Avaliar a condição:
    • Verificar se (\text{usuario}=1 \land \text{senha}=1234) OU (\text{usuario}=2 \land \text{senha}=5678).
  4. Se a condição for verdadeira escrever “Acesso permitido”.
  5. Caso contrário escrever “Acesso negado”.
    Isso é tudo — simples, direto e à prova de erro se usar parênteses.

Passo 4

Pseudocódigo detalhado (cada linha pensa como se estivesse escrevendo na prova):
  • Ler \text{usuario} (número)
  • Ler \text{senha} (número)
  • Se \bigl((\text{usuario}=1 \land \text{senha}=1234)\lor(\text{usuario}=2 \land \text{senha}=5678)\bigr) então
    • Escrever “Acesso permitido”
      Senão
    • Escrever “Acesso negado”
      Fim se
Explicando cada linha de forma bem mastigada:
  • "Ler \text{usuario}" significa solicitar a entrada do usuário e armazenar esse número na variável \text{usuario}.
  • A expressão condicional dentro do Se é avaliada como verdadeiro ou falso. Se for verdadeiro executa o ramo “Acesso permitido”, senão executa o ramo do senão.
  • Os parênteses garantem que se compare corretamente cada par (usuário e senha) antes de aplicar o OR.

Passo 5

Exemplos de execução (para você testar mentalmente e ganhar confiança):
  • Entrada: \text{usuario}=1, \text{senha}=1234 → A verificação (1,1234) corresponde à primeira alternativa → Resultado: “Acesso permitido”.
  • Entrada: \text{usuario}=1, \text{senha}=0000 → Nem a primeira nem a segunda alternativa são verdadeiras → Resultado: “Acesso negado”.
  • Entrada: \text{usuario}=2, \text{senha}=5678 → Corresponde à segunda alternativa → Resultado: “Acesso permitido”.
  • Entrada: \text{usuario}=3, \text{senha}=5678 → Usuário não é \,1 nem \,2 → Resultado: “Acesso negado”.

Passo 6

Observações práticas e dicas para a prova (não se enrole em medo):
  • Sempre coloque parênteses ao combinar \land e \lor. Ex.: escreva \bigl((\text{usuario}=1 \land \text{senha}=1234)\lor(\text{usuario}=2 \land \text{senha}=5678)\bigr).
  • Se precisar escrever em uma linguagem real:
    • Em Python a condição ficaria: \text{usuario}==1\\ \text{and}\\ \text{senha}==1234\\ \text{or}\\ \text{usuario}==2\\ \text{and}\\ \text{senha}==5678 (use parênteses para agrupar).
    • Em C similarly use \text{usuario}==1 && \text{senha}==1234 etc.
  • Teste sempre com entradas que devem permitir e negar o acesso para garantir que sua lógica está correta.
  • Respira fundo: é uma lógica bem direta — com prática isso fica automático.

Resposta

Ler \text{usuario}\nLer \text{senha}\nSe \bigl((\text{usuario}=1 \land \text{senha}=1234)\lor(\text{usuario}=2 \land \text{senha}=5678)\bigr) então\n Escrever “Acesso permitido”\nSenão\n Escrever “Acesso negado”\nFim se

Exercícios relacionados