Logo Passei Direto
Buscar

Informática

Engenharias
Em codigos desenvolvidos em C, todas as ações de um programa são desenvolvidas dentro de funcões e identificadas por um nome que sere utilizado para realizar a chame da função. Nessa chamada é possivel informar valores que serão recebidos e manipulados pela funcăo (passagem de argumentos por valor. Analise o codigo a segu e determine quais os valores finais apresentados após a execução de todas as chamadas das funções SOMA( e SUBTRAI(: 0:27:55 jinclude int subtral (int a) int valor = 1; printf ("valor dentro da funç6o gubtrai: td\n", valor): a; valor - valor printf ("Saindo da função subtrai com: fd\n", valor): return (valor): int soma (int a) static int valor = 1: printf ("valor dentro da função soma: td\n", valor); valor valor + a; printf("Saindo da função soma com: $d\n", valor); return (valor); int main() ( int nro W 1: for (int 1=1: 1 <4; 1++) printf ("InChamando Soma pela ¥da vez: $d\n", i, soma (nzo Valor final de soma() é igual a 4 e valor final de subtrai() é igual a 0 (zero) B Valor final de soma() é igual a 2 e valor final de subtrai() é igual a 1 (zero). C Valor final de soma() é igual a 2 e valor final de subtrai() é igual a 0 (zero) D Valor final de soma() é igual a 3 e valor final de subtrai() é igual a 0 (zero) E Valor final de soma() é igual a 3 e valor
User badge image
Gabriel vilas boas do lago

há 2 anos

Respostas

User badge image

Ed Verified user icon

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.

Essa resposta te ajudou?

0
Dislike0

Ainda não achou a resposta?

  • Integrado com os principais modelos de IA do mercado
  • Respostas em segundos
  • IA treinada para estudantes brasileiros.
PasseIA logoEvolua sua forma de estudar

Cadastre-se ou realize login

User badge image

Ed Verified user icon

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).

Essa resposta te ajudou?

1
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina