Informática, perguntado por alanbassguitarp9tnm5, 8 meses atrás

Uma função é denominada recursiva quando ela é chamada novamente dentro de seu corpo.
Implementações recursivas tendem a ser menos eficientes, porém facilitam a codificação e seu entendimento.
CELES, W.; CERQUEIRA, R.; RANGEL, J. L. Introdução a estrutura de dados. Rio de Janeiro, 2004 (com adaptações).
Considere a função recursiva f(), a qual foi escrita em linguagem C na imagem
Suponha que a função f() é acionada com os seguintes parâmetros de entrada:
f({2,-4,7,0,-1,4},6);
Nesse caso, o valor de retorno da função f() será:

a) 8

b) 10

c) 13

d) 15

e) 18​

Anexos:

Soluções para a tarefa

Respondido por mimyasmim93
25

Resposta:

LETRA C) 13

Explicação:

#include <stdio.h>

int main() {

   int v[]= {2,-4,7,0,-1,4};

   int x = f(v, 6);

   printf("%d",x);

   return (0);

}

   int f(int v[], int n){

       if(n == 0)

           return 0;

       else{

           int s;

           s = f(v, n-1);

           if (v[n-1] > 0) s = s  + v [n-1];

               return s;

       }

}


GabeWhite250: A função basicamente soma os números do array de forma Iterativa...
Dado isso, fazendo o teste de mesa

execução s= r+4= retorna=8
1ª Recursão s= r-1 retorna=4
2ª Recursão s= r+0 retorna=5
3ª Recursão s= r+7 retorna=5
4ª Recursão s= r-4 retorna=-2
5ª Recursão s= r+2 retorna=2
6ª Recursão retorna=0

Logo a Resposta certa é
a) 8
Respondido por mayaravieiraj
0

O valor de retorno da função f() será: C) 13.

Aspectos importantes para a resolução de valor de retorno de uma função

  • primeiramente, o programa foi desenvolvido em linguagem C que é compilada de propósito geral, com características imperativa e padronizada;

#include <stdio.h>

int main()

  int v[]= {2,-4,7,0,-1,4};

 int x = f(v, 6);

  printf("%d",x);

  return (0);

}

  int f(int v[], int n){

      if(n == 0)

          return 0;

      else{

          int s;

          s = f(v, n-1);

          if (v[n-1] > 0) s = s  + v [n-1];

              return s;

por meio do uso da linguagem C, é possível criar:

  • sistemas operacionais;
  • aplicativos variados;
  • controladores de dispositivos;
  • programação de microcontroladores

leia mais sobre linguagem C:

https://brainly.com.br/tarefa/51234555

#SPJ2

Anexos:
Perguntas interessantes