Buscar

Quiz- Algoritmos e programação 1

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 7 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 7 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

Revisar envio do teste: Clique aqui para iniciar o QuizSP_GRAD_686268_2302_01 2301-ALGORITMOS E PROGRAMAÇÃO I Quiz
REVISAR ENVIO DO TESTE: CLIQUE AQUI PARA INICIAR O QUIZ 
Usuário 
Curso 
Teste Clique aqui para iniciar o Quiz
Iniciado 
Enviado 
Data de vencimento 
Status Completada
Resultado da tentativa 8 em 10 pontos  
Tempo decorrido 1 hora, 50 minutos
Resultados exibidos Todas as respostas, Respostas enviadas, Respostas corretas, Comentários
Pergunta 1
Resposta Selecionada: 
Respostas:
 
Comentário da
resposta:
Sobre variáveis em programação, podemos afirmar que:
I. Uma variável pode iniciar-se com letras, com underscore ( _ ) ou com traço (-) e deve ser evitado o uso de caracteres especiais.
II. Se criarmos uma variável chamada aluno1 e outra chamada aluno2, teremos dois espaços na memória para guardar valores. 
III. Uma variável chamada nota pode armazenar, ao mesmo tempo, o nome de um aluno e sua respectiva nota em uma avaliação.
IV. Uma variável não pode ter caracteres especiais ou traços, afinal, o computador pode não compreender estes sinais.
As alternativas verdadeiras são:
II e IV, apenas.
I e III, apenas.
I e IV, apenas.
II e III, apenas.
I e II, apenas.
II e IV, apenas.
A afirmativa I é falsa, pois não podemos utilizar o sinal de traço (-) em uma variável, afinal, o computador pode ficar em
dúvida se esse traço representa um caractere separador ou um sinal de subtração, então por isso não é possível
utilizá-lo.
A afirmativa II é verdadeira, pois uma variável tem o exato propósito de armazenar um valor na memória. Logo, ao
criarmos duas variáveis, teremos dois espaços na memória reservados para o nosso programa.
A afirmativa III é falsa, pois uma variável pode armazenar apenas um único valor, logo, ou se armazena o nome do
aluno ou se armazena a nota do aluno, não sendo possível armazenar ambos os valores no mesmo espaço de
memória.
A afirmativa IV é verdadeira, pois caracteres especiais como @#$- ou qualquer outro que o valha, não podem ser
utilizados no código como parte do nome da variável. Se usado, o compilador não o reconhecerá como presente na
linguagem e, consequentemente, irá gerar um erro. Somente uma observação: alguns caracteres especiais como # e $
são usados na programação, mas não na declaração de uma variável.
Pergunta 2
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;
Sala de Aula Tutoriais
1 em 1 pontos
1 em 1 pontos
ALGORITMOS E PROGRAMAÇÃO I
https://senacsp.blackboard.com/webapps/blackboard/execute/courseMain?course_id=_211761_1
https://senacsp.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_211761_1&content_id=_9493060_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
Resposta Selecionada: 
Respostas: 
Comentário da
resposta:
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:
4 - 13 - 12
4 - 13 - 12
4 - 3 - 2
14 - 13 - 12
14 - 3 - 2
4 - 12 - 13
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 3
Resposta Selecionada: 
Respostas: 
Comentário da
resposta:
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://k1
2cs.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.
Resolver problemas computacionais através de programas.
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.
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
0 em 1 pontos
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 4
Resposta Selecionada: 
Respostas:
 
