Buscar

LOGICA PARA REDES DE COMPUTADORES

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

Curso
	GRA0499 LÓGICA PARA REDES DE COMPUTADORES GR1958211 - 202110.ead-15147.01
	Teste
	ATIVIDADE 2 (A2)
	Iniciado
	17/03/21 23:21
	Enviado
	17/03/21 23:49
	Status
	Completada
	Resultado da tentativa
	3 em 10 pontos  
	Tempo decorrido
	27 minutos
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
0 em 1 pontos
	
	
	
	Os algoritmos são de extrema importância em todas as fases de desenvolvimento de um software, visto que é o primeiro documento visual e mostra do que se trata o sistema.
 
“Para cada estímulo e resposta, criam-se algoritmos para efetuar os processamentos necessários. Projetos de algoritmo podem precisar ser desenvolvidos relativamente cedo no processo de projeto para dar uma indicação da quantidade de processamento e tempo necessários para concluir o processamento. Isto é especialmente importante para tarefas computacionalmente intensivas, como processamento de sinais”.
 
SOMMERVILLE, I. Engenharia de Software. São Paulo: Pearson Prentice Hall, 2011. p. 379.
 
A partir do trecho apresentado acima e do conteúdo sobre desenvolvimento de algoritmo, considere as seguintes afirmações relativas ao processo de elaboração de um algoritmo.
 
     I.            É necessário criar um diagrama de blocos como forma de visualização das ações.
    II.            No processo de desenvolvimento de um algoritmo as saídas devem ser proporcionais às entradas.
    III.           Um dos pontos mais importantes no processo de desenvolvimento de um algoritmo é definir as transformações.
    IV.            Um algoritmo é uma lógica de sequência de raciocínios ou operações que determina a solução de problemas específicos.
 
Assinale a alternativa que mostra o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
II, III e IV.
	Resposta Correta:
	 
I, III e IV.
	
	
	
· Pergunta 2
0 em 1 pontos
	
	
	
	Leia o texto a seguir.
“Utilizamos os operadores relacionais para realizar comparações entre dois valores de mesmo tipo primitivo. Tais valores são representados por constantes, variáveis ou expressões aritméticas. Os operadores relacionais são comuns para construirmos equações. O resultado obtido de uma relação é sempre um valor lógico. Por exemplo, analisando a relação numérica A + B = C, o resultado será sempre verdade ou falsidade à medida que o valor da expressão aritmética A + B seja igual ou diferente do conteúdo da variável C, respectivamente”.
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Prentice Hall, 2005. p. 21.
 
Portanto, os operadores relacionais são de importância fundamental na construção de algoritmos e códigos de programação. Nesse sentido, assinale com V, as afirmações verdadeiras e com F, as falsas.
 
(_) Operador diferente: x != y
(_) Maior ou igual: x < y
(_) Igual: x >= y
(_) Menor ou igual: x <= y
 
Agora, assinale a alternativa que apresenta a sequência correta de respostas.
	
	
	
	
		Resposta Selecionada:
	 
F, V, F, V.
	Resposta Correta:
	 
V, F, F, V.
	
	
	
· Pergunta 3
0 em 1 pontos
	
	
	
	“Os algoritmos são constituídos por uma sequência finita de instruções bem definidas realizadas sistematicamente. Eles são empregados comumente no âmbito da saúde; são instrumentos simples, diretos e de fácil acesso que conferem uma visão completa do processo clínico, além de consistir de uma ferramenta indispensável na padronização de técnicas e no gerenciamento da qualidade, e ser um importante meio de organização de processos, servindo de guia para a tomada de decisões”.
 
CUNHA, D. R.; SALOME, G. M.; JÚNIOR, M. R.; MENDES, B. FERREIRA, L. M. Construção e validação de um algoritmo para aplicação de laser no tratamento de ferida. Rev. Latino-Am. Enfermagem, n. 25, e2955. 2017. p. 2.
 
Considerando os fundamentos de algoritmos, a apresentação em blocos se refere a qual tipo de algoritmo?
	
	
	
	
		Resposta Selecionada:
	 
Portugol.
	Resposta Correta:
	 
Fluxograma.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	Leia o texto abaixo : 
“No entanto, algumas propriedades da aritmética, como a associativa, comutativa, etc., podem ser demonstradas por um método dedutivo chamado de raciocínio por recorrência, muitas vezes também denominado indução matemática ou indução finita ou ainda indução completa.
Foi introduzido na teoria dos números pelo matemático italiano Giuseppe Peano, e desde então vem sendo vastamente aplicado na matemática e, em particular, na teoria dos conjuntos.”.
 
FONSECA F. C. História da Computação: o caminho do pensamento e da tecnologia. Porto Alegre: EDIPUCRS, 2007. p. 125.
 
Portanto, considerando a importância da matemática e das expressões aritméticas na elaboração de algoritmos e código de programa, analise as duas proposições a seguir e a relação entre elas.
 
        I.            As expressões aritméticas retornam um valor real ou inteiro.
 
PORQUE
 
     II.            Nas expressões aritméticas existem regras a serem seguidas.
 
Agora, assinale a alternativa correta.
	
	
	
	
		Resposta Selecionada:
	 
As proposições I e II são verdadeiras, mas a II não é justificativa da I.
	Resposta Correta:
	 
As proposições I e II são verdadeiras, mas a II não é justificativa da I.
	Comentário da resposta:
	Resposta correta. A resposta está correta. As expressões aritméticas sempre retornam um valor real e inteiro, como também são necessárias regras, mas não justifica a proposição I.
	
	
	
· Pergunta 5
0 em 1 pontos
	
	
	
	“Estrutura de seleção, ou expressão condicional ou ainda construção condicional, é uma estrutura de desvio do fluxo de controle presente em linguagens de programação que realiza diferentes computações ou ações dependendo se a seleção (ou condição) é verdadeira ou falsa, em que a expressão é processada e transformada em um valor verdadeiro ou falso.
“Uma estrutura de seleção permite a escolha de um grupo de ações (bloco) a ser executado quando determinadas condições, representadas por expressões lógicas ou relacionais são ou não satisfeitas”.
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Prentice Hall, 2005. p. 33.
A partir dos estudos sobre estrutura de seleção, associe cada tipo de estrutura de seleção com a sua respectiva sintaxe.
 
I. Estrutura sequencial
II. Seleção simples
III. Seleção composta
IV. Seleção homogênea
V. Seleção heterogênea
 
(_) se(), então <...>, senão <...>, fimse();
(_) se(), então <...>, fimse();
(_) Inicio, //declaração de variáveis, //comandos.....Fim;
(_) se(), então <...>, senão <...>, se(), for() <...>, fimse();
(_) se(), então <...>, senão <...>, se(), então <...>, senão <...>, fimse();
 
Agora, assinale a alternativa que apresenta a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
IV, V, I, III, I.
 
 
 
 
	Resposta Correta:
	 
III, II, I, V, IV.
	
	
	
· Pergunta 6
0 em 1 pontos
	
	
	
	Leia o texto a seguir.
“Quando um conjunto de valores discretos precisa ser testado e ações diferentes são associadas a esses valores, estamos diante de uma seleção encadeada homogênea do tipo se-senão-então. Como essa situação é bastante frequente na construção de algoritmo que depende de alternativas, utilizaremos uma estrutura específica para estes casos, a seleção de múltipla escolha”.
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Prentice Hall, 2005.  p. 43.
 
Portanto, a lógica de desenvolvimento de algoritmos engloba diversas situações que precisam ser resolvidas para se alcançar o resultado esperado.
A partir das asserções extraídas do trecho acima, considere as seguintes afirmações.
 
  I.             Na escolha múltipla, o número de escolhas é limitado.
  II.            Existe uma situação de escolha não satisfeita.
  III.           O retorno da escolha é um valor lógico de verdadeiro ou falso.
  IV.            A seleção composta representa a seleção encadeada homogênea. 
 
