Buscar

aula8 esttacio

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

Prévia do material em texto

Plano	de	Aula:	Condições	compostas
INTRODUÇÃO	A	PROGRAMAÇÃO	-	CCT0672
Título
Condições	compostas
Número	de	Aulas	por	Semana
Número	de	Semana	de	Aula
8
Tema
Estrutura	de	decisão	-	condições	compostas
Objetivos
O	aluno	deverá	ser	capaz	de:
	
·									Utilizar	os	operadores	lógicos	para	tratar	condições
compostas	em	estruturas	de	decisão.
·									Discernir	sobre	quais	algoritmos	estão	sujeitos	ao	uso
desse	comando	alternativo.
·									Resolver	exercícios	que	necessitem	do	uso	de
estruturas	de	decisão	com	condições	compostas.
·									Utilizar	comandos	de	uma	linguagem	de	programação
para	implementação	de	algoritmos,	na	forma	de
programas	de	computador	(Laboratório).
Estrutura	do	Conteúdo
Conteúdos:
	
Desenvolver:
	
·									Apresentação	dos	operadores	lógicos	(e,	ou	e	não).
·									Apresentação	do	comando	se	utilizando	operadores	lógicos,
para	tratar	condições	compostas.
·									Resolução	de	exercícios	com	estrutura	de	decisão	com
condições	compostas.
·									Apresentação	de	comandos	da	linguagem	de	programação,
correspondentes	aos	comandos	utilizados	nos	algoritmos.
·									Desenvolvimento	de	programas	com	a	linguagem	de
programação.
	
Conceitos:
	
1.				Operadores	Lógicos
	
Existem	 situações	 onde	 é	 necessário	 utilizar	 mais	 do	 que
uma	condição	em	um	único	comando	se.
Nessas	situações	é	necessário	utilizar	algum	operador	para
“ligar”	 essas	 duas	 condições	 e	 dar	 sentido	 ao	 teste	 lógico
que	está	sendo	realizado.	Esse	operador	recebe	o	nome	de
Operador	Lógico.
Esses	 operadores	 vieram	diretamente	 da	 Álgebra	 Booleana
(criada	por	George	Boole	no	século	XIX).
Nos	algoritmos	são	utilizados	três	operadores	lógicos:	e,	ou
e	não.
	
2.				Operador	Lógico	e
	
O	 operador	 lógico	 e	 segue	 o	 seguinte	 conceito:	 uma
afirmação,	 composta	 por	 várias	 afirmações	 intermediárias,
só	será	verdadeira	se	TODAS	 as	afirmações	 intermediárias
forem	verdadeiras.
No	 caso	 dos	 algoritmos	 não	 existem	 afirmações,	mas	 sim
condições	a	serem	testadas	e	que	podem	ter	como	resposta
“sim”	ou	“não”.	A	idéia	é	a	mesma:	uma	condição,	composta
por	 várias	 condições,	 só	 será	 verdadeira	 se	 TODAS	 as
condições	forem	verdadeiras.
A	partir	 disso	 é	 possível	 criar	 uma	 tabela	 (conhecida	 como
Tabela	Verdade):
	
Condição1 Condição2 Condição	Composta:Condição1	e	Condição2
N N N
N S N
S N N
S S S
	
Obs:	A	regra	é	a	mesma	quando	houver	mais	do	que	duas
condições.
	
Para	 exemplificar,	 vejamos	 a	 situação	 onde	 é	 necessário
descobrir	se	um	determinado	valor	está	dentro	de	uma	faixa
de	valores	entre	0	e	100:
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Decisão6.jpg
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
se	(VALOR	>=	0)	então
se	(VALOR	<=	100)
então
escreva	(“Valor
dentro	da	faixa”);
senão
escreva	(“Valor	fora
da	faixa”);
fim_se
senão
escreva	(“Valor	fora	da
faixa”);
fim​_se
	
