Raciocínio Lógico Múltipla Escolha

A expressão a seguir especifica que: 1 será adicionado a x, se x for maior que 0; 1 será subtraído de x, se x for menor que 0; o valor de x será mantido, se x for igual a zero. Marque a opção que representa a seguinte lógica de programação, porém usando apenas as estruturas do tipo if simples.

A expressão a seguir especifica que: 1 será adicionado a x, se x for maior que 0; 1 será subtraído de x, se x for menor que 0; o valor de x será mantido, se x for igual a zero. Marque a opção que representa a seguinte lógica de programação, porém usando apenas as estruturas do tipo if simples.

  1. if(x>0) x++; if(x<0) x--
  2. if(x>0) x--; if(x<0) x++
  3. if(x>0) x++; if(x<0) x++
  4. if(x>0) x--; if(x<0) x--
  5. if(x>=0) x++; if(x<=0) x--

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A

A questão solicita a implementação de uma lógica condicional utilizando apenas estruturas if simples (sem else). Vamos traduzir cada parte do enunciado para a sintaxe de programação:

  1. "1 será adicionado a x, se x for maior que 0"
  • Condição: x > 0
  • Ação: Incrementar x em 1 (sintaxe comum: x++ ou x += 1)
  • Código: if (x > 0) x++;
  1. "1 será subtraído de x, se x for menor que 0"
  • Condição: x < 0
  • Ação: Decrementar x em 1 (sintaxe comum: x-- ou x -= 1)
  • Código: if (x < 0) x--;
  1. "o valor de x será mantido, se x for igual a zero"
  • Como as estruturas são if isolados, se nenhuma condição anterior for satisfeita (isto é, se x não é maior que 0 nem menor que 0), o programa simplesmente ignora os blocos.
  • Isso implica implicitamente que se x = 0, nenhuma alteração ocorre, mantendo o valor original.

Análise Detalhada

Vamos comparar a lógica deduzida acima com as opções apresentadas:

OpçãoCódigo ApresentadoAvaliação da Lógica
Aif(x>0) x++; if(x<0) x--;Correta. Soma 1 se positivo, subtrai 1 se negativo. Mantém se for zero.
Bif(x>0) x--; if(x<0) x++;Incorreta. Inverte a operação (subtrai no positivo, soma no negativo).
Cif(x>0) x++; if(x<0) x++;Incorreta. Sempre soma 1, independentemente do sinal.
Dif(x>0) x--; if(x<0) x--;Incorreta. Sempre subtrai 1, independentemente do sinal.
Eif(x>=0) x++; if(x<=0) x--;Incorreta. Se x=0, a primeira condição é verdadeira, alterando o valor para 1.

Conceitos-chave envolvidos:

  • Operadores Relacionais: > (maior que) e < (menor que).
  • Incremento/Decremento: ++ (adiciona 1) e -- (subtrai 1).
  • Estruturas Condicionais Independentes: Uso de dois if distintos permite tratar cenários mutuamente exclusivos sem precisar da palavra-chave else.

Portanto, a única opção que reflete fielmente a regra descrita é 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.