Assinale a alternativa que mostra o que é correto afirmar.
	
	
	
	
		RespostaSelecionada:
	 
II, III e IV.
	Resposta Correta:
	 
II, apenas.
	
	
	
· Pergunta 7
0 em 1 pontos
	
	
	
	“Hoje em dia a noção e domínio dos algoritmos tornou-se absolutamente essencial, pois qualquer programa de computador que "funciona", isto é, dá os resultados esperados, deve ser provavelmente uma descrição de um algoritmo. [...] Mais, se se deseja elaborar um programa para um computador, a maneira correta de fazê-lo seria inicialmente procurar os métodos mais adequados à solução do problema em questão, especificar essa solução como um algoritmo e, depois disso, formulá-lo em alguma linguagem de programação para poder introduzi-lo no computador”.
 
SETZER, V. W. CARVALHEIRO, F. H. Algoritmos e sua análise – uma introdução didática. Caderno da Revista do Professor de Matemática, vol. 4, n. 1, 1993. p. 1.
 
Portanto, é possível perceber a importância em se ter conhecimentos sólidos em algoritmo para a implantação de programas. Neste sentido, a construção de algoritmo segue passos pré-determinados. Sendo assim, ordene corretamente as etapas de elaboração de um algoritmo.
 
I.  Identificar as saídas.
II. Detectar as entradas de dados.
III. Analisar o problema.
IV. Definir o processamento.
V.   Elaborar o diagrama.
 
Agora, assinale a alternativa que apresenta a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
II, III, IV, I, V.
	Resposta Correta:
	 
III, II, IV, I, V.
	
	
	
· Pergunta 8
1 em 1 pontos
	
	
	
	“Nos inícios da década de 1960, fruto do trabalho de americanos e europeus, surgiu uma linguagem projetada para representar algoritmos ao invés de se escrever programas simplesmente, o Algol-60. Ela implementava o conceito de estrutura de blocos, onde variáveis, procedimentos, etc., poderiam ser declarados onde quer que o programa os necessitasse. Algol-60 influenciou profundamente muitas linguagens que vieram depois e evoluiu para o Algol-68”.
 
FONSECA F. C. História da Computação: o caminho do pensamento e da tecnologia. Porto Alegre: EDIPUCRS, 2007. p. 125.
 
Considerando as informações sobre elaboração de variáveis analise as seguintes afirmativas.
 
I. A primeira letra da variável deve ser um caractere alfabético.
II. Usar preferencialmente palavras reservadas nas variáveis.
III. Na declaração da variável é possível conter números.
IV. Toda as linguagens permitem declarar variáveis case sensitive.
 
Agora, assinale a alternativa que apresenta a sequência correta de respostas.
	
	
	
	
		Resposta Selecionada:
	 
V, F, V, F.
	Resposta Correta:
	 
V, F, V, F.
	Comentário da resposta:
	Resposta correta. A resposta está correta. Forem associadas corretamente as regras de elaboração de variáveis. É fundamental seguir as regras para que o código se mantenha bem organizado, claro para leitura e esteja livre de erros.
	
	
	
· Pergunta 9
0 em 1 pontos
	
	
	
	Leia o texto a seguir.
“Para que esse conjunto de ações se torne viável, deve existir uma perfeita relação lógica intrínseca ao modo pela qual essas ações são executadas, ao modo pelo qual é regido o fluxo de execução do algoritmo. Por meio das estruturas básicas de controle do fluxo de execução – sequenciação, seleção, repetição – e da combinação delas, poderemos criar algoritmos para solucionar problemas”.
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Prentice Hall, 2005. p. 30.
 
Portanto, toda a lógica de desenvolvimento de algoritmos se baseia em um fluxo rígido de comandos de seleção, repetição e sequência.
 
A partir das asserções extraídas do trecho acima e dos fundamentos estudados sobre estrutura de seleção, considere as seguintes afirmações.
 
   I.            Uma estrutura de seleção permite a escolha de um grupo de ações.
  II.            Ao se criar um algoritmo deve-se selecionar a melhor rota.
  III.           As condições lógicas retornam um valor lógico verdadeiro.
  IV.           A estrutura da seleção simples é : Se/Então/Senão.
 
Assinale a alternativa que mostra o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
I, III, IV.
	Resposta Correta:
	 
I e II.
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	“Na criação de algoritmos, utilizamos os conceitos de bloco lógico, entrada e saída de dados, constantes, atribuições, expressões lógicas, relacionais e aritméticas, bem como comandos que traduzam esses conceitos de forma a representar o conjunto de ações. [...] A estrutura sequencial de um algoritmo corresponde ao fato de que o conjunto de ações primitivas será executado em uma sequência linear de cima para baixo e da esquerda para a direita, isto é, na mesma ordem em que foram escritas”.
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Prentice Hall, 2005. p. 31.
 
A partir das asserções extraídas do trecho acima e do conteúdo estudo sobre estrutura sequencial, considere as seguintes afirmações.
 
  I.      Na criação de algoritmos são utilizados os blocos lógicos.
  II.     A programação estruturada é considerada sequencial.
  III.    A declaração de variáveis é realizada ao final do código.
  IV.    A instrução escreva() é usada no processamento de dados.
 
Assinale a alternativa que mostra o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
I, II e IV.
	Resposta Correta:
	 
