Prévia do material em texto
Revisar envio do teste: Clique aqui para iniciar o Quiz SP_GRAD_686274_2503_01 2503-ALGORITMOS E PROGRAMAÇÃO II Quiz Revisar envio do teste: Clique aqui para iniciar o Quiz Usuário HENRIQUE NUNES DA SILVA Curso 2503-ALGORITMOS E PROGRAMAÇÃO II Teste Clique aqui para iniciar o Quiz Iniciado 20/08/25 10:57 Enviado 20/08/25 11:07 Data de vencimento 23/09/25 23:59 Status Completada Resultado da tentativa 10 em 10 pontos Tempo decorrido 10 minutos Resultados exibidos Todas as respostas, Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Utilizando o algoritmo de ordenação por inserção, como ficaria ordenado o vetor a seguir logo após a primeira passada? int[] valores = {5, 3, 7, 6, 2}; Resposta Selecionada: d. { 3, 5, 7, 6, 2 } Respostas: a. { 2, 3, 7, 5, 6 } b. { 5, 3, 7, 6, 2 } c. { 2, 3, 7, 6, 5 } d. { 3, 5, 7, 6, 2 } e. { 3, 5, 6, 2, 7 } Comentário da resposta: Resposta: d) { 3, 5, 7, 6, 2 } O método de ordenação por inserção percorre a porção anterior do vetor (que já está ordenada) em relação ao elemento em análise, buscando a posição adequada para inseri-lo. Portanto, como etapa inicial, o segundo elemento será apenas verificado com o primeiro. Como o segundo é maior, eles trocam de posição, encerrando assim a primeira passada. Pergunta 2 1 em 1 pontos 1 em 1 pontos https://senacsp.blackboard.com/webapps/blackboard/execute/courseMain?course_id=_281958_1 https://senacsp.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_281958_1&content_id=_13124791_1&mode=reset Como é conhecido o erro causado em uma função recursiva quando ela foi mal projetada e sua execução não alcança um critério de parada? Resposta Selecionada: a. Loop infinito Respostas: a. Loop infinito b. Execução instável c. Crash d. Função sem fim e. Iterações repetidas Comentário da resposta: Resposta: a) Loop infinito Quando o critério de parada nunca é atingido, a função entra em um loop infinito, criando novas instâncias (chamadas a si mesmo), aumentando a pilha de execução, podendo ocupar muita memória e levar o programa à falha. Pergunta 3 Aponte o valor no índice (2,1) da seguinte matriz: int[][] valores = { {5, 3, 7, 6}, {8,9,0,1}, {4,2,3,9} }; Resposta Selecionada: c. 2 Respostas: a. 0 b. 1 c. 2 d. 3 e. 4 Comentário da resposta: O índice começa pelo valor zero, portanto, o índice (2,1) corresponde à terceira linha e segunda coluna, que está preenchida com o valor 2. Pergunta 4 Considere a função a seguir como uma solução recursiva para calcular o resto de uma divisão. Qual deve ser o retorno dentro do bloco else? public static int restoRecursivo(int a, int b) { 1 em 1 pontos 1 em 1 pontos if ( critério de parada ) { return caso base; } else { return código; } } Resposta Selecionada: b. return restoRecursivo(a - b, b) Respostas: a. return b - restoRecursivo(a, b) b. return restoRecursivo(a - b, b) c. return restoRecursivo(a, a - b) d. return a - restoRecursivo(a, b) e. return restoRecursivo(b, a) Comentário da resposta: Resposta: b) return restoRecursivo(a - b, b) O passo indutivo consiste em retirar o valor “b” de “a”, portanto, o novo dividindo deve ser “a – b” e o divisor (quantidade a ser removida de “a”) permanece “b”. O retorno é diretamente a chamada recursiva com esses parâmetros, pois, ao se encontrar o resto, ele deve ser devolvido recursivamente, sem alterações, de volta à chamada original. Pergunta 5 Como são conhecidos os métodos auxiliares, não recursivos, do MergeSort e do QuickSort, respectivamente? Resposta Selecionada: a. Intercalar e Particionar Respostas: a. Intercalar e Particionar b. Unir e Particionar c. Unir e Dividir d. Intercalar e Dividir e. Unir e Mapear 1 em 1 pontos Comentário da resposta: Resposta: a) Intercalar e Particionar O MergeSort realizar duas chamadas a si mesmo, e mais uma ao método Intercalar. O QuickSort realiza uma chamada ao método Particionar e duas a si mesmo. Pergunta 6 Qual um termo que seja sinônimo para escrita de arquivos? Resposta Selecionada: a. Salvamento Respostas: a. Salvamento b. Carga c. Alteração d. Fechamento e. Manipulação Comentário da resposta: Escrita em um arquivo é o processo de transferir os dados da aplicação para um arquivo, ou seja, salvar os dados em uma fonte externa ao programa, efetuando assim a persistência dos dados. Ainda pode ser entendido como um processo de saída de dados do programa. Pergunta 7 Qual o índice, no vetor a seguir, do primeiro elemento utilizado para divisão do vetor, utilizando o MergeSort para ordenação dos elementos? Vetor = { 8, 10, 22, 5, 7, 11 } Resposta Selecionada: d. 2 Respostas: a. 5 b. 4 c. 3 d. 2 e. 1 1 em 1 pontos 1 em 1 pontos Comentário da resposta: Resposta: d) 2 O elemento do índice 2, de valor 22, é utilizado como ponto central para criação de dois vetores, para assim dividir o problema maior e subproblemas. Pergunta 8 Suponha que exista o vetor valores com tamanho 5. Na primeira posição ele possui o valor 1. Qual o valor armazenado no índice 2 após a execução do código abaixo? for(int i=1;i