INEP, ENADE
questão 16 de 26, número 20 na prova
Observe o código abaixo escrito na linguagem C.
1 #include <stdio.h> 2 #define TAM 10 3 int funcaol(int vetor[], int v){ 4 int i;
5 for (i = 0; i < TAM; i++){ 6 if (vetor[i] == v)
7 return i;
8 } 9 return -1;
10 } 11 int funcao2(int vetor[], int v, int i, int f){ 12 int m = (i + f) / 2;
13 if (v == vetor[m])
14 return m;
15 if (i >= f)
16 return -1;
17 if (v > vetor[m])
18 return funcao2(vetor, v, m+l, f); 19 else 20 return funcao2(vetor, v, i, m-1); 21 } 22 int main(){ 23 int vetor[TAM] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}; 24 printf(“%d - %d”, funcao1(vetor, 15), funcao2(vetor, 15, 0, TAM-1)); 25 return 0;
26 } A respeito das funções implementadas, avalie as afirmações a seguir.
- I. O resultado da impressão na linha 24 é: 7 - 7.
- II. A função funcao1, no pior caso, é uma estratégia mais rápida do que a funcao2.
- III. A função funcao2 implementa uma estratégia iterativa na concepção do algoritmo.
É correto o que se afirma em
Questões parecidas
Ver todas desta matériaAinda não há outras questões de Ciência da Computação (Bacharelado) em outras provas do acervo.