Buscar

Atividade Objetiva 3 - Algoritmos e Lógica de Programação

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

03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 1/10
Atividade Objetiva 3 Resultados para
PATRICK IATISCHAS
Pontuação desta tentativa: 0,8 de 1
Enviado 21 mar em 16:25
Esta tentativa levou 3 minutos.
0,2 / 0,2 ptsPergunta 1
Leia o texto a seguir:
 
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.
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 2/10
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 em:
 I, II e III. Correto!Correto!
Alternativa A
Alternativa está correta. A afirmativa I está correta, pois a
escolha da estrutura cabe ao programador. Não há
nenhuma limitação técnica nos comandos for, while e do-
while. O comando for é sugerido quando o número de
repetições é controlado por uma variável. O comando
while é sugerido quando não há necessidade de inicializar
ou atualizar variáveis contadoras. O comando do-while é
sugerido quando for necessário executar um bloco pelo
menos uma vez. A afirmativa II está correta porque a
estrutura do comando do-while força uma primeira
execução do bloco de comandos. A afirmativa III está
correta, já que a estrutura do comando while faz
primeiramente a verificação da condição e entra no bloco
somente se for verdadeira. Portanto, a alternativa correta é
I, II e III.
 II e III, apenas. 
 I, apenas. 
 III, apenas. 
 I e II, apenas. 
0,2 / 0,2 ptsPergunta 2
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 3/10
Leia o texto a seguir:
 
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 em:
 I e II, apenas. Correto!Correto!
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 4/10
Alternativa A
Alternativa está correta. A afirmativa I está correta porque
o switch é um comando interno de solução múltipla e que
permite testar sucessivamente o valor de uma expressão,
a partir de uma lista, o que está plenamente de acordo
com a estrutura de decisão if-else-if. Além disso, traz o
benefício da clareza na codificação da resolução de
problemas. A afirmativa II está correta, pois a linguagem C
proporciona uma estrutura para soluções de problemas
que necessitam dos paradigmas de condições
encadeadas. Para isso, utilizamos estrutura de ninhos de
ifs que proporcionam 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. A afirmativa
III está incorreta, por afirmar que a linguagem C não
proporciona a implementação de estrutura if-else-if. Para
isto pode ser utilizada a seguinte estrutura: “if (expressão)
bloco de comando; else if (expressão) bloco de comando;
...else(bloco de comando)”. Portanto, a alternativa correta
é I e II, apenas.
 I, apenas. 
 I, II e III. 
 III, apenas. 
 II e III, apenas. 
0,2 / 0,2 ptsPergunta 3
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 5/10
Leia o texto a seguir:
 
Um programador de computador, produtor de soluções de
sistemas para um órgão governamental, necessita dar uma
solução para um problema proposto. O programa deverá fazer
uma série de ações relativas à pessoa física, tendo como base
o Cadastro de Pessoa Física (CPF) do cidadão. O programa
recebe o CPF, digitado pelo teclado. A função main() chama
várias outras funções para completar o processamento deste
programa hipotético. O programador codifica todas as funções
do programa, inclusive a função que faz a verificação da
validade do CPF.
O analista que especificou o programa pediu que o
programador codificasse as instruções que encerram o
programa, caso o CPF seja inválido, ou seja, faça uma parada
brusca, com um código de cancelamento 999; caso o CPF seja
válido, o programa deve continuar normalmente o
processamento do programa.
Qual comando o programador deverá utilizar, dentro da função
de validação de CPF, para que o programa termine de forma
anormal com o código de erro solicitado pela especificação do
analista?
 
 Return. 
 Continue. 
 Exit (). Correto!Correto!
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 6/10
Alternativa A
Alternativa está correta, pois o comando exit() encerra a
execução do programa imediatamente. Esse comando
retorna um código de retorno ao sistema, e esse código é
atribuído pelo programador, que neste caso o analista
solicitou que fosse 999. Portanto, o comando a ser
codificado é exit(999).
 Goto. 
 Break. 
0,2 / 0,2 ptsPergunta 4
Leia o texto a seguir:
 
Um programador experiente recebe o seguinte desafio de seu
coordenador: realizar a manutenção em um programadesenvolvido na linguagem de programação C. Em um
determinado trecho do programa, existe uma função com um
conjunto de if-else-if aninhados, o qual verifica se o conteúdo
de uma 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 de if, conforme
demonstrado no trecho de código abaixo:
 ....
 1 if (a == 5) {
 2 x = x * 1.1;
 3 }
 4 if (a == 10.0) {
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 7/10
 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.
 
O programador deverá alterar o programa por um único
comando if, compondo as 4 relações com os operadores
lógicos && e ||.
 
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.
 
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.
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 8/10
 
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.
 
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.
Correto!Correto!
Alternativa A
Alternativa está correta, pois o comando SWITCH permite
ao programador fazer o teste sucessivo do valor de uma
variável, a partir de uma lista. O conteúdo da variável é
comparado e, caso seja verdadeiro, o comando é
executado; a utilização do comando break leva o
programa para o fim da estrutura, não sendo necessário
testar todos os quatros valores. Esta é uma solução
alternativa e elegante ao conjunto de comandos ifs do
problema proposto.
0 / 0,2 ptsPergunta 5
Leia o texto a seguir:
 
A linguagem de programa C possui um conjunto de testes
condicionais que determinam o curso da ação. Uma expressão
condicional chega a um valor verdadeiro ou falso. Isso permite
que uma ampla gama de rotinas seja codificada de forma
extremamente eficiente. O C suporta dois tipos de comando de
seleção: os comandos if e switch. Além disso, o operador ?
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 9/10
(símbolo para o operador ternário) é uma alternativa ao if em
certas circunstâncias.
(Fonte: SCHILDT, H. C Completo e Total. São Paulo: Makron
Books, 2006. p.66).
Considerando esse contexto, avalie as seguintes asserções e
a relação proposta entre elas.
 
I. Podemos utilizar o operador ? para substituir os comandos if-
then-else na forma geral:
 if (condição) expressão;
 else expressão.
 
PORQUE
 
II. O operador ? possibilita o teste lógico de três condições em
linha.
 
A respeito dessas asserções, assinale a opção correta:
 As asserções I e II são ambas proposições falsas. 
 
As asserções I e II são proposições verdadeiras, e a asserção
II é uma justificativa da I.
 
A asserção I é uma proposição verdadeira, e a asserção II é
uma proposição falsa.
esposta corretaesposta correta
 
A asserção I é uma proposição falsa, e a asserção II é uma
proposição verdadeira.
03/05/2021 PATRICK IATISCHAS, histórico de teste: Atividade Objetiva 3
https://famonline.instructure.com/courses/15461/quizzes/56051/history?version=1 10/10
 
As asserções I e II são proposições verdadeiras, mas a
asserção II não é uma justificativa da I.
ocê respondeuocê respondeu
Alternativa B
Alternativa está incorreta. A asserção I é verdadeira
porque o operador ? substitui plenamente o comando if-
then-else, por possuir uma estrutura compatível com a
estrutura if-then-else. Sua forma é:
 
 Exp1 ? exp2 : exp3
 
Em que exp1, exp2 e epx3 são expressões: exp1 é
avaliada, se for verdadeira, então exp2 retorna o valor da
expressão, caso contrário, exp3 retorna o valor da
expressão. A asserção II é falsa porque a estrutura do
operador é em linha, proporcionando somente um teste
lógico. Ele é chamado de ternário porque requer 3
operandos: exp1; exp2 e exp3.
Pontuação do teste: 0,8 de 1

Continue navegando