Logo Passei Direto
Buscar

Quiz Algoritmos e Programação II

User badge image
Estudante

em

Ferramentas de estudo

Questões resolvidas

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? a. StreamWriter e WriteLine b. StreamWriter e FileWriter c. StreamLine e LineWriter d. StreamFile e WriteFile e. StreamLine e LineWriter

Qual o tipo de dado utilizado para iniciar a leitura de um arquivo e o método utilizado para ler cada linha do arquivo? a. StreamLine e LineReader b. StreamReader e ReadLine c. StreamFile e ReadFile d. StreamLine e LineReader e. StreamReader e FileReader

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

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? a. StreamWriter e WriteLine b. StreamWriter e FileWriter c. StreamLine e LineWriter d. StreamFile e WriteFile e. StreamLine e LineWriter

Qual o tipo de dado utilizado para iniciar a leitura de um arquivo e o método utilizado para ler cada linha do arquivo? a. StreamLine e LineReader b. StreamReader e ReadLine c. StreamFile e ReadFile d. StreamLine e LineReader e. StreamReader e FileReader

Prévia do material em texto

• 
Pergunta 1 
1 em 1 pontos 
 
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) 
 { 
 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 2 
1 em 1 pontos 
 
Quantos passos são executados pela busca linear e pela busca binária, respectivamente, até 
encontrar o valor 98 no vetor abaixo? 
Vetor = { 5, 10, 12, 38, 45, 61, 65, 69, 81, 89, 98, 100 } 
 
Resposta 
Selecionada: 
e. 
11 e 3 
Respostas: a. 
3 e 11 
 
b. 
4 e 11 
 
c. 
11 e 11 
 
d. 
11 e 4 
 
e. 
11 e 3 
Comentário da 
resposta: 
A busca linear encontra o valor 98 na 11ª posição, necessitando, portanto, de 11 
passos. A busca binária primeiro verifica o elemento central de valor 61 na posição 6, 
depois verifica o elemento 81 na posição 9, e por fim verifica o elemento 98 na 
posição 11. 
 
 
• Pergunta 3 
1 em 1 pontos 
 
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? 
Resposta 
Selecionada: 
a. 
StreamWriter e WriteLine 
Respostas: a. 
StreamWriter e WriteLine 
 
b. 
StreamWriter e FileWriter 
 
 
c. 
StreamLine e LineWriter 
 
d. 
StreamFile e WriteFile 
 
e. 
StreamLine e LineWriter 
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 4 
1 em 1 pontos 
 
Qual o tipo de dado utilizado para iniciar a leitura de um arquivo e o método utilizado para ler cada 
linha do arquivo? 
Resposta 
Selecionada: 
b. 
StreamReader e ReadLine 
Respostas: a. 
StreamLine e LineReader 
 
b. 
StreamReader e ReadLine 
 
c. 
StreamFile e ReadFile 
 
d. 
StreamLine e LineReader 
 
e. 
StreamReader e FileReader 
Comentário da 
resposta: 
Primeiro, deve criar um objeto da classe StreamReader e utilizar seu método 
ReadLine para ler a linha atual. 
 
 
• Pergunta 5 
1 em 1 pontos 
 
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; 
 } 
 } 
Resposta 
Selecionada: 
c. 
b > a ; return a 
Respostas: a. 
(a) a - b ; return b 
 
b. 
a a ; return a 
 
d. 
b > a ; return b 
 
e. 
a – b ; return a 
Comentário da 
resposta: 
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 6 
1 em 1 pontos 
 
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 
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 7 
1 em 1 pontos 
 
Aponte o valor no índice 3 do seguinte vetor: 
int[] valores = {5, 3, 7, 6, 2}; 
 
Resposta 
Selecionada: 
d. 
6 
Respostas: a. 
5 
 
b. 
3 
 
c. 
7 
 
d. 
6 
 
e. 
2 
 
Comentário da 
resposta: 
O índice começa pelo valor zero, portanto, o índice 3 corresponde à quarta 
posição no vetor, que está preenchida com o valor 6. 
 
• Pergunta 8 
1 em 1 pontos 
 
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 9 
1 em 1 pontos 
 
Observe a seguinte matriz: 
int[][] valores = { {0,3,5},{6,0,4},{7,8,0} }; 
É necessário somar os valores de uma linha, onde não sejam zero, e armazenar o resultado na 
posição dessa linha onde esteja o valor zero (preenchendo assim a diagonal principal). Quais seriam 
as instruções que resolveriam esse problema? 
 
Resposta 
Selecionada: 
b. 
valores[0,0] = valores[0,1] + valores [0,2]; 
valores[1,1] = valores[1,0] + valores [1,2]; 
valores[2,2] = valores[2,0] + valores [2,1]; 
 
Respostas: a. 
valores[0,0] = valores[1,0] + valores [2,0]; 
valores[1,1] = valores[0,1] + valores [2,1]; 
valores[2,2] = valores[0,2] + valores [1,2]; 
 
b. 
valores[0,0] = valores[0,1] + valores [0,2]; 
valores[1,1] = valores[1,0] + valores [1,2]; 
valores[2,2] = valores[2,0] + valores [2,1]; 
 
c. 
valores[1,1] = valores[2,1] + valores [3,1]; 
valores[2,2] = valores[1,2] + valores [3,2]; 
valores[3,3] = valores[1,3] + valores [2,3]; 
 
d. 
valores[1,1] = valores[1,2] + valores [1,3]; 
valores[2,2] = valores[2,1] + valores [2,3]; 
valores[3,3] = valores[3,1] + valores [3,2]; 
 
e. 
valores[1,1] = valores[1,0] + valores [1,2]; 
valores[2,2] = valores[2,0] + valores [2,1]; 
valores[3,3] = valores[3,0] + valores [3,1]; 
Comentário da 
resposta: 
O índice (0,0) (valor zero) recebe a soma do índice (0,1) com o índice (0,2). O índice 
(1,1) (valor zero) recebe a soma do índice (1,0) com o índice (1,2). O índice (2,2) 
(valor zero) recebe a soma do índice (2,0) com o índice (2,1). 
 
• Pergunta 10 
1 em 1 pontos 
 
Conforme novas chamadas recursivas são executadas, cada uma dessas instâncias é inserida em 
uma estrutura que controla e mantém a ordem de execução de cada chamada. Essa estrutura é 
conhecida por: 
 
Resposta 
Selecionada: 
b. 
Pilha de execução 
Respostas: a. 
Fila de execução 
 
b. 
Pilha de execução 
 c. 
 
Vetor de execução 
 
d. 
Matriz de execução 
 
e. 
Chamada de execução 
Comentário da 
resposta: 
Resposta: b) Pilha de execução 
A estrutura referida no enunciado é a pilha de execução. A chamada original fica na 
base da pilha, e cada nova chamada é empilhada acima desta. Quando se alcança o 
critério de parada, a última chamada no topo da pilha é encerrada e, 
sequencialmente, todas abaixo são encerradas até finalizar a chamada original. 
 
Sábado, 25 de Outubro de 2025 20h47min19s BRT

Mais conteúdos dessa disciplina