Observe	 que	 temos	 somente	 duas	 opções	 de	 mensagem
para	 apresentar	 e	 para	 que	 uma	 delas	 seja	 apresentada
(mensagem	 “Valor	 dentro	 da	 faixa”),	 as	 duas	 condições
devem	ser	verdadeiras.	Para	a	outra	mensagem	(“Valor	fora
da	faixa”),	qualquer	condição	que	seja	falsa,	serve	para	que
ela	seja	apresentada.
Isso	 é	 exatamente	 o	 que	 apresenta	 a	 Tabela	 Verdade	 do
operador	 lógico	e.	 Sendo	assim,	 essa	mesma	estrutura	de
decisão	poderia	ser	feita	da	seguinte	forma.
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Decisão7.jpg
	
	
	
	
	
	
	
se	(VALOR	>=	0	e	VALOR	<=	100)	
	
	
	
	
	
	
	
	
escreva	(“Valor	dentro	da	faixa”);
senão
escreva	(“Valor	fora	da	faixa”);
fim_se
	
3.				Operador	Lógico	ou
	
O	 operador	 lógico	 ou	 segue	 o	 seguinte	 conceito:	 uma
afirmação,	 composta	 por	 várias	 afirmações	 intermediárias,
só	será	falsa	se	TODAS	as	afirmações	intermediárias	forem
falsas.
No	caso	dos	algoritmos:	uma	condição,	composta	por	várias
condições,	 só	 será	 falsa	 se	 TODAS	 as	 condições	 forem
falsas.
A	partir	 disso	 é	 possível	 criar	 uma	 tabela	 (conhecida	 como
Tabela	Verdade):
	
Condição1 Condição2 Condição	Composta:Condição1	ou	Condição2
N N N
N S S
S N S
S S S
	
Obs:	A	regra	é	a	mesma	quando	houver	mais	do	que	duas
condições.
	
Para	 exemplificar,	 vejamos	 a	 situação	 onde	 é	 necessário
descobrir	 se	 uma	 determinada	 pessoa	mora	 no	 estado	 de
“SP”	ou	no	estado	“RJ”:
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Decisão8.jpg
	
	
	
	
	
	
	
	
	
	
se	(ESTADO	=	“SP”)	então
escreva	(“É	paulista	ou	carioca”);
senão
se	(ESTADO	=	“RJ”)	então
escreva	(“É	paulista	ou	carioca”);
senão
	
	
	
	
	
	
	
escreva	(“Não	é	paulista,	nem
carioca”);
fim_se
fim_se
	
Observe	 que	 temos	 somente	 duas	 opções	 de	 mensagem
para	 apresentar	 e	 para	 que	 uma	 delas	 seja	 apresentada
(mensagem	 “Não	 é	 paulista,	 nem	 carioca”),	 as	 duas
condições	 devem	 ser	 falsas.	 Para	 a	 outra	 mensagem	 (“É
paulista	ou	carioca”),	qualquer	condição	que	seja	verdadeira,
serve	para	que	ela	seja	apresentada.
Isso	 é	 exatamente	 o	 que	 apresenta	 a	 Tabela	 Verdade	 do
operador	lógico	ou.	Sendo	assim,	essa	mesma	estrutura	de
decisão	poderia	ser	feita	da	seguinte	forma.
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Decisão9.jpg
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
se	(ESTADO	=	“SP”	ou	ESTADO	=	“RJ”)
então
escreva	(“É	paulista	ou	carioca”);
senão
escreva	(“Não	é	paulista,	nem
carioca”);
fim_se
	
4.				Operador	Lógico	não
	
O	 operador	 lógico	 não	 segue	 o	 seguinte	 conceito:	 uma
afirmação	 verdadeira	 se	 torna	 falsa	 com	 o	 uso	 desse
operador.
No	 caso	 dos	 algoritmos:	 uma	 condição	 será	 considerada
falsa,	 caso	 for	 verdadeira.	 E	 vice-versa.	 Isso	 é	 utilizado
quando	necessitamos	“inverter”	a	lógica,	ou	seja,	mantemos
a	 condição	 testada,	 mas	 necessitamos	 que	 o	 tratamento
dado	a	ela	pelo	algoritmo	seja	o	inverso	do	que	normalmente
seria	(em	relação	a	ser	verdadeira	ou	falsa).
A	partir	 disso	 é	 possível	 criar	 uma	 tabela	 (conhecida	 como
Tabela	Verdade):
	
