Buscar

Lógica de Programação: Tabela Verdade e Estruturas de Seleçã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

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

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

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

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

Prévia do material em texto

Pergunta 1
0,25 em 0,25 pontos
	
	
	
	A tabela que construímos com os conectivos lógicos ^, v, ->, <-> e a negação (~) é chamada tabela verdade. Essa tabela pode ser construída para qualquer forma sentencial, sendo a possibilidade combinatória entre todos os valores lógicos.
 
GERÔNIMO, J. R.; FRANCO, V. S. Fundamentos da Matemática: uma introdução à lógica matemática, teoria de conjuntos, relações e funções. 2. ed. Maringá: Eduem, 2008.
 
Os valores lógicos, obtidos em uma tabela verdade, podem ser utilizados para a resolução de determinados problemas (lembrando que os operadores lógicos também possuem prioridades de execução). 
 
Com base no texto, analise as afirmativas a seguir:
 
I – Em uma operação de conjunção, independentemente do valor das proposições, o resultado lógico sempre será verdadeiro.
II – O operador de negação possui a função de negar (inverter) o valor lógico pertencente a uma proposição.
III – Uma combinação de duas proposições, p e q, pode ser expressa como p ^ q, sendo assim uma disjunção.
IV – O valor lógico da operação de disjunção será falsa somente quando as duas proposições envolvidas forem falsas.
 
É correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
II e IV, apenas.
	Resposta Correta:
	 
II e IV, apenas.
	Feedback da resposta:
	Resposta correta.  A afirmativa II está correta, pois um operador de negação nada mais é do que a inversão do valor lógico de uma proposição. A afirmativa IV está correta, pois em uma operação de disjunção, o seu valor lógico será verdadeiro sempre que houver uma proposição verdadeira; caso as duas sejam falsas, seu valor lógico será também falso.
GERÔNIMO, J. R.; FRANCO, V. S. Fundamentos da Matemática: uma introdução à lógica matemática, teoria de conjuntos, relações e funções. 2. ed. Maringá: Eduem, 2008.
	
	
	
Pergunta 2
0 em 0,25 pontos
	
	
	
	Quando queremos escrever um software 
para realizar um determinado tipo de processamento de dados, devemos escrever um ou diversos programas interligados. Para que um computador compreenda e execute esse programa, devemos escrevê-lo em uma linguagem de programação.
 
Há uma linguagem que não necessita de uma compilação pelo computador, chamada linguagem natural. Assinale a alternativa correta acerca do conceito de linguagem natural.
	
	
	
	
		Resposta Selecionada:
	
Uma descrição em que, pelas regras predefinidas, podemos simular uma linguagem de programação por meio de comandos.
	Resposta Correta:
	
Uma descrição narrativa, que consiste em analisar o problema e escrever os passos a serem seguidos para a resolução.
	Feedback da resposta:
	Sua resposta está incorreta. Escrever algoritmos por meio de símbolos gráficos é um tipo de algoritmo fluxograma. Simular uma linguagem de programação por comandos diz respeito ao algoritmo pseudocódigo. Não existe um tipo de algoritmo que misture símbolos gráficos e comandos para a lógica de programação. Uma linguagem codificada é compilada por computadores, e não entendidos por usuários comuns, não sendo a definição de linguagem natural.
	
	
	
Pergunta 3
0,25 em 0,25 pontos
	
	
	
	Ao elaborar um algoritmo, adicionamos diversos comandos que, ao compilados, são executados e realizam uma determinada tarefa. Dentre esses comandos, podemos, com base em uma verificação lógica, executar um determinado trecho de código ou não.
 
Essa estrutura é chamada seleção, condicional ou estruturas de desvio. 
 
Considerando essas informações, analise as afirmativas a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s):
 
I.( ) Uma estrutura que realiza uma ação baseada em uma condição simples é conhecida como estrutura de seleção simples.
II.( ) A condição se (n >0) então escreva (“Positivo”) senão (“Negativo”) verificará se um valor digitado é positivo ou negativo.
III.( ) Em uma estrutura de seleção composta, as ações podem ser executadas caso a condição seja verdadeira, e outras, caso seja falsa.
IV.( ) Uma estrutura de seleção simples possui como sintaxe a forma: se (numero=0) então <comandos> senão <comandos> fimse.
 
Com base nas associações feitas, assinale a alternativa que apresenta a sequência correta:
	
	
	
	
		Resposta Selecionada:
	 
I, II e III, apenas.
	Resposta Correta:
	 
I, II e III, apenas.
	Feedback da resposta:
	Resposta correta. A afirmativa I é verdadeira, pois as estruturas de seleção simples são utilizadas quando uma ação é tomada com base no teste de uma condição. A afirmativa II é verdadeira, pois a condição citada verificará se um número digitado é maior do que zero; se sim, indica que ele é positivo; caso contrário, indica se ele é negativo. A afirmativa III é verdadeira, pois nas estruturas de seleção composta, existem algumas ações que podem ser executadas caso a condição seja verdadeira (então), e outras, caso seja falsa (senão).
	
	
	
Pergunta 4
0,25 em 0,25 pontos
	
	
	
	Um fluxograma é utilizado para demonstrar o fluxo de um algoritmo de forma clara. Esse tipo de procedimento é comum, já que, com o fluxograma, é possível verificar o intuito de um algoritmo, para que assim seja possível codificar em qualquer linguagem.
 
Analise o fluxograma a seguir:
 
 
Elaborada pelo autor.
 
Considerando o texto apresentado e os conteúdos abordados na introdução, analise as asserções a seguir e a relação proposta entre elas.
 
I. O fluxograma possui um uma estrutura condicional, que em código poderia ser exposta por:
se n2 = 0 então
escreva (“Impossível imprimir”);
senão
d = n1/n2;
escreva d;
fimse.
 
Porque:
 
II. A tratativa para os números é indiferente, pois na realização da divisão pode-se dividir por qualquer número.
 
Agora, assinale a alternativa correta:
	
	
	
	
		Resposta Selecionada:
	 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
	Resposta Correta:
	 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
	Feedback da resposta:
	Resposta correta. A asserção I é uma proposição verdadeira, pois vemos, claramente, uma estrutura condicional. O mencionado na asserção também está correto, pois realiza a análise dos dados para a possível divisão. A asserção II é uma proposição falsa, pois em cálculos matemáticos, especificamente em divisão de dados, devemos analisar os valores, para que o um número não seja dividido por zero.
	
	
	
Pergunta 5
0,25 em 0,25 pontos
	
	
	
	Realizar a análise de um propósito de um algoritmo é essencial para entender a sua funcionalidade. Dessa forma, é importante analisar linha por linha, em busca de possíveis incoerências no código fonte. Analise o código a seguir:
 
Início
             inteiro: num1, num2;
escreva (“Digite o primeiro número:”);
leia (num1);
escreva (“Digite o segundo número:”);
leia (num2);
se (num1 > num2) então
             escreva (“O maior número é:”, num1);
senão
             escreva (“O menor número é:”, num2);
fimse.
se (num1 = num2) então
             escreva (“Os dois números são iguais”);
fimse.
fimalgoritmo.
 
Analise as afirmativas a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s):
 
I.( ) O algoritmo tem o intuito de realizar a análise com base em uma estrutura condicional, qual número é maior, menor ou igual.
II.( ) Analisando o código exposto, temos a presença de uma estrutura condicional simples e composta.
III.( ) Ao escrever o código apresentado, não seria possível codificar somente indicando a leitura de dados.
IV.( ) O valor lógico de uma operação de comparação, em uma estrutura condicional composta, é somente verdadeiro.
 
Assinale a alternativa que apresenta a sequência correta:
	
	
	
	
		Resposta Selecionada:
	 
V, V, F, F.
	Resposta Correta:
	 
V, V, F, F.
	Feedback da resposta:
	Resposta correta. A afirmativa I é verdadeira, pois analisando o código exposto, verificamos que a funcionalidade do código é averiguar,entre dois números, se um é maior ou menor do que o outro. A afirmativa II é verdadeira, pois analisando o código, verificamos a presença de uma estrutura condicional simples e uma composta pelo trecho: se...então...fimse; e se...então...senão...fimse. A afirmativa III é falsa, pois é possível codificar o problema indicando somente a leitura dos dados. No caso, teríamos o código da seguinte forma: leia (num1, num2). A afirmativa IV é falsa, pois o valor lógico de uma estrutura condicional possui dois valores, sendo um verdadeiro e o outro, positivo.
	
	
	
Pergunta 6
0,25 em 0,25 pontos
	
	
	
	Um algoritmo possui a finalidade de resolver um problema do dia a dia, ou ainda, problemas que podem ser desde fáceis até complexos.  O principal é auxiliar a execução de atividades, de forma automatizada. Analise o algoritmo a seguir:
 
Início
             inteiro: salário, percentual, aumento, novosalario;
leia (salário, percentual);
aumento <- salário * percentual/100;
escreva aumento;
novosalario <- salário + aumento;
escreva (“O novo salário é de:”, novosalario);
fimalgoritmo.
 
Existem várias maneiras de se realizar um mesmo algoritmo, e, no final, o resultado será o mesmo. Considerando o texto, analise as asserções a seguir e a relação proposta entre elas.
 
I. Um comando de saída é utilizado para mostrar os dados na tela ou na impressora, e os dados podem ser conteúdos de variáveis ou mensagens.
 
Porque:
 
II. O comando de saída é representado pela palavra ESCREVA. No código apresentado, temos duas possíveis formas de mostrar os dados.
 
Está correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
	Resposta Correta:
	 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
	Feedback da resposta:
	Resposta correta. A asserção I é verdadeira, pois comandos de saída têm o propósito de realizar a escrita dos dados, podendo ser na tela para o usuário, ou ainda, em uma impressora. A asserção II é verdadeira, pois o comando que representa é a palavra ESCREVA. Analisando o código exposto, podemos ver a utilização de duas formas de escrita de dados: uma já inserindo o valor direto da variável, e a outra, escrevendo um pequeno texto antes de indicar o valor de uma variável.
	
	
	
Pergunta 7
0,25 em 0,25 pontos
	
	
	
	Temos que a finalidade de um computador é receber, manipular e armazenar dados. Considerando-o um gabinete composto de circuitos, cabos e fontes, certamente não possui utilidade alguma. A manipulação de dados no computador é realizada por meio de programas, que realizam cálculos, relatórios e outras funções. Esses programas foram construídos por códigos fonte, com base em uma linguagem de programação. 
 
Assinale a alternativa correta sobre a definição de algoritmo:
	
	
	
	
		Resposta Selecionada:
	 
É uma sequência finita de instruções ou operações cuja execução resolve um problema computacional.
	Resposta Correta:
	 
É uma sequência finita de instruções ou operações cuja execução resolve um problema computacional.
	Feedback da resposta:
	Resposta correta. Um algoritmo pode ser definido como uma sequência de passos para a consecução de um objetivo. Para tanto, é importante o uso de uma lógica para ordenar esses passos definidos pelo algoritmo. Por exemplo, em uma receita de bolo, é importante a ordem da sequência das instruções em relação ao manuseio dos ingredientes, para que o resultado final seja atingido.
	
	
	
Pergunta 8
0,25 em 0,25 pontos
	
	
	
	Uma variável representa uma posição de memória, possuindo nome e tipo, cujo conteúdo pode variar ao longo do tempo. O tipo de variável diz respeito ao tipo de valor que recebe, a partir da entrada de dados. Esses valores são manipulados por variáveis, que também aceitam determinados tipos de dados.
Caso um tipo de dado não seja do tipo da variável, pode haver um erro no algoritmo, por isso, deve-se ficar sempre atento às suas características. 
 
Considerando as informações, analise as afirmativas a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s):
 
I.( ) Um tipo de dado inteiro representa um conjunto de número tanto para valores positivos quanto negativos, não aceitando valores decimais.
II.( ) Para valores que permitem frações, como valores decimais, temos o tipo de dado real, que somente aceita valores positivos.
III.( ) O tipo caractere aceita somente dados do tipo letras e símbolos. Números não são aceitos por esse tipo de dado.
IV.( ) Os dados do tipo lógico, aceitam somente valores do tipo booleano, e podem ter valor lógico verdadeiro ou falso.
 
Assinale a alternativa que apresenta a sequência correta:
	
	
	
	
		Resposta Selecionada:
	 
V, F, F, V.
	Resposta Correta:
	 
V, F, F, V.
	Feedback da resposta:
	Resposta correta. A afirmativa I é verdadeira, pois um inteiro representa um número no conjunto dos números inteiros, tanto positivos como negativos, não contendo partes fracionárias. A afirmativa II é falsa, pois o real representa números dos conjuntos dos números reais, que permitem frações com a adoção de ponto decimal. A afirmativa III é falsa, pois o caractere representa uma letra, um dígito (numérico) ou um símbolo, enquanto a cadeia de caracteres representa um conjunto de caracteres armazenado na memória. A afirmativa IV é verdadeira, pois os dados lógicos representam valores booleanos, como verdadeiro ou falso.
	
	
	