I, II e IV.
	Comentário da resposta:
	Resposta correta. A resposta está correta. Os fundamentos da estrutura sequencial foram corretamente compreendidos. É necessário que se aplique os princípios de lógica de algoritmo para que o código final esteja livre de erros.
	
	
	
	Curso
	GRA0499 LÓGICA PARA REDES DE COMPUTADORES GR1958211 - 202110.ead-15147.01
	Teste
	ATIVIDADE 3 (A3)
	Iniciado
	20/03/21 00:32
	Enviado
	20/03/21 01:25
	Status
	Completada
	Resultado da tentativa
	6 em 10 pontos  
	Tempo decorrido
	53 minutos
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
2 em 2 pontos
	
	
	
	Na programação, uma variável é um objeto capaz de reter e de representar um valor ou uma expressão. As variáveis são associadas a "nomes", chamados identificadores, durante o tempo de desenvolvimento. Em relação à variável, do ponto de vista da programação de computadores, trata-se de uma região de memória (do computador) previamente identificada, cuja finalidade é armazenar os dados ou as informações de um programa por um determinado espaço de tempo, organizando-se tal qual um armário com várias divisões, sendo cada divisão identificada por um endereço diferente, em uma linguagem entendida pelo computador. (Fonte: WIKIPÉDIA, a enciclopédia livre. Variável (programação). Wikipédia, 09 ago. 2018. Disponível em: <https://pt.wikipedia.org/wiki/Variável_(programação)>. Acesso em: 20 dez. 2018.)
Na declaração de variáveis, devemos nos atentar para o fato de que elas são seguidas de ;. Também, podemos declarar, em uma mesma linha, diversas variáveis do mesmo tipo. A respeito de variáveis, avalie as afirmativas a seguir:
 
I - int quant; - declara uma variável chamada “quant”, que pode armazenar um valor inteiro.
II - float soma; - declara uma variável chamada “soma”, que pode armazenar um valor real.
III - float nota, media; - declara duas variáveis denominadas “nota” e “media”, que podem armazenar valor real.
IV - char sexo; - declara uma variável denominada “sexo”, que pode armazenar um valor booleano.
V - char nome[40]; - declara uma variável denominada “nome”, que pode armazenar até 40 caracteres.
É correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
I, II, III e V, apenas.
	Resposta Correta:
	 
I, II, III e V, apenas.
	Comentário da resposta:
	A afirmativa IV está incorreta. O correto seria: declara uma variável denominada “sexo”, que pode armazenar um caractere.
	
	
	
· Pergunta 2
2 em 2 pontos
	
	
	
	Quando a linguagem C foi criada, em 1970, por Dennis Ritchie, era um resultado de um processo de desenvolvimento que começou com uma linguagem mais antiga, chamada de BCPL, desenvolvida por Martin Richards, o que levouà criação da linhagem chamada B, por Ken Thompson. Além do mais, a linguagem C tinha o foco no desenvolvimento de compiladores e de sistemas operacionais, tendo sido utilizada na construção de uma versão do Unix. (Fonte: SCHILDT, H. C Completo e Total. São Paulo: Makron Books, 1996.)
Considerando o texto anterior a respeito da linguagem BCPL, podemos dizer que sua sigla significa:
	
	
	
	
		Resposta Selecionada:
	 
Basic Combined Programming Language (Linguagem de Programação Combinada Básica).
	Resposta Correta:
	 
Basic Combined Programming Language (Linguagem de Programação Combinada Básica).
	Comentário da resposta:
	Basic Combined Programming Language (Linguagem de Programação Combinada Básica). 
	
	
	
· Pergunta 3
0 em 2 pontos
	
	
	
	O VisualG possui vários comandos relativos à execução de um algoritmo. Dentre eles, temos: o comando Executar, que inicia (ou continua) a execução automática do pseudocódigo; o comando Passo a passo, que inicia (ou continua) a execução, linha por linha do pseudocódigo, dando ao usuário a oportunidade de acompanhar o fluxo de execução, os valores das variáveis e a pilha de ativação dos subprogramas; e o comando Parar, que termina imediatamente a execução do pseudocódigo. (Fonte: MANUAL DO VISUALG 3.0. Página inicial do Manual do Visualg 3.0. VisualG 3.0, 25 fev. 2017. Disponível em: <http://manual.visualg3.com.br/doku.php?id=manual>. Acesso em: 06 dez. 2018.)
 
Em relação aos comandos disponíveis no VisualG para a execução dos pseudocódigos, analise as afirmativas a seguir:
 
I - Liga/desliga breakpoint: insere/remove um ponto de parada na linha em que esteja o cursor. Esses pontos de parada são úteis para a depuração e o acompanhamento da execução dos pseudocódigos, pois permitem a verificação dos valores das variáveis e da pilha de ativação de subprogramas.
II - Desmarcar todos os breakpoints: ativa todos os breakpoints que estejam desativados naquele momento.
III - Executar em modo DOS: com esta opção ativada, tanto a entrada como a saída-padrão passam a ser uma janela que imita o DOS, simulando a execução de um programa nesse ambiente.
IV - Gerar valores aleatórios: ativa a geração de valores aleatórios que substituem a digitação de dados. A faixa padrão de valores gerados é de 0 a 100 inclusive, mas pode ser modificada. Para a geração de dados do tipo caractere, não há uma faixa preestabelecida: os dados gerados serão sempre strings de cinco letras maiúsculas.
V - Pilha de ativação: exibe a pilha de subprogramas desativados num dado momento. Convém utilizar este comando em conjunto com breakpoints ou com a execução Passo a passo.
É correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
I, II, III e IV, apenas.
	Resposta Correta:
	 
I, III e IV, apenas.
	Comentário da resposta:
	Afirmativa II - INCORRETA. O correto seria: II - Desmarcar todos os breakpoints: desativa todos os breakpoints que estejam ativados naquele momento. 
Afirmativa V - INCORRETA. O correto seria: V - Pilha de ativação: exibe a pilha de subprogramas ativados num dado momento. Convém utilizar este comando em conjunto com breakpoints ou com a execução passo a passo.
	
	
	
· Pergunta 4
0 em 2 pontos
	
	
	
	Vetores, também chamados arrays (do inglês), arranjos ou, ainda, matrizes, são uma maneira de armazenar vários dados num mesmo nome de variável por meio do uso de índices numéricos. Em C, vetores devem sempre conter dados do mesmo tipo de variável. Declaramos vetores de maneira muito semelhante à declaração de variáveis normais. A única diferença é que, depois do nome da variável, deve ser informada a quantidade de elementos do vetor.
 
Fonte: WIKILIVROS - Livros abertos por um mundo aberto. Programar em C/Vetores. Wikilivros, 27 out. 2018. Disponível em: <https://pt.wikibooks.org/wiki/Programar_em_C/Vetores>. Acesso em: 20 dez. 2018.
 
Em linguagem C, os vetores são muito utilizados para simplificar os códigos, com isso, consegue-se extrair informações em uma grande quantidade de dados. Sobre vetores, analise o código a seguir:
 
#include <stdio.h>
int main()
{
     float notas[3];
     printf("Insira sua primeira nota: ");
     scanf("%f", &notas[0]);
     printf("Insira sua segunda nota: ");
     scanf("%f", &notas[1]);
     notas[2] = (notas[0] + notas[1])/2;
     printf("Sua media e: %.2f\n", notas[2]);
}
 
Em relação ao código anterior, é correto afirmar que:
	
	
	
	
		Resposta Selecionada:
	 
O vetor fará o cálculo da média de todos os alunos.
	Resposta Correta:
	 
O vetor foi declarado como float de tamanho três.
	
	
	
· Pergunta 5
2 em 2 pontos
	
	
	
	Analise o seguinte código em C:
 
#include <stdio.h>
#include <string.h>
main ()
{
   char palavra[30];
   int tamanho, i;
   printf ("\n Digite uma palavra: ");
     gets(palavra);
     tamanho = strlen(palavra);
     for (i = 0; i < tamanho; i++)
     {
     printf ("\n %s", palavra);
     }
   return (0);
}
 
Fazendo o teste de mesa a respeito do resultado, digitando, por exemplo, a palavra “teste”, qual o resultado que irá aparecer na tela? Analise as alternativas a seguir:
	
	
	
	
		Resposta Selecionada:
	 
teste
    teste
    teste
    teste
    teste
	Resposta Correta:
	 
teste
    teste
    teste
    teste
    teste
	Comentário da resposta:
	Correta, pois irá contar a quantidade de caracteres do exemplo (cinco caracteres), e imprimirá o total de linhas.
	
	
	
	Curso
	GRA0499 LÓGICA PARA REDES DE COMPUTADORES GR1958211 - 202110.ead-15147.01
	Teste
	ATIVIDADE 4 (A4)
	Iniciado
	21/03/21 23:06
	Enviado
	21/03/21 23:19
	Status
	Completada
	Resultado da tentativa
	0 em 10 pontos  
	Tempo decorrido
	13 minutos
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
0 em 1 pontos
	
	
	
	Em muitas situações desejamos um formato de data diferente. Por exemplo, entramos em um site
e vemos uma data no formato de extenso no mês, tipo 12 de janeiro de 2019, ao invés de 12/01/2019. A escrita por extenso, em programação, é divertida. Mas para isso precisamos conhecer e saber como manipular strings em C.
Analise o programa a seguir, que escreve os meses do ano por extenso.
 
A tela de execução deste programa é:
Observe que há um trecho do código oculto por uma tarja preta. Escolha, a seguir, a parte do programa ocultada que gerou está tela de execução.
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 2
0 em 1 pontos
	
	
	
	Vamos acompanhar o exemplo de uma empresa que precisa pagar seus colaboradores temporários em espécie. Para cada valor a ser pago, o gerente da empresa conta a quantidade de notas de R$100, R$50, R$20, R$10, R$5, R$2 e moedas de R$1. Por exemplo, um colaborador irá receber R$1.655,00, então, serão necessárias 16 notas de R$100, uma nota de R$50 e uma nota de R$5. Ao final, ele soma todas as quantidades de cada nota, e solicita ao banco a quantidade necessária. Isso é necessário, para que o pagamento seja exato, sem troco, pois, se um colaborador recebe R$1.655,00 e um outro R$1.345,00, somando-se os dois temos um total de R$3.000,00, mas se for solicitado ao banco um valor de R$3.000,00 em espécie, o banco poderia fornecer 30 notas de R$100, e o gerente da empresa não poderia pagar o valor exato aos dois colaboradores.
Assim, para que o gerente possa automatizar esse cálculo, a empresa solicitou o desenvolvimento de um programa para ler o nome e o valor a ser pago de cada colaborador, e informar a quantidade de notas necessárias para pagar cada colaborador e depois a quantidade final.
O desenvolvedor do programa adotou a seguinte estrutura:
 
Uma matriz de string para guardar os nomes dos colaboradores e uma matriz de float para:
 
•         coluna 0: valor a ser pago para cada colaborador;
•         coluna 1: a quantidade de notas de R$100;
•         coluna 2: a quantidade de notas de R$50;
•         coluna 3: a quantidade de notas de R$20;
•         coluna 4: a quantidade de notas de R$10;
•         coluna 5: a quantidade de notas de R$5;
•         coluna 6: a quantidade de notas de R$2;
•coluna 7: a quantidade de moedas de R$1.
 
A última linha das duas matrizes, será utilizada para armazenar o somatório de cada coluna, ou seja, o valor total a ser pago, o total de notas de R$100, etc.
 
O programa terá a seguinte tela principal:
A tela de execução da opção 1 é
 
Obs.: a função setbuf(stdin, NULL) limpa o buffer do teclado antes da leitura de strings , para corrigir pequenos erros.
 
O programa que gerou esta tela de execução é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 3
0 em 1 pontos
	
	
	
	Uma operação que podemos fazer com as matrizes é encontrar a sua transposta. A matriz transposta é representada por  .
Para calcular a matriz transposta, basta transformar cada linha da matriz A em uma coluna na matriz transposta. Veja o exemplo a seguir.
   e  
A seguir é apresentado uma tela de execução de um programa que calcula a matriz inversa de matrizes 5x5.
Escolha a seguir, o bloco de códigos que calcula a matriz transposta.
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentários da Resposta:
	A sua resposta está incorreta. Releia os conceitos de operadores relacionais e comando de atribuição no C. Leia o enunciado com mais calma. A linguagem C trata de forma diferente o operador de atribuição e o operador de igualdade.
	
	
	
· Pergunta 4
0 em 1 pontos
	
	
	
	Elena resolveu organizar uma competição de handebol misto, ou seja, mulheres e homens, em sua cidade, Rio Branco. Depois de divulgar a notícia entre os atletas e clubes, foram inscritas cinco equipes mistas, no total.
As regras para pontuação foram definidas da seguinte forma:
 
•         vitória vale 3 pontos;
•         empate vale 1 ponto;
•         derrota vale 0 ponto.
 
A estrutura adotada é:
Um vetor de strings para os nomes dos times e uma matriz do tipo inteira para os resultados e pontuação. A primeira coluna da matriz guarda o número de vitórias, a segunda o número de empates, a terceira o número de derrotas e a ultima o total de pontos.
O programa para fazer os cálculos dos pontos possui a seguinte tela principal:
 
O bloco de comandos da opção 3 é mostrada a seguir.
Observe que uma parte do programa foi coberta.
Escolha, a seguir, o bloco de comandos que foi coberta na opção 3.
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 5
0 em 1 pontos
	
	
	
	Maria Laura resolveu organizar um campeonato de futebol misto, ou seja, mulheres e homens, no bairro onde mora, Jabaquara, na cidade de São Paulo. Ela conseguiu a participação de cinco equipes mistas.
As regras para pontuação são simples:
 
•         vitória vale 3 pontos;
•         empate vale 1 ponto;
•         derrota vale 0 ponto.
 
A estrutura adotada é:
Um vetor de strings para os nomes dos times e uma matriz do tipo inteira para os resultados e pontuação. A primeira coluna da matriz guarda o número de vitórias, a segunda o número de empates, a terceira o número de derrotas e a ultima o total de pontos.
O programa para fazer os cálculos dos pontos, possui a seguinte tela principal:
A opção 1, cadastrar times, foi construída assim:
 
A função setbuf(stdin, NULL) serve para limpar o buffer , assim, evita alguns erros na leitura de caracteres.
Analisando este programa e a descrição anterior, considere as afirmações a seguir.
 
I.                    A função gets pode ser substituída pela função scanf , sem prejudicar a leitura dos nomes dos times.
II.                 O vetor de strings , times, deve ser declarado como char times[5] .
III.              O vetor times, por ser uma cadeia de caracteres, deve ser lido sem a identificação da sua posição. Então, a leitura correta na função de entrada gets será: gets (times);.
IV.              Serão cadastrados cinco times, em sequência. Após a leitura, a tela será pausada, esperando que o usuário aperte qualquer tecla.
 
Considerando as afirmações dadas, escolha a alternativa que apresenta o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
I, II e III.
	Resposta Correta:
	 
IV, apenas.
	Comentários da Resposta:
	A sua resposta está incorreta. Estude, novamente, os conceitos das funções de entradas de dados gets
e scanf, para o uso com strings. A linguagem de programação C trata os caracteres de forma diferente, para armazenar vários nomes de times, é necessário o uso de matrizes de caracteres e não de vetores.
	
	
	
· Pergunta 6
0 em 1 pontos
	
	
	
	Sabemos que, na linguagem C, string
é um vetor de caracteres, que utiliza uma biblioteca específica, a string.h .
O caractere é um elemento simples, e para ele, usamos aspas simples, enquanto a string leva aspas duplas, por ser um vetor de caracteres.
A manipulação de strings
requer funções específicas da biblioteca string .h. Uma função que retorna o tamanho de uma palavra é a strlen .
Analise o programa a seguir.
 
Agora, responda: se a palavra aroma foi digitada na entrada, qual será a saída?
	
	
	
	
		Resposta Selecionada:
	 
aroma
	Resposta Correta:
	 
amora
	
	
	
· Pergunta 7
0 em 1 pontos
	
	
	
	Vamos acompanhar o caso de uma empresa que precisa pagar seus colaboradores temporários e o pagamento deve ser feito em espécie. Para isso, o gerente da empresa conta a quantidade de notas de R$100, R$50, R$20, R$10, R$5, R$2 e moedas de R$1, para cada valor a ser pago. Por exemplo, para um colaborador que recebe R$1.655,00, serão necessárias 16 notas de R$100, uma nota de R$50 e uma nota de R$5. Ao final, ele soma todas as quantidades de cada nota, e solicita ao banco a quantidade necessária. Se ele não fizer isso, não conseguirá pagar todos os colaboradores, pois iria precisar de troco. Por exemplo, um colaborador irá receber R$1.655,00 e um outro R$1.345,00, somando-se os dois temos um total de R$3.000,00. Ao solicitar ao banco um valor de R$3.000,00 em espécie, o banco poderia fornecer 30 notas de R$100, o que iria complicar no pagamento dos dois colaboradores.
Para facilitar para o gerente, a empresa solicitou que fosse desenvolvido um programa para ler o nome e o valor a ser pago de cada colaborador, e informar a quantidade de notas necessárias para pagar cada colaborador e depois a quantidade final.
O desenvolvedor do programa adotou a seguinte estrutura:
Uma matriz de string para guardar os nomes dos colaboradores e uma matriz de float para:
 
•         coluna 0: valor a ser pago para cada colaborador;
•         coluna 1: a quantidade de notas de R$100;
•         coluna 2: a quantidade de notas de R$50;
•         coluna 3: a quantidade de notas de R$20;
•         coluna 4: a quantidade de notas de R$10;
•         coluna 5: a quantidade de notas de R$5;
•         coluna 6: a quantidade de notas de R$2;
•         coluna 7: a quantidade de moedas de R$1.
 
A última linha das duas matrizes, será utilizada para armazenar o somatório de cada coluna, ou seja, o valor total a ser pago, o total de notas de R$100, etc.
Para calcular a quantidade de notas necessárias, ele utilizou da divisão de números inteiro. Por exemplo, para o valor de R$176,00:
 
•       e o resto é 76, então será necessária uma nota de R$100;
•       e o resto é 26, uma nota de R$50;
•       e sobra 6, uma nota de R$20;
•       e o resto é 6, 0 nota de R$10;
•       e sobra 1, uma nota de R$5;
•       e sobra 1, 0 nota de R$2;
•         1 moeda de R$1.
 
O programa terá a seguinte tela principal:
 
O programa da opção 2 é mostrado a seguir. Observe que existe um (int) antes das variáveis, isso é o que chamamos de cast , ou conversão de tipos. Neste exemplo, o valor da variável notas do tipo float foi convertido para inteiro.
 
A tela de execução da opção 2 é:
 
Observe que há um trecho de código faltando, coberto por uma tarja preta. O trecho de programa que está faltando, de acordo com esta execução, é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 8
0 em 1 pontos
	
	
	
	Para pagar seus colaboradores temporários em espécie, o gerente de uma empresa precisa contar a quantidade de notas de R$100, R$50, R$20, R$10, R$5, R$2 e moedas deR$1,para cada valor a ser pago. Isso é necessário para que o valor em espécie a ser pago seja exato, sem troco. Por exemplo, para pagar um colaborador que recebe R$1.655,00, serão necessárias 16 notas de R$100, uma nota de R$50 e uma nota de R$5.
Para que esse cálculo seja exato, ao final, o gerente soma todas as quantidades de cada nota, e solicita ao banco a quantidade necessária. Se ele não fizer isso, não conseguirá pagar todos os colaboradores, pois iria precisar de troco. Por exemplo, um colaborador irá receber R$1.655,00 e um outro R$1.345,00, somando-se os dois temos um total de R$3.000,00. Ao solicitar ao banco um valor de R$3.000,00 em espécie, o banco poderia fornecer 30 notas de R$100, o que iria complicar no pagamento dos dois colaboradores.
Para facilitar para o gerente, a empresa solicitou que fosse desenvolvido um programa para ler o nome e o valor a ser pago de cada colaborador, e informar a quantidade de notas necessárias para pagar cada colaborador e depois a quantidade final.
O desenvolvedor do programa adotou a seguinte estrutura:
Uma matriz de string para guardar os nomes dos colaboradores e uma matriz de float para:
 
•         coluna 0: valor a ser pago para cada colaborador;
•         coluna 1: a quantidade de notas de R$100;
•         coluna 2: a quantidade de notas de R$50;
•         coluna 3: a quantidade de notas de R$20;
•         coluna 4: a quantidade de notas de R$10;
•         coluna 5: a quantidade de notas de R$5;
•         coluna 6: a quantidade de notas de R$2;
•         coluna 7: a quantidade de moedas de R$1.
 
A última linha das duas matrizes, será utilizada para armazenar o somatório de cada coluna, ou seja, o valor total a ser pago, o total de notas de R$100, etc.
O programa terá a seguinte tela principal:
A opção 3, relatórios, imprimirá o somatório dos valores: valor total a ser pago, total de notas R$100, total de notas R$50 etc.
A empresa trabalha com 4 colaboradores.
A tela de execução da opção 3 é:
Considerando todas essas informações, o programa que gerou esta tela de execução é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 9
0 em 1 pontos
	
	
	
	Os vetores são estruturas de armazenamento temporário que podem guardar vários dados, de mesmo tipo, durante uma execução. Cada elemento do vetor é acessado pelo nome do vetor e a sua posição. Para percorrer um vetor é necessário um comando de repetição. Estes são conceitos básicos, para quem quer manipular vetores. Quem constrói programa deve também saber ler os programas.
Analise o programa a seguir.
 
Agora, escolha a opção correta da execução do programa acima.
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
· Pergunta 10
0 em 1 pontos
	
	
	
	As matrizes são estruturas de armazenamento temporário. Para acessar um elemento da matriz, indique o nome da matriz seguido da posição da linha e da coluna, nesta sequência. Podemos manipular matrizes usando dois comandos de repetição, inclusive para preenchê-las.
O programa a seguir, preenche uma matriz 3x3, com zeros e uns.
Analisando este programa, escolha a opção correta que mostra qual será a matriz gerada.
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	
	
	
	Curso
	GRA0499 LÓGICA PARA REDES DE COMPUTADORES GR1958211 - 202110.ead-15147.01
	Teste
	20211 - PROVA N2 (A5)
	Iniciado
	07/04/21 20:26
	Enviado
	07/04/21 21:01
	Status
	Completada
	Resultado da tentativa
	4 em 10 pontos  
	Tempo decorrido
	35 minutos
	Instruções
	Caso necessite a utilização do "EXCEL" clique no link ao lado -----------> excel.xlsx
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
0 em 1 pontos
	
	
	
	Compreender os conceitos utilizados na construção de algoritmos é fundamental e básico para quem deseja desenvolver programas. Os comandos de entrada e saída de dados possuem comportamento muito distintos, enquanto um exibe para o usuário os valores de uma variável, o outro armazena valores em uma variável. Os acumuladores e somadores possuem a mesma estrutura de trabalho com as variáveis. Com estes conceitos em mente, analise o algoritmo a seguir (lembre-se que int é a abreviação do tipo de dados inteiro).
 
 
Considerando que o usuário digitou o número 5 (cinco), qual será o valor da variável   impressa na tela?
	
	
	
	
		Resposta Selecionada:
	 
5.
	Resposta Correta:
	 
4.
	Comentário da resposta:
	Sua resposta está incorreta. Lembre-se que o comando de entrada de dados atua como um comando de atribuição de dados, sendo que seu valor é controlado pelo usuário. Revise os conceitos de comandos de entrada e saída de dados.
	
	
	
· Pergunta 2
0 em 1 pontos
	
	
	
	Compreender os conceitos utilizados na construção de algoritmos é fundamental e básico para quem deseja desenvolver programas. Os comandos de entrada e saída de dados possuem comportamento muito distintos, enquanto um exibe para o usuário os valores de uma variável, o outro armazena valores em uma variável. Os acumuladores e somadores possuem a mesma estrutura de trabalho com as variáveis. Com estes conceitos em mente, analise o algoritmo a seguir (lembre-se que int é a abreviação do tipo de dados inteiro).
 
 
Considerando que o usuário digitou o número 5 (cinco), qual será o valor da variável   impressa na tela?
	
	
	
	
		Resposta Selecionada:
	 
5.
	Resposta Correta:
	 
4.
	Comentário da resposta:
	Sua resposta está incorreta. Lembre-se que o comando de entrada de dados atua como um comando de atribuição de dados, sendo que seu valor é controlado pelo usuário. Revise os conceitos de comandos de entrada e saída de dados.
 
 
 
	
	
	
· Pergunta 3
1 em 1 pontos
	
	
	
	Um posto de combustível resolveu fazer uma promoção nas vendas dos combustíveis, de acordo com a quantidade abastecida. Assim, quanto maior for a quantidade abastecida maior será o valor do desconto dado. Depois de vários estudos, o dono chegou a valores adequados para a oferta. Os combustíveis que entrarão em oferta será etanol e a gasolina. O dono do posto também optou por oferecer descontos para quem abastecesse, mesmo que em quantidade menor. A tabela a seguir mostra os valores dos descontos.
	Combustível
	Preço litro
	Litros
	Desconto
	  Etanol
	  R$2,56
		até 30 litros
	acima de 30 litros
		3%
	5%
	  Gasolina
	  R$4,73
	até 30 litros
	2%
	 
	 
	acima de 30 litros
	4%
 
Um algoritmo para calcular o desconto, em R$, e o valor a ser pago pelo cliente, de acordo com a quantidade abastecida, é ( int é a abreviação do tipo de dados inteiro):
 
Observe que as linhas 28 a 33 foram tampadas propositalmente. O bloco de comandos que foi escondido e que faz com que este algoritmo funcione corretamente é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A sua resposta está correta. O comando de repetição REPETIR ATE não faz teste na entrada. Um comando condicional dentro do outro é chamado de comandos aninhados, muito utilizado, quando se tem várias condições. No exemplo, se tem a condição do tipo de combustível e da quantidade vendida.
	
	
	
· Pergunta 4
0 em 1 pontos
	
	
	
	Os comandos de repetição servem para repetir bloco de comandos, fazendo com que os programas se tornem mais eficientes. O comando de repetição PARA possui três campos no qual é possível que o programador faça o controle sobre a inicialização da variável de controle do laço, sobre a condição de continuidade das iterações (repetições) e sobre o passo (lembre-se que int é a abreviação do tipo de dados inteiro). Com este conceito em mente, analise o seguinte algoritmo (lembre-se que int é a abreviação do tipo de dados inteiro):
 
 
Sobre este algoritmo, escolha a alternativa que aponta o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
Este algoritmo soma os números inteiros pares entre 1 e 50.
	Resposta Correta:
	 
Este algoritmo soma os números inteiros ímpares entre 1 e 50.
	Comentário da resposta:
	A resposta está incorreta. Reveja os conceitos de somadores/acumuladorese o comando de repetição PARA. A diferença básica entre contadores e acumulares está no passo. Lembre-se que, normalmente, os contadores contam de 1 em 1 e os acumuladores não.
	
	
	
· Pergunta 5
1 em 1 pontos
	
	
	
	Nesse mesmo contexto do campeonato estadual de judô, a academia Budokan, de Juiz de Fora/MG, precisa classificar seus atletas em classes e categorias, de acordo com o gênero, peso e idade. Há uma categoria, em específico, que requer atenção especial, pois é a que mais tem competidores: de meninas com idades entre 11 a 17 anos e pesam até 44kg. Vai ser necessário fazer uma pré-seleção das atletas, seguindo alguns critérios, que podemos ver na tabela a seguir, que classifica a classe de cada atleta.
	Classe
	Idade Inicial
	Idade Final
	Sub 18 Feminino
	15
	17
	Sub 15 Feminino
	13
	14
	Sub 13 Feminino
	11
	12
 
Nesta tabela, podemos ver os critérios para a classificação das categorias.
	Categorias
	Sub 13
	Sub 15
	Sub 18
	Superligeiro Feminino
	até 28kg
	até 36kg
	até 40kg
	Ligeiro Feminino
	de 28kg a 31kg
	de 36kg a 40kg
	de 40kg a 44kg
 
Para inscrever suas atletas, a academia já sabe que uma atleta com 11 anos, pesando 28kg, pode competir na classe sub 13 feminino e na categoria superligeiro.
Podemos traduzir isso em um algoritmo que calcula a classe e a categoria de uma atleta:
Perceba que uma parte do algoritmo, entre as linhas 31 a 41, está coberta por um quadrado preto. O trecho que foi retirado e que garante o correto funcionamento deste sistema é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A sua resposta está correta. O comando condicional SE serve para separar a execução de acordo como as condições. Podemos utilizá-los na forma sequencial ou aninhados. Neste exemplo, utilizamos na forma sequencial.
 
	
	
	
· Pergunta 6
1 em 1 pontos
	
	
	
	Vários problemas matemáticos são resolvidos com o auxílio da computação. As equações matemáticas são as mais fáceis de serem implementadas na programação. Veja o exemplo a seguir.
 
O valor de π pode ser calculado pela série infinita   ou seja,
  
 
O algoritmo que calcula o valor de π pela série infinita, com os 100 primeiros termos, é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	Sua resposta está correta. Aqui utilizamos o conceito de acumuladores na resolução de problemas matemáticos. Observe que a troca do sinal entre + e – foi feita na linha 11. O uso do comando PARA é o mais indicado para este exemplo.
 
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	Leia o excerto a seguir.
 
“Nos inícios da década de 1960, fruto do trabalho de americanos e europeus, surgiu uma linguagem projetada para representar algoritmos ao invés de se escrever programas simplesmente, o Algol-60. Ela implementava o conceito de estrutura de blocos, onde variáveis, procedimentos, etc., poderiam ser declarados onde quer que o programa os necessitasse. Algol-60 influenciou profundamente muitas linguagens que vieram depois e evoluiu para o Algol-68”.
 
FONSECA F. C. História da Computação : o caminho do pensamento e da tecnologia. Porto Alegre: EDIPUCRS, 2007. p. 125.
 
Considerando as informações sobre elaboração de variáveis analise as seguintes afirmativas.
 
I. A primeira letra da variável deve ser um caractere alfabético.
II. Usar preferencialmente palavras reservadas nas variáveis.
III. Na declaração da variável é possível conter números.
IV. Toda as linguagens permitem declarar variáveis case sensitive.
 
Agora, assinale a alternativa que apresenta a sequência correta de respostas.
	
	
	
	
		Resposta Selecionada:
	 
V, F, V, F.
	Resposta Correta:
	 
V, F, V, F.
	Comentário da resposta:
	A resposta está correta. Forem associadas corretamente as regras de elaboração de variáveis. É fundamental seguir as regras para que o código se mantenha bem organizado, claro para leitura e esteja livre de erros.
 
 
	
	
	
· Pergunta 8
0 em 1 pontos
	
	
	
	Vários problemas matemáticos são resolvidos com o auxílio da computação. As equações matemáticas são as mais fáceis de serem implementadas na programação. Veja o exemplo a seguir.
 
O valor de π pode ser calculado pela série infinita   ou seja,
  
 
O algoritmo que calcula o valor de π pela série infinita, com os 100 primeiros termos, é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A resposta não é a correta. Releia os conceitos de acumuladores e comandos de repetição. Observe as inicializações das variáveis e analise os valores dos termos para construir o algoritmo. Existe uma troca de sinal começando no positivo e depois vai para o negativo. Os denominadores dos termos são sempre ímpares. 
 
 
	
	
	
· Pergunta 9
0 em 1 pontos
	
	
	
	Um posto de combustível resolveu fazer uma promoção nas vendas dos combustíveis, de acordo com a quantidade abastecida. Assim, quanto maior for a quantidade abastecida maior será o valor do desconto dado. Depois de vários estudos, o dono chegou a valores adequados para a oferta. Os combustíveis que entrarão em oferta será etanol e a gasolina. O dono do posto também optou por oferecer descontos para quem abastecesse, mesmo que em quantidade menor. A tabela a seguir mostra os valores dos descontos.
	Combustível
	Preço litro
	Litros
	Desconto
	  Etanol
	  R$2,56
		até 30 litros
	acima de 30 litros
		3%
	5%
	  Gasolina
	  R$4,73
	até 30 litros
	2%
	 
	 
	acima de 30 litros
	4%
 
Um algoritmo para calcular o desconto, em R$, e o valor a ser pago pelo cliente, de acordo com a quantidade abastecida, é ( int é a abreviação do tipo de dados inteiro):
 
Observe que as linhas 28 a 33 foram tampadas propositalmente. O bloco de comandos que foi escondido e que faz com que este algoritmo funcione corretamente é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A sua resposta está incorreta. Retome os estudos de comando condicional aninhados, ou seja, um dentro do outro e do comando REPETIR ATE. Utilize também a ferramenta fluxograma, que será muito útil na visualização dos comandos condicionais aninhados.
 
 
 
	
	
	
· Pergunta 10
0 em 1 pontos
	
	
	
	Na linguagem de programação C, as strings são matrizes de caratcteres ou um conjunto de vetores de caracteres. Para manipular as strings
é necessário o uso de funções específicas. Por exemplo, a função strcpy , copia uma strings
para uma variável.
Analise a tela de execução, a seguir, de um programa para escrever por extenso os números de 0 a 9.
 
De acordo com a tela de execução, o programa que a gerou é:
 
 
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	
A sua resposta está incorreta. Reveja os conceitos de strings
e comandos condicionais. A linguagem C possui funções específicas para trabalhar com strings . Observe a mensagem de erro na tela de execução e a condição de saída da estrutura de repetição do/while .
 
 
	
	
	
	Curso
	GRA0499 LÓGICA PARA REDES DE COMPUTADORES GR1958211 - 202110.ead-15147.01
	Teste
	20211 - PROVA SUBSTITUTIVA (A6)
	Iniciado
	13/04/21 20:56
	Enviado
	13/04/21 22:37
	Status
	Completada
	Resultado da tentativa
	9 em 10 pontos  
	Tempo decorrido
	1 hora, 41 minutos
	Instruções
	Caso necessite a utilização do "EXCEL" clique no link ao lado -----------> excel.xlsx
	Resultados exibidos
	Respostas enviadas, Respostas corretas, Comentários
· Pergunta 1
1 em 1 pontos
	
	
	
	Leia o excerto a seguir.
 
“[Na construção de algoritmo], utilizaremos três operadores básicos para a formação de novas proposições lógicas compostas de outras proposições lógicas simples. Os operadores lógicos são: negação, conjunção e disjunção”. 
 
FORBELLONE, A. L. V. Lógica de programação - A construção de algoritmos e estruturas de dados . 3. ed. São Paulo: Prentice Hall, 2005. p. 43.
 
Portanto, os operadores lógicos básicos são utilizados para criação de proposições mais complexas.
A partir das informações sobre operadores lógicos, associe cada fragmento do comando comseu respectivo significado.
 
(1)   Validade lógica
(2)   Princípio da não contradição
(3)   Princípio do terceiro excluído
(4)   Operações relacionais
 
(_) A proposição não pode ser falsa e verdadeira conjuntamente.
(_) A proposição pode assumir somente valores falso ou verdadeiro.
(_) Resultado esperado de uma proposição composta.
(_) Comparação entre variáveis para determinação de uma saída lógica.
 
Agora, assinale a alternativa que apresenta a sequência correta.
	
	
	
	
		Resposta Selecionada:
	 
2, 3, 1, 4.
	Resposta Correta:
	 
2, 3, 1, 4.
	Comentário da resposta:
	A resposta está correta. Os princípios de operadores lógicos foram corretamente associados. O desenvolvimento do algoritmo exige um conhecimento de lógica para que o código final esteja livre de erros de lógica e execução.
 
 
	
	
	
· Pergunta 2
1 em 1 pontos
	
	
	
	Os comandos de repetição servem para repetir bloco de comandos, fazendo com que os programas se tornem mais eficientes. O comando de repetição PARA possui três campos no qual é possível que o programador faça o controle sobre a inicialização da variável de controle do laço, sobre a condição de continuidade das iterações (repetições) e sobre o passo (lembre-se que int é a abreviação do tipo de dados inteiro). Com este conceito em mente, analise o seguinte algoritmo (lembre-se que int é a abreviação do tipo de dados inteiro):
 
 
Sobre este algoritmo, escolha a alternativa que aponta o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
Este algoritmo soma os números inteiros ímpares entre 1 e 50.
	Resposta Correta:
	 
Este algoritmo soma os números inteiros ímpares entre 1 e 50.
	Comentário da resposta:
	A resposta está correta. Este algoritmo utiliza o comando de repetição PARA com passo de 2, o que significa que ele irá somar de 2 em 2 e como a variável i começou com o valor de 1, esta variável receberá os valores ímpares.
	
	
	
· Pergunta 3
1 em 1 pontos
	
	
	
	Um posto de combustível resolveu fazer uma promoção nas vendas dos combustíveis, de acordo com a quantidade abastecida. Assim, quanto maior for a quantidade abastecida maior será o valor do desconto dado. Depois de vários estudos, o dono chegou a valores adequados para a oferta. Os combustíveis que entrarão em oferta será etanol e a gasolina. O dono do posto também optou por oferecer descontos para quem abastecesse, mesmo que em quantidade menor. A tabela a seguir mostra os valores dos descontos.
	Combustível
	Preço litro
	Litros
	Desconto
	  Etanol
	  R$2,56
		até 30 litros
	acima de 30 litros
		3%
	5%
	  Gasolina
	  R$4,73
	até 30 litros
	2%
	 
	 
	acima de 30 litros
	4%
 
Um algoritmo para calcular o desconto, em R$, e o valor a ser pago pelo cliente, de acordo com a quantidade abastecida, é ( int é a abreviação do tipo de dados inteiro):
 
Observe que as linhas 28 a 33 foram tampadas propositalmente. O bloco de comandos que foi escondido e que faz com que este algoritmo funcione corretamente é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A sua resposta está correta. O comando de repetição REPETIR ATE não faz teste na entrada. Um comando condicional dentro do outro é chamado de comandos aninhados, muito utilizado, quando se tem várias condições. No exemplo, se tem a condição do tipo de combustível e da quantidade vendida.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	Uma empresa de instalação de redes de computadores, chamada LAURec, optou por mudar a forma de cálculo dos salários de seus 15 funcionários. A empresa passou a pagá-los por produção, então, cada funcionário terá um salário fixo acrescido de uma comissão sobre o valor total das vendas. A empresa precisa de um algoritmo para calcular o salário de cada funcionário e o valor da folha de pagamento (todos os salários) (lembre-se que int é a abreviação do tipo de dados inteiro).
O algoritmo a seguir foi desenvolvido para resolver esse cálculo para a LAURec.
 
Considere as afirmações a seguir.
 
I.          O salário do funcionário não será calculado de forma correta porque a variável   não foi inicializada com o valor de 0.
II.                 A folha de pagamento não será calculada corretamente por causa do erro na inicialização da variável  .
III.       A variável  referente à porcentagem da comissão, foi declarada como real de forma correta, pois trabalha com números reais.
IV.              Para mostrar ao usuário a folha de pagamento a cada cálculo de salário, é necessário mudar o comando escreva da linha 17 para, logo após a linha 15. 
 
Considerando as afirmações dadas, assinale a alternativa que apresenta o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
II, III e IV.
	Resposta Correta:
	 
II, III e IV.
	Comentário da resposta:
	A resposta está correta. A inicialização de variáveis somente é necessária quando usamos acumuladores ou somadores. O tipo de dados que trabalha com números reais é o real e, neste exemplo, a única variável inteira é i , que controla o comando PARA.
	
	
	
· Pergunta 5
0 em 1 pontos
	
	
	
	Na linguagem de programação C, as strings são matrizes de caratcteres ou um conjunto de vetores de caracteres. Para manipular as strings
é necessário o uso de funções específicas. Por exemplo, a função strcpy , copia uma strings
para uma variável.
Analise a tela de execução, a seguir, de um programa para escrever por extenso os números de 0 a 9.
 
De acordo com a tela de execução, o programa que a gerou é:
 
 
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	
A sua resposta está incorreta. Reveja os conceitos de strings
e comandos condicionais. A linguagem C possui funções específicas para trabalhar com strings . Observe a mensagem de erro na tela de execução e a condição de saída da estrutura de repetição do/while .
 
 
	
	
	
· Pergunta 6
1 em 1 pontos
	
	
	
	Nesse mesmo contexto do campeonato estadual de judô, a academia Budokan, de Juiz de Fora/MG, precisa classificar seus atletas em classes e categorias, de acordo com o gênero, peso e idade. Há uma categoria, em específico, que requer atenção especial, pois é a que mais tem competidores: de meninas com idades entre 11 a 17 anos e pesam até 44kg. Vai ser necessário fazer uma pré-seleção das atletas, seguindo alguns critérios, que podemos ver na tabela a seguir, que classifica a classe de cada atleta.
	Classe
	Idade Inicial
	Idade Final
	Sub 18 Feminino
	15
	17
	Sub 15 Feminino
	13
	14
	Sub 13 Feminino
	11
	12
 
Nesta tabela, podemos ver os critérios para a classificação das categorias.
	Categorias
	Sub 13
	Sub 15
	Sub 18
	Superligeiro Feminino
	até 28kg
	até 36kg
	até 40kg
	Ligeiro Feminino
	de 28kg a 31kg
	de 36kg a 40kg
	de 40kg a 44kg
 
Para inscrever suas atletas, a academia já sabe que uma atleta com 11 anos, pesando 28kg, pode competir na classe sub 13 feminino e na categoria superligeiro.
Podemos traduzir isso em um algoritmo que calcula a classe e a categoria de uma atleta:
Perceba que uma parte do algoritmo, entre as linhas 31 a 41, está coberta por um quadrado preto. O trecho que foi retirado e que garante o correto funcionamento deste sistema é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:
	 
	Comentário da resposta:
	A sua resposta está correta. O comando condicional SE serve para separar a execução de acordo como as condições. Podemos utilizá-los na forma sequencial ou aninhados. Neste exemplo, utilizamos na forma sequencial.
 
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	Uma professora ficou curiosa a respeito de qual seria a altura média de seus alunos. Empolgada com a possibilidade de um sistema calcular a medida, ela pediu que o programador desenvolvesse um programa que também calculasse:
 
-a média de altura feminina;
-a média de altura masculina;
-a média da turma;
-a porcentagem de homens e mulheres.
 
Considerando que a sala desta professora possui 45 alunos, o algoritmo que calcula todos os dados que a professora pediu é:
	
	
	
	
		Resposta Selecionada:
	 
	Resposta Correta:Comentário da resposta:
	A sua resposta está correta. Os comandos de repetição diferem, entre si, na forma como executam a função de repetir blocos de comandos. O comando PARA possui três campos e o teste no início do comando, o comando ENQUANTO possui um campo que é o teste, sendo localizado no início do comando. E o REPETIR ATE, possui um campo, que é o próprio teste, no final do comando.
	
	
	
· Pergunta 8
1 em 1 pontos
	
	
	
	Em um campeonato estadual de judô, os atletas são classificados em classes e categorias, de acordo com o gênero, peso e a idade. Esta classificação existe com o intuito de preservar os atletas e garantir uma luta mais justa. A academia de judô Águia Branca, de Betim/MG, fará uma pré-seleção das atletas com idades entre 11 a 14 anos, com peso até 40kg.
A tabela a seguir mostra os critérios para a classificação da classe de cada atleta.
	Classe
	Idade Inicial
	Idade Final
	Sub 15 Feminino
	13
	14
	Sub 13 Feminino
	11
	12
 
E a próxima tabela ilustra os critérios para a classificação das categorias.
	Categorias
	Sub 13
	Sub 15
	Superligeiro Feminino
	até 28kg
	até 36kg
	Ligeiro Feminino
	de 28kg a 31kg
	de 36kg a 40kg
 
Assim, uma atleta com 11 anos, pesando 28kg, irá competir na classe sub 13 feminino e na categoria superligeiro.
Um algoritmo que calcula a classe e a categoria de uma atleta é apresentado a seguir.
 
O algoritmo não apresenta uma contagem de atletas, nem por classes e nem por categorias. Analisando este algoritmo, escolha a opção que insere linhas de comando para contar a quantidade de atletas de cada CLASSE .
	
	
	
	
		Resposta Selecionada:
	 
Inserir o contador , após a linha 23 e o contador ,
após a linha 12. Inicializar as duas variáveis com os valores de zero, ou seja,  e  após a linha 3.
	Resposta Correta:
	 
Inserir o contador , após a linha 23 e o contador ,
após a linha 12. Inicializar as duas variáveis com os valores de zero, ou seja,  e  após a linha 3.
	Comentário da resposta:
	A sua resposta está correta. Os contadores/acumuladores/somadores devem ser inicializados para limpar os antigos valores daquela posição de memória.
 
	
	
	
· Pergunta 9
1 em 1 pontos
	
	
	
	Uma empresa de instalação de redes de computadores, chamada LAURec, optou por mudar a forma de cálculo dos salários de seus 15 funcionários. A empresa passou a pagá-los por produção, então, cada funcionário terá um salário fixo acrescido de uma comissão sobre o valor total das vendas. A empresa precisa de um algoritmo para calcular o salário de cada funcionário e o valor da folha de pagamento (todos os salários) (lembre-se que int é a abreviação do tipo de dados inteiro).
O algoritmo a seguir foi desenvolvido para resolver esse cálculo para a LAURec.
 
Considere as afirmações a seguir.
 
I.          O salário do funcionário não será calculado de forma correta porque a variável   não foi inicializada com o valor de 0.
II.                 A folha de pagamento não será calculada corretamente por causa do erro na inicialização da variável  .
III.       A variável  referente à porcentagem da comissão, foi declarada como real de forma correta, pois trabalha com números reais.
IV.              Para mostrar ao usuário a folha de pagamento a cada cálculo de salário, é necessário mudar o comando escreva da linha 17 para, logo após a linha 15. 
 
Considerando as afirmações dadas, assinale a alternativa que apresenta o que é correto afirmar.
	
	
	
	
		Resposta Selecionada:
	 
II, III e IV.
	Resposta Correta:
	 
II, III e IV.
	Comentário da resposta:
	A resposta está correta. A inicialização de variáveis somente é necessária quando usamos acumuladores ou somadores. O tipo de dados que trabalha com números reais é o real e, neste exemplo, a única variável inteira é i , que controla o comando PARA.
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	Compreender os conceitos utilizados na construção de algoritmos é fundamental e básico para quem deseja desenvolver programas. Os comandos de entrada e saída de dados possuem comportamento muito distintos, enquanto um exibe para o usuário os valores de uma variável, o outro armazena valores em uma variável. Os acumuladores e somadores possuem a mesma estrutura de trabalho com as variáveis. Com estes conceitos em mente, analise o algoritmo a seguir (lembre-se que int é a abreviação do tipo de dados inteiro).
 
 
Considerando que o usuário digitou o número 5 (cinco), qual será o valor da variável   impressa na tela?
	
	
	
	
		Resposta Selecionada:
	 
4.
	Resposta Correta:
	 
4.
	Comentário da resposta:
	A resposta está correta. O comando de entrada de dados, leia, linha 6, armazena o valor digitado pelo usuário na variável x, apagando o valor anterior. O comando de entrada de dados atua como um comando de atribuição de dados, sendo que seu valor é controlado pelo usuário.

Outros materiais