Raciocínio Lógico Múltipla Escolha

Marque a opção que representa a seguinte lógica de programação. Uma 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. Uma 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++; else if(x<0) x--;
  2. if(x>0) x--; else if(x<0) x++;
  3. if(x>0) x++; else if(x<0) x++;
  4. if(x>0) x--; else if(x<0) x--;
  5. if(x>=0) x++; else if(x<=-0) x--;

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A

A questão solicita a identificação do código de programação que traduz uma lógica condicional específica envolvendo o valor da variável x.

Requisitos da Lógica:

  1. Se x > 0: Adicionar 1 a x (incremento).
  2. Se x < 0: Subtrair 1 de x (decremento).
  3. Se x = 0: Manter o valor (nenhuma alteração).

No contexto de linguagens como C, Java ou JavaScript, os operadores são:

  • x++: Incrementa x em 1.
  • x--: Decrementa x em 1.

Análise das Alternativas

Vamos analisar a estrutura lógica do código na alternativa A:

  • Condição Inicial (if(x>0)): Verifica se x é positivo.
  • Se verdadeiro, executa x++. Isso corresponde ao requisito de adicionar 1 quando x > 0.
  • Condição Secundária (else if(x<0)): Como o primeiro if falhou, sabemos que x \leq 0. Esta linha verifica especificamente se x é negativo.
  • Se verdadeiro, executa x--. Isso corresponde ao requisito de subtrair 1 quando x < 0.
  • Caso Zero: Se x = 0, a primeira condição (x>0) é falsa e a segunda (x<0) também é falsa. Nenhuma instrução dentro dos blocos é executada, mantendo o valor original de x. Isso atende ao requisito de manutenção do valor.

Por que as outras estão incorretas?

AlternativaErro Principal
BInverte a operação para positivos (subtrai em vez de somar).
CRealiza soma em ambos os casos (ambos usam x++).
DRealiza subtração em ambos os casos (ambos usam x--).
EA condição inicial x>=0 inclui o zero, fazendo com que x=0 seja incrementado indevidamente.

Conclusão

A estrutura if(x>0) x++; else if(x<0) x--; cobre todos os casos numéricos reais de forma exata conforme descrito no enunciado.

Portanto, a alternativa correta é a 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.