Comentário da
resposta:
Leia o trecho a seguir:
Os operadores aritméticos de soma, subtração, divisão e multiplicação podem ser utilizados nas operações com números inteiros e
números reais. Se um número inteiro for dividido por um número real, teremos um número do tipo real como resultado. Estes operadores
podem ser utilizados em uma cadeia de instruções, respeitando sempre a ordem de precedência matemática: primeiro a multiplicação,
em seguida a divisão, a soma e, por fim, a subtração.
Considerando esse contexto, avalie as seguintes asserções e a relação proposta entre elas.
I. Supondo os seguintes valores de variáveis do tipo string: A ="Bom" e B =" Dia", podemos somar A + B, obtendo C = A + B que é igual a
“Bom Dia”.
Porque:
II. Quando realizamos a soma de strings, o resultado final é a concatenação das duas strings, com comportamento semelhante ao
símbolo de &.
A respeito dessas asserções, assinale a opção correta.
A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
As asserções I e II são proposições falsas.
A asserção I é uma proposição falsa e a II é uma proposição verdadeira.
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
As asserções I e II são proposições verdadeiras e a II é uma justificativa correta da I.
A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
A proposição I é verdadeira, pois quando somamos duas strings, na realidade estamos realizando uma junção. Deste
modo, estamos juntando a palavra “Bom” com a palavra “Dia” e o resultado é a frase “Bom Dia”. A proposição II é falsa,
pois em C#, o símbolo responsável por realizar a concatenação de strings é o sinal de adição +. O e-comercial “&” não
realiza concatenação. Por ser falsa, a asserção II não justifica a asserção I.
Pergunta 5
Resposta Selecionada: 
Analise com atenção o código a seguir:
1 public static void Main (string[] args) {
2 Console.WriteLine("Digite um numero");
3 string op = Console.ReadLine();
4 
5 while(op > 0 || op < 50){
6 Console.WriteLine("Digite um número: ");
7 op = Console.ReadLine();
8 }
9 }
 
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelousuário, uma vez que temos o operador
OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
É correto o que se afirma em:
II e IV, apenas
1 em 1 pontos
1 em 1 pontos
Respostas: 
Comentário da
resposta:
II e IV, apenas
I e III, apenas.
I e II, apenas.
III e IV, apenas.
II e III, apenas.
A afirmativa I está incorreta, pois o laço de repetição não será executado pois há uma tentativa de comparar uma
string com um valor inteiro, o que irá gerar um erro. Para resolver isso, é possível converter o tipo da variável op de
string para inteiro.
A afirmativa II está correta, pois haverá um erro devido ao tipo da variável op que é string.
A afirmativa III está incorreta, pois mesmo que a variável op fosse do tipo inteiro isso não ocorreria, afinal, existe uma
condição ou, logo, independentemente do valor digitado pelo usuário, sempre este laço seria executado (considerando
op como inteiro).
A afirmativa IV está correta, pois sintaxe se refere a forma de escrita e, neste caso, o while está com sua sintaxe
correta. Existe uma expressão interna entre os parênteses com um operador lógico conectando duas operações de
comparação. Entretanto, o erro é semântico, uma vez que o tipo não é condizente com o esperado, que seria o inteiro.
Pergunta 6
Resposta Selecionada: 
Respostas: 
Comentário da
resposta:
Observe com atenção o código a seguir desenvolvido no Scratch.
Considerando esse código, o significado dos blocos e suas saídas, analise as afirmativas a seguir:
I. O componente laranja é um nó encontrado no grupo de nós chamado Eventos e será ativado quando uma tecla for pressionada.
II. Ao clicar na seta para a esquerda do teclado, no segundo bloco o gato inverterá o trajeto e, ao invés de ir para frente, irá para trás.
III. O algoritmo desenvolvido é responsável por fazer o gato virar para trás e dar 100 passos nesta direção.
IV. Ao clicar na seta para esquerda do teclado, o gato por 4 vezes, o gato fará um trajeto na tela semelhante a um quadrado no sentido
horário.
Está correto o que se afirma em:
I e IV, apenas.
I e IV, apenas.
II e IV, apenas.
II e III, apenas.
III e IV, apenas.
I e III, apenas.
A afirmativa I está correta, pois o bloco laranja é um componente encontrado no grupo de nós laranja chamado
Eventos. Neste bloco podemos selecionar qual tecla que, ao ser clicada, executará um evento (ação) no personagem.
A afirmativa II está incorreta, pois apesar da tecla indicada ser a da esquerda, o gato vai virar 90° e deslocar 100
passos para baixo. Sendo assim, ele não virá para trás, ele ficará de cara para baixo e dará os 100 passos em sentido
horário.
A afirmativa III está incorreta, pois o gato não irá para trás, ele ficará de cara para baixo e, em seguida, se deslocará
neste sentido.
A afirmativa IV está correta, pois apesar da tecla indicada no bloco ser a da esquerda, ao clicar uma vez nessa tecla, o
gato rotacionará 90°, ficando de cara para baixo, e andará 100 passos para baixo. Ao pressionar uma segunda vez, o
gato rotacionará mais 90° e, ficando de ponta cabeça, deslocará 100 passos para a esquerda. Se pressionar o botão
mais duas vezes, o gato completará o trajeto em sentido horário, formando um quadrado.
1 em 1 pontos
Pergunta 7
Resposta Selecionada: 
Respostas:
 