Pergunta 9
0,25 em 0,25 pontos
	
	
	
	Um algoritmo pode ser composto de diversos comandos, sejam eles destinados à atribuição de valores, à execução de um comando de escrita e leitura, e até aos comandos que realizam o processamento de dados para se chegar a um determinado propósito. Alguns exemplos são os comandos de expressões aritméticas e expressões lógicas. 
 
Com base no texto, analise as afirmativas:
 
I – Operadores matemáticos são utilizados para representar, de maneira sintética, uma operação aritmética, para o processamento de cálculos matemáticos.
II –  A função quociente retornará ao valor de resto de uma divisão de número inteiros em uma expressão aritmética.
III – Operadores lógicos são representados por conectivos, como conjunção, disjunção e negação, em que o resultado pode ver verdadeiro ou falso.
IV – Diferentemente da Matemática, nos algoritmos as operações matemáticas não obedecem a uma ordem de prioridade; são realizadas conforme aparecem.
 
É correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
I e III, apenas.
	Resposta Correta:
	 
I e III, apenas.
	Feedback da resposta:
	Resposta correta. A afirmativa I está correta, pois os operadores matemáticos são utilizados para a resolução de cálculos matemáticos, problemas utilizando expressões aritméticas, como adição, subtração, multiplicação e divisão. A afirmativa II está incorreta, pois o que retorna ao resto, em uma expressão aritmética, é a função de resto; a função quociente retorna ao quociente inteiro de uma divisão. A afirmativa III está correta, pois os operadores lógicos são representados por conectivos, como conjunção ( erepresentado, simbolicamente, por ^ ), disjunção ( ou representado, simbolicamente, por v ) e negação ( não ); e possuem um valor final sendo verdadeiro ou falso.
	
	
	
Pergunta 10
0 em 0,25 pontos
	
	
	
	Leia o excerto a seguir:
 “O pseudocódigo ou portugol consiste em analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos a serem seguidos para a resolução do problema”.
 
ASCENCIO, A. F. G.; CAMPOS, E. A. V. de. Fundamentos da Programação de Computadores : Algoritmos, Pascal, C, C++ e Java. 3. ed. São Paulo: Pearson Pratice Hall, 2012. p. 4.
 
Considere o pseudocódigo a seguir:
 
Início
Inteiro: num, r;
ler (num);
r <- resto (num/2);
se r = 0 então
            escreva (“O número é par”);senão
            escreva (“O número é ímpar”);
fimse.
fimalgoritmo.
 
O pseudocódigo é uma forma de representação do algoritmo, de forma similar a uma linguagem de programação. Com base no texto, analise as afirmativas:
 
I – Analisando o pseudocódigo, verificamos a presença de uma estrutura condicional, ou estrutura de seleção composta.
II – Verificamos que o pseudocódigo possui uma estrutura sequencial, com a entrada, processamento e saída dos dados.
III – O pseudocódigo pode ser reaproveitado, e, assim, transformado para as linguagens de programação conhecidas.
IV – O intuito do algoritmo é averiguar se um número lido pela entrada de dados é par ou ímpar, verificando se resto = 0.
 
É correto o que se afirma em:
	
	
	
	
		Resposta Selecionada:
	 
I, II, III e IV.
	Resposta Correta:
	 
I, III e IV, apenas.
	Feedback da resposta:
	Sua resposta está incorreta. A alternativa está incorreta, já que a afirmativa I está correta, pois analisando o pseudocódigo, verificamos a estrutura condicional, ou de seleção, se...entao...senao...fimse, o que define uma seleção composta. A afirmativa II está incorreta, pois o pseudocódigo se utiliza de uma estrutura condicional e não seqüencial. Verificamos isso com base na presença de uma estrutura condicional no código. A afirmativa III está correta, pois o pseudocódigo pode ser reaproveitado para diversas linguagens. Dessa forma, pode-se transformá-los em códigos específicos de uma linguagem, como a orientada a objetos. A afirmativa IV está correta, pois analisando o algoritmo, nota-se que possui como propósito analisar um dado digitado pelo usuário; com base nessa análise, indicar se o número é par ou ímpar.
ASCENCIO, A. F. G.; CAMPOS, E. A. V. de. Fundamentos da Programação de Computadores : Algoritmos, Pascal, C, C++ e Java. 3. ed. São Paulo: Pearson Pratice Hall, 2012. p. 4.

Outros materiais