Prévia do material em texto
Atividade 3
Iniciado: 9 mar em 11:37
Instruções do teste
Pergunta 1 0,2 pts
Importante:
Caso você esteja realizando a atividade através do aplicativo "Canvas Student", é necessário que
você clique em "FAZER O QUESTIONÁRIO", no final da página.
A solução de um problema computacional pode ter várias soluções lógicas. As linguagens de
programação atuais disponibilizam recursos suficientes para suportar os vários paradigmas da lógica
de programação. Portanto, é natural que os programadores se preocupem muito mais com os
aspectos da solução correta e às vezes em detrimento da performance e das boas práticas de
programação. Os programas devem ser corretos, ter soluções simples e com comandos adequados
aos paradigmas de lógicas utilizados na solução do problema.
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. O switch é um comando que suporta a estrutura de decisão if-else-if quando temos a possiblidade de
criar formas de soluções mais claras de codificação.
II. Para soluções de problemas que necessitam dos paradigmas de condições encadeadas (ninhos de
if), a linguagem C possibilita a utilização de um conjunto de comandos ifs encadeados. Para facilitar o
entendimento do encadeamento codificado, o programador dever codificar de modo que os níveis de
encadeamento sejam endentados, ou seja, os comandos ifs mais externos ficam posicionados mais à
esquerda, e conforme desce um nível, desloca-se o if da camada inferior em posições mais à direita do
código.
III. Existe um paradigma em lógica de programação que é uma variação da decisão simples if, a
escalada de if-else-if; porém, é uma estrutura de decisão que não pode ser implementada na linguagem
C, porque não proporciona estrutura de comando para essa finalidade.
É correto o que se afirma, apenas, em:
I, II e III.
I, apenas.
II e III, apenas.
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 1/6
Pergunta 2 0,2 pts
III, apenas.
I e II, apenas.
Leia o texto e analise a figura:
O paradigma de programação estruturada defende que todo processamento pode ser realizado pelo
uso de três tipos de estruturas: sequencial, condicional e de repetição.
Considerando o texto e imagem acima, assim como o conteúdo visto, avalie as afirmações a seguir:
I. A figura refere-se a uma estrutura de decisão, onde há uma condição cuja resposta oferece
dois caminhos: verdadeiro ou falso.
II. Nessa estrutura o bloco de operações será executado enquanto a condição for verdadeira,
ela tem como objetivo executar um laço de repetição (looping). Aqui, o teste da condição, será
sempre realizado antes de qualquer operação do bloco de mandos, e finalmente, o processo
se repete enquanto a condição for verdadeira.
III. Esta estrutura tem por objetivo tratar um laço de repetição (looping), tendo como
particularidade executar, ao menos uma vez, o bloco de comando, testando a condição após a
execução do bloco de comandos, ou seja, primeiro faz-se o bloco de comandos, e depois,
testa-se a condição de parada. Aqui, o bloco de comandos será executado enquanto a
condição for falsa.
Considerando as afirmações, é correto o que se afirma, apenas, em:
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 2/6
Pergunta 3 0,2 pts
I.
I e II.
II e III.
III.
II.
Um desenvolvedor está trabalhando em um projeto de software e decide aplicar a técnica de dividir
para conquistar, onde o programa é dividido em porções menores chamadas de módulos. Os
módulos podem ser compostos por rotinas, que são classificadas em funções e procedimentos.
Funções operam valores passados em parâmetros e devolvem um valor resultante, enquanto
procedimentos utilizam ou não argumentos e não devolvem valor resultante.
Sobre procedimentos e funções, avalie as proposições a seguir e a relação entre elas:
I. Funções e procedimentos funcionam da mesma forma.
PORQUE
II. Ambos devolvem valores de acordo com os argumentos.
Assinale a alternativa correta:
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.
As asserções I e II são proposições falsas.
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 3/6
Pergunta 4 0,2 pts
Pergunta 5 0,2 pts
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
O laço de repetição é um recurso da lógica de programação imprescindível para o controle de fluxo
de um programa. Em linguagem C, podemos utilizar três comandos que atendem perfeitamente a
esse recurso, que são os for, while e do-while. A estrutura de repetição for tem por objetivo executar
um bloco de comando, por um certo número de vezes, controlado por uma variável específica para
esse fim. Sugerido quando o número de repetições é controlado por uma variável controladora ou
quando houver a necessidade de inicialização e atualização.
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. Para determinada situação que necessita de um laço de repetição, podemos utilizar qualquer
um dos os três comados em C (for, while ou do-while), porém, do ponto de vista lógico, e até
de performance, são recomendados comandos específicos para determinados tipos de
problema.
II. O comando do-while é bastante recomendável quando se fizer necessário executar um
bloco pelo menos uma vez e após a primeira vez.
III. No comando while, se a condição for falsa na entrada do laço de repetição, o bloco não é
executado nenhuma vez, o que faz com que o laço não seja executado.
É correto o que se afirma, apenas, em:
I e II, apenas.
II e III, apenas.
III, apenas.
I, apenas.
I, II e III.
Um programador experiente recebe o seguinte desafio de seu coordenador: realizar a manutenção
em um programa desenvolvido na linguagem de programação C. Em um determinado trecho do
programa, existe um conjunto de estruturas aninhadas, o qual verifica se o conteúdo de uma
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 4/6
determinada variável numérica é igual a um determinado valor. Esse ponto específico do código está
muito confuso. O programador verificou também que, para a mesma variável, foi colocada uma
sequência, conforme demonstrado no trecho de código abaixo:
....
1 if (a == 5) {
2 x = x * 1.1;
3 }
4 if (a == 10.0) {
5 x = x * 1.2;
6 }
7 if (a == 20.0) {
8 x = x * 1.3;
9 }
10 if (a == 30.0) {
11 x = x * 1.4;
12 }
13 x = x + k;
O que motiva a manutenção nesse ponto do código é a estrutura de if analisada, que é um ponto
onde a performance do programa é prejudicada, pois a mesma variável é testada 4 vezes, mesmo
que o resultado do primeiro if já tenha sido verdadeiro.
Considerando as informações apresentadas, assinale a opção correta:
Para resolver o problema de 4 testes obrigatórios, deve-se colocar o comando return no bloco de comando
verdadeiro de cada if, com isso, o programa atenderá à condição e não fará a verificação do próximo if.
Para resolver o problema de 4 testes obrigatórios, deve-se colocar o comando goto onde deverá estar localizado
ao final do último teste if.
O programador pode alterar toda a sequência de if por uma estrutura SWITCH. Nesse sentido, as anomalias de
performance e clareza de código seriam resolvidas com o comando SWITCH.
O programador deverá alterar o programa somente por outra estrutura if-else-if, pois a linguagem C não
disponibiliza outro recurso para esse fim.
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 5/6
Salvo em 11:44
O programador deverá alterar o programa por um único comando if,compondo as 4 relações com os operadores
lógicos && e ||.
Enviar teste
A+
A
A-
09/03/25, 11:44 Teste: Atividade 3
https://famonline.instructure.com/courses/44733/quizzes/217306/take 6/6