Crie um algoritmo que leia a idade de uma pessoa, e se ela possui carteira de habilitação (1 para sim, 0 para não).
  • Se a pessoa tiver 18 anos ou mais e possuir habilitação, escreva “Pode dirigir”.

Passo 1

O enunciado pede um algoritmo que leia duas informações: a idade de uma pessoa e se ela possui carteira de habilitação (onde 1 significa “sim” e 0 significa “não”). A única regra dada é: se a pessoa tiver 18 anos ou mais e possuir habilitação, escrever “Pode dirigir”.
Entradas relevantes:
  • idade — número inteiro que representa a idade da pessoa.
  • habilitacao — valor inteiro 1 (tem) ou 0 (não tem).
    Saída esperada:
  • Impressão do texto “Pode dirigir” somente quando as duas condições forem verdadeiras; caso contrário não imprimir isso (pode-se imprimir outra mensagem, por exemplo “Não pode dirigir”).

Passo 2

O que o algoritmo precisa fazer, em palavras simples:
  1. Ler o valor de idade.
  2. Ler o valor de habilitacao.
  3. Verificar duas condições ao mesmo tempo: idade \ge 18 e habilitacao = 1.
  4. Se ambas forem verdadeiras, escrever “Pode dirigir”; caso contrário, escrever algo como “Não pode dirigir”.
Vou explicar cada peça para você entender bem e poder reproduzir na prova.

Passo 3

Comparações e operadores (mini-aula):
  • A comparação idade \ge 18 pergunta “a idade é maior ou igual a 18?”. O símbolo \ge significa “maior ou igual”.
  • A comparação habilitacao = 1 pergunta “o valor de habilitacao é igual a 1?”. O símbolo = aqui é teste de igualdade (no código você usará o operador de igualdade da linguagem, por exemplo == em muitas linguagens).
  • Para exigir que duas condições ocorram ao mesmo tempo, usamos o operador lógico E, que escrevemos como \land (lê-se “e”). A condição combinada fica: idade \ge 18 \land habilitacao = 1.

Passo 4

O que significa o operador lógico E ( \land) — mini-aula com verdadeiro/falso:
  • Se A for "idade \ge 18" e B for “habilitacao = 1”, então A \land B só é verdadeira quando ambos A e B forem verdadeiros.
    Tabela simplificada:
  • A = V, B = V => A \land B = V
  • A = V, B = F => A \land B = F
  • A = F, B = V => A \land B = F
  • A = F, B = F => A \land B = F
Na nossa regra, só quando idade \ge 18 for verdadeira e habilitacao = 1 for verdadeira é que escrevemos “Pode dirigir”.

Passo 5

Pseudocódigo detalhado, linha a linha, explicando cada etapa (faça assim na prova):
  1. Ler idade. (Ex.: perguntar ao usuário e converter para número inteiro.)
  2. Ler habilitacao. (Ex.: perguntar e garantir que seja 0 ou 1.)
  3. Testar a condição combinada: se idade \ge 18 \land habilitacao = 1 então
    3.1) Escrever “Pode dirigir”.
    3.2) Fim do algoritmo.
  4. Senão (ou seja, se a condição combinada não for verdadeira)
    4.1) Escrever “Não pode dirigir”.
    4.2) Fim do algoritmo.
Explicação de cada passo para a prova:
  • Ao ler valores, declare as variáveis claramente: por exemplo, idade como inteiro, habilitacao como inteiro/booleano.
  • No teste, aplique primeiro a comparação da idade e depois a comparação da habilitação, mas isso é só para leitura: logicamente a ordem não altera o resultado no operador E.
  • Sempre trate entradas inválidas se quiser responder completo (por exemplo, se habilitacao receber 2 ou texto). Na prova, se não pedirem validação, não complique — assuma que a entrada está correta.

Passo 6

Exemplos concretos (faça esses testes mentalmente ou no papel para se acostumar):
  • Exemplo 1: idade = 20, habilitacao = 1. Aqui 20 \ge 18 é verdadeiro e habilitacao = 1 é verdadeiro, logo a saída é “Pode dirigir”.
  • Exemplo 2: idade = 17, habilitacao = 1. Aqui 17 \ge 18 é falso, então mesmo com habilitação a saída é “Não pode dirigir”.
  • Exemplo 3: idade = 25, habilitacao = 0. Aqui habilitacao = 1 é falso, então a saída é “Não pode dirigir”.

Passo 7

Dicas rápidas de escrita e prevenção de erros na prova:
  • Use nomes de variável claros: idade, habilitacao.
  • Lembre-se que o teste de igualdade em muitas linguagens é diferente do operador de atribuição (por exemplo, em C/Python usa-se ==). Na sua resposta em prova, é suficiente escrever em forma lógica: habilitacao = 1 ou, em linguagem de programação, habilitacao == 1.
  • Se a questão pedir apenas quando escrever “Pode dirigir”, escreva exatamente essa string entre aspas como saída.
  • Não esqueça que a verificação é com \ge (maior ou igual), então quem tem exatamente 18 anos pode dirigir, desde que tenha habilitação.

Passo 8

Versão enxuta do algoritmo (para escrever rápido na prova):
  • Ler idade.
  • Ler habilitacao.
  • Se idade \ge 18 \land habilitacao = 1 então escrever “Pode dirigir” senão escrever “Não pode dirigir”.

Resposta

Ler idade
Ler habilitacao
Se idade \ge 18 \land habilitacao = 1 então escrever “Pode dirigir” senão escrever “Não pode dirigir”

Exercícios relacionados