Prévia do material em texto
Revisar envio do teste: Clique aqui para iniciar o Quiz SP_GRAD_686274_2301_01 2301-ALGORITMOS E PROGRAMAÇÃO II Quiz REVISAR ENVIO DO TESTE: CLIQUE AQUI PARA INICIAR O QUIZ Usuário EZIKLEYTON JERONIMO DA SILVA Curso 2301-ALGORITMOS E PROGRAMAÇÃO II Teste Clique aqui para iniciar o Quiz Iniciado 07/03/23 10:22 Enviado 07/03/23 10:28 Data de vencimento 29/03/23 23:59 Status Completada Resultado da tentativa 7 em 10 pontos Tempo decorrido 6 minutos Resultados exibidos Todas as respostas, Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Resposta Selecionada: c. Respostas: a. b. c. d. e. Comentário da resposta: Utilizando o algoritmo de ordenação por seleção, como ficaria ordenado o vetor a seguir logo após a primeira passada? int[] valores = {5, 3, 7, 6, 2}; { 2, 3, 7, 6, 5 } { 2, 3, 7, 5, 6 } { 5, 3, 7, 6, 2 } { 2, 3, 7, 6, 5 } { 3, 5, 7, 6, 2 } { 3, 5, 6, 2, 7 } Resposta: c) { 2, 3, 7, 6, 5 } O método de ordenação por seleção percorre o vetor buscando o menor elemento que vá trocar de posição com Sala de Aula Tutoriais 1 em 1 pontos EZIKLEYTON JERONIMO DA SILVA 1 https://senacsp.blackboard.com/webapps/blackboard/execute/courseMain?course_id=_205067_1 https://senacsp.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_205067_1&content_id=_9195762_1&mode=reset https://www.ead.senac.br/ https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_260_1 https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_210_1 https://senacsp.blackboard.com/webapps/login/?action=logout o elemento atual em análise, nesse caso, o primeiro elemento. Portanto, identificará que após a primeira posição, o menor elemento é o 2 na última posição, trocando esse elemento com o primeiro, e avançando a análise para o segundo elemento do vetor. Pergunta 2 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: Considere a função a seguir como uma solução recursiva para calcular o resto de uma divisão. Qual deve ser o critério de parada, e o retorno desse caso base? public static int restoRecursivo(int a, int b) { if ( critério de parada ) { return caso base; } else { return código; } } a < b ; return a a < b ; return a a < b; return b b > a ; return a b > a ; return b a – b ; return a Resposta: c) b > a ; return a A função decrementa um valor de “b” de “a”, a cada recursão (oposto da multiplicação, que acrescenta). Isso é feito enquanto há um valor de pelo menos “b” em “a”, e por isso, o critério é “b > a”. Como o decréscimo ocorre em “a”, o valore final de “a”, na última recursão, é o resto da divisão. Pergunta 3 0 em 1 pontos 1 em 1 pontos Resposta Selecionada: c. Respostas: a. b. c. d. e. Comentário da resposta: Um jogo armazenou em um vetor a pontuação de todos os jogadores em uma determinada partida, com a primeira metade do vetor representando jogadores do time A e a segunda metade representando jogadores do time B. Sabendo disso, o que será salvo no arquivo, pelo código abaixo? StreamWriter sw = new StreamWriter(caminho_do_arquivo); int x = 0; int y = 0; for (int i = 0; i < vetor.Length; i++) { if (i< vetor.Length/2-1) { x += vetor[i]; y++; } } sw.WriteLine(x/y); sw.Close(); A média da pontuação do time A. A maior pontuação geral. A maior pontuação do time A. A média da pontuação do time A. A maior pontuação do time B. A média da pontuação do time B. No código da questão, é percorrida cada posição do vetor, porém somente as posições até a metade do vetor (time A) terão os respectivos valores somados na variável x, e incrementado a variável y. Ao final, será salvo no arquivo o valor da divisão de x por y, que corresponde à média da pontuação do time A. Pergunta 4 Resposta Selecionada: a. Respostas: a. b. c. d. e. Qual o tipo de dado utilizado para iniciar a escrita de um arquivo e o método utilizado para escrever em cada linha do arquivo? StreamWriter e WriteLine StreamWriter e WriteLine StreamWriter e FileWriter StreamLine e LineWriter StreamFile e WriteFile StreamLine e LineWriter 1 em 1 pontos Comentário da resposta: Primeiro, deve criar um objeto da classe StreamWriter, e utilizar seu método WriteLine, passando como argumento o conteúdo a ser escrito na linha atual. Pergunta 5 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: Observe o código abaixo. double[] notas = {5.0,6.0,8.0}; double[] notas_com_bonus = bonus(notas); E a função: double[] bonus(double[] vetor){ for(int i=0;i<vetor.Length;i++){ vetor[i] = vetor[i]*1.2; } return vetor; } Após a execução do código, qual o valor dos elementos armazenados nos vetores notas e notas_com_bonus? notas = {5.0,6.0,8.0} notas_com_bonus = {6.0,7.2,9.6} notas = {5.0,6.0,8.0} notas_com_bonus = {5.0,6.0,8.0} notas = {5.0,6.0,8.0} notas_com_bonus = {6.0,7.2,9.6} notas = {6.0,7.2,9.6} notas_com_bonus = {6.0,7.2,9.6} notas = {6.0,7.2,9.6} notas_com_bonus = {5.0,6.0,8.0} notas = {5.0,6.0,8.0} notas_com_bonus = {0.0,0.0,0.0} A função recebe o vetor e atualiza os valores de todas as posições. Como o vetor é passado por referência, os valores do vetor original (notas) também são alterados. Dessa forma, notas_com_bonus e notas apontam para a mesma estrutura, com os valores atualizados. Pergunta 6 Qual a função que representa a complexidade da busca binária? 0 em 1 pontos 1 em 1 pontos Resposta Selecionada: e. Respostas: a. b. c. d. e. Comentário da resposta: Logarítmica Reta Linear Quadrática Exponencial Logarítmica A complexidade da busca binária é O(log_2 n), representada por uma função logarítmica. Pergunta 7 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: Qual o nome do paradigma de programação que permite modularizar o código em classes, que possuem atributos e métodos, permitindo a criação de instâncias dessas classes, que possuem valores e são utilizadas pelo programa? Orientação a Objetos Orientação a Objetos Programação para Classes Orientação a Classes Programação Estruturada Programação para Objetos Resposta: a) Orientação a Objetos O nome desse paradigma é Orientação a Objetos ou Programação Orientada a Objetos (POO). Pergunta 8 Resposta Selecionada: b. Respostas: a. Qual o índice, no vetor a seguir, do primeiro pivô criado (não contando o pivô inicial, na primeira posição) utilizando o QuickSort para ordenação dos elementos? Vetor = { 8, 10, 22, 5, 7, 11 } 2 1 1 em 1 pontos 1 em 1 pontos b. c. d. e. Comentário da resposta: 2 3 4 5 Resposta: b) 2 Inicialmente, os elementos 10 e 7 trocam de valor. Em seguida, os elementos 5 e 22. Depois, esq alcançará o elemento 22 no índice 3, e dir alcançará o elemento 5 no índice 2. Com isso, o pivô passa a apontar para o índice 2, agora com o elemento 8. Pergunta 9 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: Observe o código abaixo. int[,] valores = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; for (int l = 0; l < 3; l++) for (int c = 0; c < 3; c++) if(l>=c) Console.Write(valores[l,c]+" "); O que será impresso pela execução do código? 1 2 3 4 5 7 1 2 3 4 5 7 1 4 5 7 8 9 1 2 3 5 6 9 3 5 6 7 8 9 1 2 3 4 5 6 Todas as posições da matriz são percorridas acessando cada coluna, de cada linha, começando pela primeira (acessando os valores na ordem: 1 2 3 4 5 6 7 8 9). Porém, somente são impressos os que correspondem à condição em que o índice da linha seja maior ou igual ao índice da coluna, portanto, apenas imprimindo os valores dos índices (0,0) (1,0) (1,1) (2,0) (2,1)(2,2). Pergunta 10 Aponte o valor no índice 3 do seguinte vetor: 0 em 1 pontos 1 em 1 pontos Terça-feira, 7 de Março de 2023 10h28min51s BRT Resposta Selecionada: d. Respostas: a. b. c. d. e. Comentário da resposta: int[] valores = {5, 3, 7, 6, 2}; 6 5 3 7 6 2 O índice começa pelo valor zero, portanto, o índice 3 corresponde à quarta posição no vetor, que está preenchida com o valor 6. ← OK