Buscar

Quiz - Algorítmos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

 Pergunta 1 
1 em 1 pontos 
 
 
Leia com atenção o texto a seguir: 
Muitos problemas quantitativos e centrados em dados podem ser resolvidos usando o 
pensamento computacional e uma compreensão do pensamento computacional lhe dará uma 
base para resolver diversos tipos de problemas. 
Dentre as habilidades do pensamento computacional, o componente principal que permite um 
programador criar um conjunto de etapas para desenvolver um programa de computador 
responsável por resolver problemas que têm impacto social no mundo real é a(o) 
 
Resposta Selecionada: 
algoritmo. 
Respostas: 
abstração. 
 
 
algoritmo. 
 depuração. 
 decomposição. 
 avaliação. 
Comentário da 
resposta: 
Dentre as habilidades que norteiam o pensamento computacional, o 
pensamento algorítmico é a capacidade de escrever instruções em etapas para 
resolver um determinado tipo de problema. 
 
 
 Pergunta 2 
1 em 1 pontos 
 
 
Observe com atenção o fluxograma a seguir. 
 
 
 
A respeito dos componentes que fazem parte de um fluxograma, analise as afirmativas a seguir e 
assinale V para a(s) Verdadeira(s) e F para a(s) Falsa(s). 
 
I. ( ) No fluxograma da imagem, observa-se a presença de uma estrutura condicional. 
II. ( ) No fluxograma da imagem, se o pneu estiver furado, então será necessário trocá-lo. 
III. ( ) No fluxograma da imagem, independentemente se o pneu estiver furado ou não, o fim será 
alcançado. 
IV. ( ) No fluxograma da imagem, será escrito na tela as mensagens Não Trocar e 
também Trocar. 
 
Assinale a alternativa que possui a sequência correta. 
Resposta Selecionada: 
V-V-V-F. 
Respostas: 
V-F-F-V. 
 
 
V-V-V-F. 
 V-V-F-F. 
 F-F-V-V. 
 F-V-F-V. 
 
Comentário da 
resposta: 
A afirmativa I é verdadeira, pois o nó ou bloco em forma de losango é a 
representação de uma condição em um fluxograma. 
A afirmativa II é verdadeira, pois como o losango é uma condicional, se a 
condição for verdadeira (caminho da direita), então será apresentado na tela que 
se deve trocar o pneu. 
A afirmativa III é verdadeira, pois por se tratar de um algoritmo, ele possui um 
início e fim muito bem definidos, logo, independentemente se o pneu está ou não 
furado, o fim será alcançado, pois todo algoritmo é finito. 
A afirmativa IV é falsa, pois somente será apresentado na tela uma mensagem 
ou outra, dependendo da condição se for verdadeira ou falsa. 
 
 Pergunta 3 
1 em 1 pontos 
 
 
Observe com atenção o fluxograma a seguir que apresenta a troca de pneu de um carro. 
 
 
 
Em relação ao algoritmo representado no código, marque a alternativa correta. 
 
Resposta 
Selecionada: 
 
Para o caso em que temos a mesma instrução repetindo duas ou mais vezes, 
podemos utilizar o conceito de estrutura de repetição. 
Respostas: 
No código temos que, se a quantidade de parafusos for menor ou igual a 5, 
então devemos desaparafusar um parafuso. 
 
 
Para o caso em que temos a mesma instrução repetindo duas ou mais vezes, 
podemos utilizar o conceito de estrutura de repetição. 
 
Neste código, a frase agora removo a roda somente será executada se o valor 
da variável parafusosRemovidos for maior que 5. 
 
No código temos a representação de uma estrutura condicional e também de 
uma estrutura de repetição. 
 
Neste código, um parafuso apenas será removido quando a variável 
parafusosRemovidos for igual a 5. 
Comentário 
da resposta: 
O objetivo principal de uma estrutura de repetição é de iterar ou repetir um 
determinado trecho do código. No caso do fluxograma, enquanto 
parafusosRemovidos for menor que 5, ou seja, menor que a quantidade de 
parafusos, execute a instrução de desaparafusar um parafuso. Deste modo, 
enquanto parafusosRemovidos < 5 for verdadeiro, a instrução de desaparafusar 
será executada. Quando for falso, o algoritmo retoma o fluxo do algoritmo. 
 
 Pergunta 4 
