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
significa “sim” e
significa “não”). A única regra dada é: se a pessoa tiver
anos ou mais e possuir habilitação, escrever “Pode dirigir”.
Entradas relevantes:
Entradas relevantes:
-
— número inteiro que representa a idade da pessoa. -
— valor inteiro (tem) ou (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:
- Ler o valor de
. - Ler o valor de
. - Verificar duas condições ao mesmo tempo:
e . - 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
pergunta “a idade é maior ou igual a ?”. O símbolo significa “maior ou igual”. - A comparação
pergunta “o valor de habilitacao é igual a ?”. 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
(lê-se “e”). A condição combinada fica: .
Passo 4
O que significa o operador lógico E (
) — mini-aula com verdadeiro/falso:
- Se
for "idade " e for “habilitacao = 1”, então só é verdadeira quando ambos e forem verdadeiros.
Tabela simplificada: -
V, V => V -
V, F => F -
F, V => F -
F, F => F
Na nossa regra, só quando
for verdadeira e
for verdadeira é que escrevemos “Pode dirigir”.
Passo 5
Pseudocódigo detalhado, linha a linha, explicando cada etapa (faça assim na prova):
- Ler
. (Ex.: perguntar ao usuário e converter para número inteiro.) - Ler
. (Ex.: perguntar e garantir que seja ou .) - Testar a condição combinada: se
então
3.1) Escrever “Pode dirigir”.
3.2) Fim do algoritmo. - 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,
como inteiro, 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
receber 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:
, . Aqui é verdadeiro e é verdadeiro, logo a saída é “Pode dirigir”. - Exemplo 2:
, . Aqui é falso, então mesmo com habilitação a saída é “Não pode dirigir”. - Exemplo 3:
, . Aqui é 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:
, . - 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: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
(maior ou igual), então quem tem exatamente anos pode dirigir, desde que tenha habilitação.
Passo 8
Versão enxuta do algoritmo (para escrever rápido na prova):
- Ler
. - Ler
. - Se
então escrever “Pode dirigir” senão escrever “Não pode dirigir”.
Resposta
Ler
Ler
Se então escrever “Pode dirigir” senão escrever “Não pode dirigir”
Ler
Se