Raciocínio Lógico Múltipla Escolha

Um programa Prolog (Strawberry Prolog) processa os dados de um grupo de veículos vendidos numa loja utilizando fatos como: modelo(com os parâmetros: nome do modelo, potência do motor em cv e consumo em km/litro, nesta mesma ordem), por exemplo: modelo("Golf", 75, 11.9) veiculos(com os parâmetros: placa, marca, modelo, ano de fabricação, cor e preço, nesta mesma ordem), por exemplo: veiculos("FEA-1987", "Ford", "Mustang", 2014, azul, 92500) Listar os nomes dos modelos com mais de 95 cv a resposta correta é:

Um programa Prolog (Strawberry Prolog) processa os dados de um grupo de veículos vendidos numa loja utilizando fatos como:

modelo(com os parâmetros: nome do modelo, potência do motor em cv e consumo em km/litro, nesta mesma ordem), por exemplo: modelo("Golf", 75, 11.9)

veiculos(com os parâmetros: placa, marca, modelo, ano de fabricação, cor e preço, nesta mesma ordem), por exemplo: veiculos("FEA-1987", "Ford", "Mustang", 2014, azul, 92500)

Listar os nomes dos modelos com mais de 95 cv a resposta correta é:

  1. ? - modelo(W,P,C, P > 95, write(W)),nl
  2. ? - modelo(m,p,c, p>95, write(m)),nl
  3. ? - veiculos(T,W,X,Y,Z, modelo(W,P,C, P > 95, write(T)),nl
  4. ? - listar(X:-modelo(W,P,C, P > 95,write(P))
  5. ? - veiculos(T,W,X,Y,Z, W > 95, write(T)),nl

Resolução completa

Explicação passo a passo

A
Alternativa A

Para resolver esta questão de Prolog, precisamos entender a sintaxe básica da linguagem e como ela lida com fatos e consultas.

Análise da Estrutura de Dados

O enunciado define dois predicados principais (fatos):

  1. modelo(Nome, Potencia, Consumo):
  • Contém a potência do motor em cavalos-vapor (cv).
  • Exemplo: modelo("Golf", 75, 11.9)
  1. veiculos(Placa, Marca, Modelo, Ano, Cor, Preco):
  • Contém informações gerais sobre a venda, mas não a potência do motor diretamente.

Regra de Ouro do Prolog:

  • Variáveis sempre começam com Letra Maiúscula (ex: X, Nome, P).
  • Constantes (Atomos) começam com Letra Minúscula ou ficam entre aspas (ex: "Golf", 75).

Análise das Alternativas

O objetivo é listar os nomes dos modelos que tenham mais de 95 cv. Isso exige três passos:

  1. Consultar o predicado modelo (onde a potência está armazenada).
  2. Filtrar onde a potência é maior que 95.
  3. Imprimir apenas o nome do modelo.

Vamos verificar cada opção:

  • Alternativa A: ?- modelo(W,P,C), P > 95, write(W),nl
  • Correta.
  • Usa variáveis maiúsculas (W, P, C).
  • Filtra corretamente pela potência: P > 95.
  • Imprime o nome (W) conforme solicitado.
  • Alternativa B: ?- modelo(m,p,c), p>95, write(m),nl
  • Incorreta. As letras m, p, c estão em minúsculo. No Prolog, isso seriam constantes específicas, não variáveis que podem assumir qualquer valor. O código nunca retornaria nada.
  • Alternativa C: ?- veiculos(T,V,W,X,Y,Z), modelo(W,P,C), P>95, write(T),nl
  • Incorreta. Embora conecte os predicados corretamente, o comando final é write(T). Na definição de veiculos, T representa a placa, não o nome do modelo. O enunciado pede para listar os nomes.
  • Alternativa D: listar(X):-modelo(W,P,C), P > 95,write(P)
  • Incorreta. Primeiro, a sintaxe está definindo uma regra nova, não executando uma consulta imediata (geralmente iniciada com ?-). Segundo, o write(P) imprimiria a potência, e não o nome do modelo.
  • Alternativa E: ?- veiculos(T,V,W,X,Y,Z), W>95, write(T),nl
  • Incorreta. Tenta comparar o terceiro parâmetro de veiculos (que é o nome do modelo, ex: "Mustang") com o número 95. Comparar uma string ("Mustang") com um número é logicamente inválido neste contexto e ignora o predicado modelo que possui a informação correta da potência.

Conclusão

A única alternativa que utiliza a sintaxe correta de variáveis, acessa o dado correto (potência no predicado modelo) e imprime o resultado solicitado (nome do modelo) é a A.

Alternativa A

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Raciocínio Lógico

Ver mais Raciocínio Lógico resolvidas

Tem outra questão de Raciocínio Lógico?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.