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.

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.

  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

Análise da Questão

Esta questão de lógica de programação exige a tradução de um texto descritivo para a sintaxe de uma linguagem estruturada (como C, Java ou C#), utilizando exclusivamente estruturas condicionais if simples.

Decomposição da Lógica Solicitada

O enunciado define três cenários distintos para a variável x:

  1. Cenário Positivo: Se x for maior que $0$, adicione $1$.
  • Sintaxe: if(x > 0) x++;
  1. Cenário Negativo: Se x for menor que $0$, subtraia $1$.
  • Sintaxe: if(x < 0) x--;
  1. Cenário Nulo: Se x for igual a $0$, mantenha o valor.
  • Sintaxe: Não há comando necessário (nenhuma das condições acima é verdadeira).

Por que a Alternativa A está correta?

A alternativa A apresenta:

if(x>0) x++; 
if(x<0) x--;
  • Estrutura Independente: O uso de ponto e vírgula (;) entre os dois comandos if garante que eles sejam executados sequencialmente, mas de forma independente. Não existe um bloco else ligando-os.
  • Validação dos Casos:
  • Se x = 5: O primeiro if é verdadeiro ($5 > 0$), x vira $6$. O segundo if verifica se $6 < 0$ (falso). Resultado final: $6$. (Correto conforme regra 1).
  • Se x = -5: O primeiro if é falso (-5 \ngtr 0). O segundo if é verdadeiro (-5 < 0), x vira -6. Resultado final: -6. (Correto conforme regra 2).
  • Se x = 0: O primeiro if é falso ($0 \ngtr 0$). O segundo if é falso ($0 \nless 0$). Nada acontece. Resultado final: $0$. (Correto conforme regra 3).

Por que as outras alternativas estão incorretas?

AlternativaErro Principal
BInverte as operações: subtrai quando positivo e soma quando negativo.
CSoma 1 em ambas as situações (positivo e negativo).
DSubtrai 1 em ambas as situações (positivo e negativo).
EUtiliza \geq e \leq. Se x=0, o primeiro if (x \geq 0) é verdadeiro e incrementa x, violando a regra de manter o valor zero.

Conclusão: A única opção que respeita rigorosamente as condições de comparação (> e <) e as respectivas ações (incremento e decremento) é 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.