1 em 1 pontos 
 
 
Leia com atenção o texto a seguir: 
O pensamento computacional requer a compreensão das capacidades dos computadores, a 
formulação de problemas a serem tratados por um computador e o projeto de algoritmos que um 
computador pode executar. O contexto e a abordagem mais eficazes para desenvolver o 
pensamento computacional é aprender ciência da computação; eles estão intrinsecamente 
conectados. 
Fonte: K12 COMPUTER SCIENCE. K12 Computer Science Framework. Disponível 
em: https://k12cs.org/wp-content/uploads/2016/09/K%E2%80%9312-Computer-Science-
Framework.pdf. Acesso em: 30 out. 2021. 
 Sobre o pensamento computacional, assinale a alternativa que apresenta uma de suas práticas. 
 
Resposta Selecionada: 
Desenvolver e usar abstrações. 
Respostas: 
Desenvolver e usar abstrações. 
 Testar algoritmos computacionais. 
 Distinguir entre o pensamento humano e o computacional. 
 Praticar os conceitos de ciência da computação como programação. 
 Resolver problemas computacionais através de programas. 
Comentário 
da resposta: 
Um dos pilares do pensamento computacional é a abstração. Praticar a abstração 
é preocupar-se com os elementos mais importantes de um problema, deixando de 
lado detalhes muito específicos. Ao fazer um bolo, por exemplo, a preocupação 
 
deve ser com a receita e se você possui ou não os ingredientes. Devemos então 
abstrair de detalhes como: se a batedeira é profissional ou doméstica, se o forno é 
elétrico ou a gás, entre outros. 
 
 Pergunta 5 
1 em 1 pontos 
 
 
Leia o texto a seguir: 
Uma variável possui papel fundamental em um código: guardar dados. Elas podem armazenar 
apenas um dado por vez, logo, se uma variável chamada nome possui o conteúdo “João”, ao 
receber o valor “Maria”, a palavra “João” é perdida. Por outro lado, temos as estruturas 
condicionais, cuja principal característica é modificar o fluxo de um código de acordo com uma 
condição e, consequentemente, modificar o conteúdo de uma variável. Veja um exemplo de 
código fonte em C# que manipula uma única variável chamada txt e possui uma condicional. 
1 string txt; 
2 Console.WriteLine(“Digite seu nome”); 
3 txt = Console.ReadLine(); 
4 
5 if(txt != “Maria”){ 
6 Console.WriteLine(txt + “seu acesso não está autorizado”); 
7 } else { 
8 Console.WriteLine(txt + “seu acesso foi autorizado”); 
9 Console.WriteLine(“bem vindo!”); 
 
10 } 
 
Marque a alternativa que explica corretamente a execução deste código: 
Resposta 
Selecionada: 
 
O valor digitado pelo usuário na linha 3 será armazenado na variável txt e 
apresentado na linha 6 ou na linha 8. 
Respostas: 
Se a variável txt receber o valor “Maria”, será apresentado na tela que o 
acesso não está autorizado (linha 6) e três pontos (linha 9). 
 
 
O valor digitado pelo usuário na linha 3 será armazenado na variável txt e 
apresentado na linha 6 ou na linha 8. 
 
A linha 6 deste código apresentará a mensagem “Digite seu nome”, pois este é 
o valor da variável txt. 
 
Uma característica do C# pode ser observada na linha 9, o uso de três pontos 
para encerrar um fluxo de código. 
 
Independente do conteúdo de txt, o conteúdo da linha 9 será apresentado pois 
ele está fora da estrutura if/else. 
Comentário da 
resposta: 
Na linha 3 o usuário entrará com um valor que, conforme solicitado, deve ser um 
nome. Se o nome for diferente de Maria, então será apresentado o valor da linha 
6, caso contrário, será apresentado o valor da linha 8. 
 
 
 Pergunta 6 
1 em 1 pontos 
 
 
Sobre algoritmos, podemos afirmar que: 
I. Cada instrução de um algoritmo deve ser executada em uma ordem específica para resolver um 
problema computacional ou não. 
II. O algoritmo é uma sequência com quantidade indeterminada de instruções com o objetivo de 
resolver um problema. 
III. Fluxograma ou diagramas de sequência são exemplos de representações de um algoritmo. 
IV. Nas embalagens de produtos diversos, o item modo de usar é um exemplo de algoritmo com 
descrição narrativa. 
V. Fluxograma ediagramas de sequência são exemplos de representações gráficas visuais de 
um algoritmo. 
 
As afirmativas verdadeiras são: 
Resposta Selecionada: 
I e IV, apenas. 
Respostas: 
III e IV, apenas. 
 II e V, apenas. 
 
 
I e IV, apenas. 
 II e III, apenas. 
 III e V, apenas. 
Comentário da 
resposta: 
A afirmativa I é verdadeira, pois um algoritmo possui uma sequência de 
instruções. Ao executá-lo, é necessário respeitar a ordem de cada uma dessas 
instruções, caso contrário, o resultado será diferente do esperado. 
A afirmativa II é falsa, pois o algoritmo é uma sequência finita de instruções. 
Logo, a quantidade de instruções é conhecida, bem como o seu fim. 
A afirmativa III é falsa, pois entre os dois modelos apresentados, o único que 
representa um algoritmo é o fluxograma. 
A afirmativa IV é verdadeira, pois produtos como xampu, creme dental e outros 
possuem uma descrição narrativa de como usar o produto, geralmente em um 
espaço chamado modo de usar. 
A afirmativa V é falsa, pois somente o fluxograma é uma representação gráfica 
de algoritmos. 
 
 
 Pergunta 7 
0 em 1 pontos 
 
 
No código a seguir, temos duas estruturas de repetição for. A externa, na linha 1, será executada 
10 vezes. Ou seja, o for irá de 1 até 10. No escopo desse for, temos uma estrutura condicional if, 
a qual também possui internamente uma estrutura de repetição for, que é executada de 1 até 5. 
1 for(int x = 1; x<10; x++) 
2 if(x % 4 != 0 && x % 2 == 0) 
3 for(int y = 1; y<5; y++) 
4 Console.WriteLine(y); 
 
 
Considerando as informações apresentadas, assinale a opção correta. 
Resposta 
Selecionada: 
 
A linha 2 será executada quando o valor de x for par e divisível por 4. 
Respostas: 
No total, a linha 4 será executada 8 vezes, apresentando a sequência 
12341234. 
 
A expressão da linha 2 só será verdadeira quando o número for par e divisível 
por 4. 
 A linha 4 será executada 10 vezes, apresentando a sequência 1234512345. 
 A linha 2 será executada quando o valor de x for par e divisível por 4. 
 
A linha 4 apresentará o valor de y na tela quando o resto da divisão de x por 4 
for diferente de zero ou quando o resto for igual 2. 
Comentário 
da resposta: 
O for externo executará 9 vezes (de 1 a 9, exceto o 10) o bloco que se inicia na 
linha 2. Como a única condição para entrar no bloco if da linha 2 é que o valor de 
x não seja divisível por 4 E o valor de x seja par (ou divisível por 2), então a linha 
4 será executada 8 vezes apresentando os valores 12341234. 
 
 
 Pergunta 8 
0 em 1 pontos 
 
 
A linguagem C#, assim como outras, permite que criemos funções para organizar o nosso código. 
Dentro destas funções, podemos adicionar estruturas de repetição, estruturas condicionais e 
também invocar outras funções nativas da linguagem. Observe com atenção o código a seguir 
escrito em C#, o qual utiliza funções. 
1 public string print(string str){ 
2 Console.WriteLine(str); 
3 } 
4 
5 public static void Main (string[] args) { 
6 Program x = new Program(); 
7 
8 string cont = “0”; 
9 
 
10 while(cont < 10){ 
11 x.print(cont); 
12 cont = Console.ReadLine(); 
13 } 
14 } 
 
Considerando as informações apresentadas, assinale a alternativa correta. 
Resposta 
Selecionada: 
 
Haverá um erro na linha 11, pois a função print está enviando um contador que 
é inteiro, porém na linha 1 recebe uma string como parâmetro. 
Respostas: 
Este código executará uma vez e apresentará uma mensagem informando que 
cont não é uma variável do tipo numérica, dando erro na linha 10. 
 
Neste código, enquanto o usuário digitar um número menor do que 10, todo o 
conteúdo interno (linhas 6 a 12) será repetido ou iterado. Ao digitar um número 
maior ou igual a 10, o loop encerra. 
 
Haverá um erro na linha 11, pois a função print está enviando um contador que 
é inteiro, porém na linha 1 recebe uma string como parâmetro. 
 
O while da linha 10, bem como todo o seu conteúdo, entrará em loop infinito, 
pois o valor de cont é zero e não existe um incremento para esta variável. 
 
O erro que ocorrerá em tempo de execução na linha 11 pode ser resolvido se 
substituirmos a função print pela função nativa do C#, WriteLine. 
Comentário 
da resposta: 
Na primeira execução, quando chega na linha 8, a variável cont é declarada do 
tipo string, logo, mesmo que receba um número, o tipo da variável é texto (string). 
Logo, quando encontra o loop do while na linha 10, estamos comparando um tipo 
texto (cont) com um numérico (10). Deste modo, ocorrerá um erro, pois não é 
possível realizar este tipo de comparação. 
 
 
 Pergunta 9 
1 em 1 pontos 
 
 
Analise com atenção o código a seguir que utiliza função com passagem de parâmetros, com três 
argumentos. 
1 public int calcular(int x, ref int y, ref int z){ 
 
2 x = x + 10; 
3 y = y + 10; 
4 z = z + 10; 
5 Console.WriteLine(x + " "+ y+ " "+ z); 
6 return y; 
7 } 
8 
9 public static void Main (string[] args) { 
10 int a = 4; 
11 int b = 3; 
12 int c = 2; 
13 
14 Program p = new Program(); 
15 p.calcular(a, ref b, ref c); 
16 
17 Console.WriteLine(a + " - "+ b + " - " + c); 
18 } 
 
Os valores impressos na instrução da linha 17 serão: 
Resposta Selecionada: 
4 - 13 - 12 
Respostas: 
4 - 13 - 12 
 4 - 3 - 2 
 14 - 13 - 12 
 14 - 3 - 2 
 
 4 - 12 - 13 
Comentário 
da resposta: 
Na função main há a invocação da função calcular passando três argumentos por 
parâmetro, sendo que o primeiro (variável a) é passado por valor, por outro lado, as 
variáveis b e c são passadas como referência. Logo, qualquer alteração nas 
variáveis y e z na função calcular, impactará no valor das variáveis b e c que estão 
na função main. Deste modo, os valores finais das variáveis a, b e c serão, 
respectivamente, 4, 13 e 12. 
 
 Pergunta 10 
1 em 1 pontos 
 
 
Durante o desenvolvimento de programas, os operadores lógicos E e OU são usados para 
relacionar expressões. O resultado de uma operação lógica será VERDADEIRO ou FALSO. Ao 
utilizar o operador E, por exemplo, o resultado será VERDADEIRO somente se estiver entre dois 
operandos também VERDADEIROS. 
Analise, então, as seguintes expressões: 
Expressão 1: FALSO OU VERDADEIRO E FALSO E VERDADEIRO. 
Expressão 2: FALSO E VERDADEIRO E FALSO OU VERDADEIRO. 
Sobre as expressões 1 e 2, é corretor dizer que 
 
Resposta 
Selecionada: 
 
o operador OU resultará VERDADEIRO quando qualquer um dos operandos 
também for verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO. 
Respostas: 
o operador OU resultará VERDADEIRO quando qualquer um dos operandos 
também for verdadeiro. Logo, o resultado da expressão 1 será VERDADEIRO. 
 
tanto a expressão 1 quanto a expressão 2 terão como saída o valor 
VERDADEIRO, afinal, em ambas as expressões temos o operador OU, que é 
chamado de operador permissivo. 
 
o operador E resultará VERDADEIRO quando qualquer um dos operandos 
também for verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO. 
 
o operador E é menos permissivo e restritivo que o operador OU, deste modo, 
em uma expressão, basta que apenas um operando seja VERDADEIRO para 
que toda a expressão se torne verdadeira. 
 
 
o operador OU resultará VERDADEIRO quando qualquer um dos operandos 
também for verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO. 
Comentário 
da resposta: 
Analisando a tabela lógica ou tabela verdade, o operador OU resultará 
VERDADEIRO sempre que estiver relacionando qualquer valor booleano com um 
valor VERDADEIRO. Em outras palavras, basta que um dos operandos seja 
 
VERDADEIRO para que o resultado seja VERDADEIRO. O operador E é mais 
restritivo, logo, para que o resultadode uma expressão lógica seja verdadeiro, 
necessariamente todos os operandos precisam também ser verdadeiros.

Continue navegando