Comentário da
resposta:
Leia com atenção o texto a seguir.
Um algoritmo é um procedimento computacional bem definido que pega algum valor como entrada e gera algum valor como saída. Em
palavras simples, é uma sequência de etapas computacionais que converte a entrada em saída.
A respeito dos algoritmos e seus tipos de representações, analise as afirmativas a seguir e assinale V para a(s) Verdadeira(s) e F para
a(s) Falsa(s).
I. ( ) O algoritmo fornece ao designer uma descrição consistente dos requisitos e objetivos dos problemas.
II. ( ) O pseudocódigo, um método para representar algoritmos, resume o fluxo de um programa, apresentando os detalhes subjacentes.
III. ( ) A detecção de erros ou o fluxo de programa incorreto no estágio de pseudocódigo é benéfica para o desenvolvimento.
IV. ( ) Os fluxogramas melhoram a condição e a eficiência do trabalho, possuindo quatro símbolos básicos que são o início, o fim, o
processo e a decisão.
Assinale a alternativa que possui a sequência correta.
F-V-V-F.
F-V-F-V.
V-V-F-F.
F-V-V-F.
V-F-V-V.
F-F-V-V.
A afirmativa I é verdadeira, pois a escrita de um algoritmo facilita o entendimento, de toda equipe, dos requisitos de
um projeto de software.
A afirmativa II é falsa, pois o pseudocódigo é um método de representação textual de um algoritmo, usado
principalmente para destacar as principais funcionalidades, excluindo os detalhes subjacentes.
A afirmativa III é verdadeira, pois por ser um processo realizado no início do desenvolvimento de software, encontrar
um erro ou qualquer tipo de problema durante a elaboração do fluxograma é mais barato e menos prejudicial para a
empresa. Logo, o fluxograma auxilia a encontrar erros que podem causar prejuízos para a empresa.
A afirmativa IV é verdadeira, pois um fluxograma possui essencialmente quatro símbolos básicos que contêm código
escrito para programação. Eles fornecem comandos como início, processo, decisão e fim, e esses símbolos são a
parte crucial dos fluxogramas de programação.
Pergunta 8
I. Na linha 3, quando o usuário inserir um valor de ano, resultará em um erro na linha 5, pois a entrada é do tipo string e há uma
operação aritmética de módulo.
II. Se um valor é divisível por 4 e divisível por 100, logo, é divisível por 400 também, o que torna dispensável a expressão
ano%400==0.
O código a seguir realiza a validação se um dado ano é bissexto ou não. Para calcularmos se um ano é bissexto ou não, temos,
necessariamente, que considerar os seguintes fatores: o ano deve ser divisível por quatro, o resto da divisão do ano por 100 tem que ser
maior que zero ou a divisão do ano por 400 precisa ser igual a zero. Analise o código com atenção.
1 double ano;
2 
3 ano = Console.ReadLine();
4 
5 if(((ano % 4) == 0 || (ano % 100) > 0) || ((ano % 400) == 0)){
6 Console.WriteLine(“Ano bissexto”);
7 } else {
8 Console.WriteLine(“Ano não é bissexto”);
9 }
 
Considerando as informações apresentadas, avalie as afirmações a seguir:
0 em 1 pontos
1 em 1 pontos
Resposta Selecionada: 
Respostas: 
Comentário da
resposta:
III. Na linha 5, o valor da expressão será true para qualquer ano maior que 1500, uma vez que temos um operador || (ou), tornando a
linha 6 inalcançável.
IV. Na linha 5, é necessário substituir o primeiro operador maior (>) pelo operador de igualdade, caso contrário, o algoritmo pode não
reconhecer anos bissextos.
É correto o que se afirma em:
I e III, apenas.
I e III, apenas.
I e IV, apenas.
II e III, apenas.
I e II, apenas.
II e IV, apenas.
A afirmativa I é verdadeira, pois o valor de entrada é sempre do tipo string. Logo, é necessário converter o valor de
entrada do input para o tipo double, de modo a evitar o erro.
A afirmativa II está incorreta, pois para um ano ser bissexto, entre outros critérios, o resto da divisão deste ano por
100 deve ser maior que 0. A afirmativa diz que deve ser igual a zero, ou seja, deve ser divisível por 100, o que está
errado. Em outras palavras, um número não pode ser divisível por 100.
A afirmativa III é verdadeira, pois como o código está com três expressões ligadas por um operador || (ou), basta que
uma delas seja verdadeira para que toda a expressão seja verdadeira também. Logo, sempre será executada a linha
4, tornando a linha 6 inacessível
A afirmativa IV está incorreta, pois para um ano ser bissexto, ele não pode ser divisível por 100 e deve ser divisível
por 4. Ou então,deve ser divisível por 400.
Pergunta 9
Resposta
Selecionada:
 
Respostas:
 
Comentário da
resposta:
Observe com atenção o pseudocódigo a seguir:
 
início
 se temperatura == “40”
 escreva(“ligar ar-condicionado”)
 escreva(“fechar as janelas”)
          senão
 escreva(“ligar ventilador”)
 escreva(“abrir as janelas”)
 �m-se
�m 
 
Sobre algoritmos, assinale a alternativa correta.
O pseudocódigo é utilizado para acelerar o ciclo de desenvolvimento de um código.
O pseudocódigo é uma representação formal de um código real, porém em português.
O pseudocódigo possui uma estrutura pré-definida, ou seja, específica, e é um intermediário entre o português e
uma linguagem de programação.
O pseudocódigo é usado em automação residencial, como no caso do código apresentado para ligar o ventilador
ou o ar-condicionado.
O pseudocódigo é utilizado para acelerar o ciclo de desenvolvimento de um código.
O pseudocódigo é usado para comunicar ideias, assim como as linguagens de programação, porém em
português.
O pseudocódigo é uma escrita intermediária entre a linguagem falada ou o algoritmo narrativo e o código de
computador. Logo, é uma boa opção escrevê-lo a fim de ganhar tempo e diminuir erros relacionados ao
desenvolvimento.
1 em 1 pontos
Sexta-feira, 13 de Outubro de 2023 17h47min06s BRT
Pergunta 10
Resposta Selecionada: 
Respostas: 
Comentário da
resposta:
As estruturas de decisão, ou estruturas condicionais, são utilizadas nos códigos para dividir um fluxo de processos em dois ou fluxos.
Todo algoritmo que precisa de tomada de decisão necessita utilizar uma estrutura de controle como esta. Veja um exemplo de código a
seguir:
1 int a = 4;
2 int b = 5;
3 
4 if(a>1) {
5 if(b>1) {
6 Console.WriteLine(“Valor de a ” + a + “ valor de b “ + b);
7 }
8 }
 
De posse dessas informações e do conteúdo estudado sobre estruturas condicionais, analise as asserções a seguir e a relação proposta
entre elas.
I. No caso de usar IFs aninhados como no código, podemos substituir os dois IFs por uma única instrução com o operador lógico E (&&),
ficando assim: if(a>1 && b>1):
Porque
II. Para mostrar na tela o conteúdo da linha 6, a instrução da linha 4 precisa ser verdadeira e a instrução da linha 5 também precisa ser
verdadeira.
A seguir, assinale a alternativa correta:
As asserções I e II são proposições verdadeiras e a II é uma justificativa correta da I.
As asserções I e II são proposições verdadeiras e a II é uma justificativa correta da I.
A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
A asserção I é uma proposição falsa e a II é uma proposição verdadeira.
As asserções I e II são proposições falsas.
A proposição I está correta, pois podemos utilizar o conceito de IFs aninhados como no código, ou utilizar, nesse
código, uma comparação lógica com o operador E (&&).
A proposição II está correta, pois a única condição para mostrar o conteúdo da linha 6 é a linha 4 e a linha 5 serem
verdadeiras juntas. A proposição II é uma justificativa da I pois, se ambas as decisões, tanto da linha 4 quanto da linha
5, forem verdadeiras, será apresentado o valor da linha 6. Note que temos um se ambas as decisões, ou seja, é
necessário que uma e outra sejam verdadeiras, logo, o operador E (&&) representa o IF aninhado.
← OK
1 em 1 pontos

Continue navegando