Prévia do material em texto
Parte superior do formulário 1a Questão (Cód.: 49148) Pontos: 0,0 / 1,0 Se a e b são variáveis inteiras (int) e p1 e p2 ponteiros para int, quais das seguintes expressões de atribuição está errada? b = *p2; *p2 = *p1; *p2 = &b; p1 = &a; a = (*p1 + *p2)/b+1; 2a Questão (Cód.: 31182) Pontos: 0,0 / 1,0 As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. O trecho de código abaixo descreve o algoritmo chamado: algoritmo ordena (int a[], int n){ Para i da primeira posição até a penúltima faca mínimo = i para j da posição seguinte a i até a ultima posição faça se (a[j] < a[mínimo]) mínimo =j; fim para fim para troca(a[mínimo],a[i]); fim algoritmo QuickSort Seleção MergeSort Inserção Bolha 3a Questão (Cód.: 58564) Pontos: 1,5 / 1,5 Como é a lógica do FIFO? Resposta Gabarito: O primeiro que entra na fila é o primeiro que sai. 4a Questão (Cód.: 27620) Pontos: 0,0 / 0,5 Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações: ENQUEUE(1) ENQUEUE(2) DEQUEUE() ENQUEUE(3) ENQUEUE(4) DEQUEUE() DEQUEUE() ENQUEUE(5) Ao final da sequencia, a soma dos elementos de que (Q) será? 6 5 15 0 9 5a Questão (Cód.: 27966) Pontos: 0,0 / 0,5 Qual o valor da variável a ao final da execução do trecho de programa a seguir? int main() { int a, b, *p; a=4; b = 2; p = &a; a++; *p = a + b; (*p)++; (*p) += a; cout << "\n a = " << a << endl; return(0); } 16 8 5 4 7 6a Questão (Cód.: 28140) Pontos: 0,0 / 0,5 Geralmente em algumas situações é necessário fazer a desalocação do espaço utilizado na memória. Porém, isso depende de como a reserva de uma quantidade de espaço de memória é feita, pois em alguns casos, o próprio compilador faz a desalocação. Quando o compilador não faz esta desalocação a memória foi reservada utilizando______. Declaração de vetor Declaração de matriz Alocação estática de memória Declaração de função Alocação dinâmica de memória 7a Questão (Cód.: 19660) Pontos: 0,5 / 0,5 Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está expressa na alternativa: É um modo de deleção de dados em um computador. São os nomes dados as variáveis na montagem de uma rotina. É um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados de modo eficiente. É um modo de utilização de dados nos programas de computador. É um modo de distribuição e organização de dados em uma rede de computador de modo que possam ser usados de modo eficiente. 8a Questão (Cód.: 19664) Pontos: 0,5 / 0,5 A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de: fila ponteiro array pilha loop 9a Questão (Cód.: 56256) Pontos: 0,0 / 1,5 Os agentes Leo e Lia receberam sequências de números de seus contatos. Para saberem qual o próximo passo da missão, precisam descobrir que números se repetem nas sequências recebidas por cada um. Faça uma função que receba dois vetores v e w de inteiros como parâmetros e gere um vetor z, resultante da interseção entre v e w. Protótipo da função : bool intersecao(int v[ ], int w[ ], int z [ ], int nv , int nw , int &n); onde nv: quantidade de elementos em v nw : quantidade de elementos em w n : quantidade de elementos no vetor z Note : Inicialmente n vale zero. Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção). Resposta: Gabarito: bool intersecao(int v[], int w[], int inter[], int nv , int nw , int &n) { bool achou = false; for (int i = 0; i < nv; i++) for (int j = 0; j < nw; j++) if (v[i] == w[j]) { inter[n] = v[i]; achou = true; n++; } return achou; } 10a Questão (Cód.: 19663) Pontos: 0,5 / 0,5 Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função: Por reforço e por referência. Por inferência e por valor. Por valor e por referência Por teste e por reforço. Por memória e por disco. Período de não visualização da prova: desde 03/06/2013 até 18/06/2013. Parte inferior do formulário