Em um script de automação, dois contadores estão sendo util...

Próximas questões
Com base no mesmo assunto
Q3508344 Programação

Em um script de automação, dois contadores estão sendo utilizados para rastrear tentativas de conexão e reconexão a um serviço. O primeiro contador(a) armazena o número de tentativas já realizadas, enquanto o segundo (b) contabiliza o número de falhas consecutivas. Analise o trecho a seguir:



#!/bin/bash


a=5


b=3


echo $((a++ + ++b))



Considerando o comportamento da aritmética em shell script com operadores de pré e pós-incremento, qual será a saída impressa pelo comando echo? Assinale a alternativa correta:

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - 9.

Tema central: A questão aborda o uso de operadores de incremento em shell script, especialmente a diferença entre pré-incremento (++b) e pós-incremento (a++). Esse tema é fundamental em concursos, pois exige compreensão de lógica de programação e execução de comandos no Bash.

Resumo teórico: Em shell script, o operador ++ pode ser usado antes (pré-incremento) ou depois (pós-incremento) da variável. O pós-incremento (a++) retorna o valor atual de "a" antes de incrementar, enquanto o pré-incremento (++b) incrementa primeiro e depois retorna o novo valor de "b". Isso é avaliado dentro da expressão aritmética $(( )) no Bash (vide documentação oficial Bash: Arithmetic Expansion).

Justificativa da alternativa correta:

- Valores iniciais: a = 5, b = 3.
- a++ (pós-incremento) retorna 5 e depois incrementa "a" para 6.
- ++b (pré-incremento) incrementa "b" para 4 e retorna 4.
- A expressão a++ + ++b resulta em 5 + 4 = 9.
Portanto, a saída impressa é 9.

Análise das alternativas incorretas:

A - Errada. Não há erro de sintaxe; ++ é válido em aritmética do Bash.

B - Errada. 8 seria o resultado se ambos fossem pós-incrementados (5 + 3 = 8).

C - Errada. 7 não corresponde a esta combinação de operadores e valores.

E - Errada. 10 não é resultado possível com estes valores e incrementos.

Estratégia para interpretação:
Dê atenção à ordem dos incrementos e leia cuidadosamente o uso de ++ antes ou depois da variável. Muitas pegadinhas ocorrem por inverter pré e pós-incremento!

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Em shell script, o operador ++ pode ser usado antes (pré-incremento) ou depois (pós-incremento) da variável. O pós-incremento (a++) retorna o valor atual de "a" antes de incrementar, enquanto o pré-incremento (++b) incrementa primeiro e depois retorna o novo valor de "b". Isso é avaliado dentro da expressão aritmética $(( )) no Bash (vide documentação oficial Bash: Arithmetic Expansion).

- Valores iniciais: a = 5, b = 3.

- a++ (pós-incremento) retorna 5 e depois incrementa "a" para 6.

- ++b (pré-incremento) incrementa "b" para 4 e retorna 4.

- A expressão a++ + ++b resulta em 5 + 4 = 9.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo