Ed
ano passado
Vamos analisar o código e as funções apresentadas para determinar os valores finais de `soma()` e `subtrai()`. 1. Função `subtrai(int a)`: - A variável `valor` é inicializada como 1. - O valor de `a` é subtraído de `valor`, mas não está claro qual é o valor de `a` na chamada. - O valor final retornado é `valor`, que é 1 - `a`. 2. Função `soma(int a)`: - A variável `valor` é inicializada como 1 e é estática, ou seja, mantém seu valor entre as chamadas. - A cada chamada, `valor` é incrementado por `a`. - O valor final retornado é `valor`, que aumenta a cada chamada. 3. Função `main()`: - Um loop de 1 a 3 chama a função `soma()` com `nro` igual a 1. - Portanto, `soma(1)` é chamada três vezes, resultando em: - 1ª chamada: `valor` = 1 + 1 = 2 - 2ª chamada: `valor` = 2 + 1 = 3 - 3ª chamada: `valor` = 3 + 1 = 4 - Assim, após três chamadas, o valor final de `soma()` é 4. Agora, para `subtrai()`, como não temos informações sobre o valor de `a` que está sendo passado, mas se considerarmos que `a` é 0 (não foi especificado), o valor final de `subtrai()` seria 1 - 0 = 1. Com isso, analisando as alternativas: - A) Valor final de soma() é igual a 4 e valor final de subtrai() é igual a 0 (zero) - Incorreta. - B) Valor final de soma() é igual a 2 e valor final de subtrai() é igual a 1 (zero) - Incorreta. - C) Valor final de soma() é igual a 2 e valor final de subtrai() é igual a 0 (zero) - Incorreta. - D) Valor final de soma() é igual a 3 e valor final de subtrai() é igual a 0 (zero) - Incorreta. - E) Valor final de soma() é igual a 3 e valor - Incorreta. Parece que não há uma alternativa correta com base na análise. Se considerarmos que `subtrai()` não foi chamada, o valor final de `subtrai()` seria 1, mas isso não está nas opções. Você pode precisar revisar o código ou as opções fornecidas.
Cadastre-se ou realize login
Ed
há 2 anos
Analisando o código fornecido, podemos determinar que a alternativa correta é: B) Valor final de soma() é igual a 2 e valor final de subtrai() é igual a 1 (zero).