Condição1 Condição	Composta:não	Condição1
N S
S N
	
Para	 exemplificar,	 vejamos	 a	 situação	 onde	 é	 necessário
apresentar	uma	mensagem	de	boas	vindas	para	as	pessoas
que	 forem	 de	 qualquer	 estado,	 menos	 para	 aquelas	 que
forem	de	“SP”.
	
Fluxograma Pseudocódigo
Figura:	 arquivo	 anexo
Fluxo_Decisão10.jpg
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
se	(ESTADO	<	>	“SP”)	então
escreva	(“Seja	bem	vindo!”);
fim_se
	
Observe	 que	 o	 comando	 se	 testa	 uma	 condição	 de
desigualdade.	 Algumas	 pessoas	 não	 estão	 acostumadas	 a
trabalhar	 com	 esse	 tipo	 de	 pergunta,	 portanto	 é	 possível
trabalhar	 com	 igualdade,	 apenas	 invertendo	 a	 lógica.	 Para
isso,	temos	de	usar	o	operador	lógico	não.
Isso	 é	 exatamente	 o	 que	 apresenta	 a	 Tabela	 Verdade	 do
operador	 lógico	não.	 Sendo	 assim,	 essa	mesma	 estrutura
de	decisão	poderia	ser	feita	da	seguinte	forma.
	
Fluxograma Pseudocódigo
Figura:	 arquivo	 anexo
Fluxo_Decisão11.jpg
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
se	(não	ESTADO	=	“SP”)	então
escreva	(“Seja	bem	vindo!”);
fim_se
	
Obs:	O	que	pode	ser	percebido	é	que	o	uso	dos	operadores
lógicos	 é	 opcional.	 O	 seu	 uso	 auxiliará	 a	 simplificar	 o
algoritmo	 (menor	número	de	comandos),	o	que	é	bastante
interessante,	mas	não	influenciará	no	resultado	final	gerado
pelo	algoritmo.
	
5.				Comandos	da	Linguagem	de	Programação
	
Abaixo	uma	tabela	de	correspondência	de	comandos:
	
Comando	Pseudocódigo Comando	Linguagem	C++
	
a)	Operadores	Lógicos:
	
Operador	e
	
se	(VALOR	>=	0	e	VALOR	<=	100)	então
escreva	(“Valor	dentro	da	faixa”);
senão
escreva	(“Valor	fora	da	faixa”);
fim_se
	
	
	
	
	
	
	
	
	
&&
	
if	(VALOR	>=	0	&&	VALOR	<=	100)
{
cout	<<	“Valor	dentro	da	faixa”;
	
}
else
{
cout	<<	“Valor	fora	da	faixa”;
	
}
	
	
Operador	ou
	
se	(ESTADO	=	“SP”	ou	ESTADO	=	“RJ”)	então
escreva	(“É	paulista	ou	carioca”);
senão
escreva	(“Não	é	paulista,	nem	carioca”);
fim_se
	
	
	
|	|
	
if	(ESTADO	=	=	‘S’	||	ESTADO	=	=	‘R’)
{
cout	<<	“É	paulista	ou	carioca”;
}
else
{
cout	<<	“Não	é	paulista,	nem	carioca”;
}
	
Obs:	 ‘S’	 corresponde	 a“SP”	 e	 ‘R’
corresponde	a	“RJ”
	
	
Operador	não
	
se	(não	ESTADO	=	“SP”)	então
escreva	(“Seja	bem	vindo!”);
fim_se
	
	
!
	
if	(!(ESTADO	=	=	‘S’))
{
cout	<<	“Seja	bem	vindo!”;
}
	
Obs:	‘S’	corresponde	a	“SP”
	
	
Aplicação	Prática	Teórica
Lista	de	exercícios
	
Arquivo	Lista	de	Exercícios	V.doc

Outros materiais