Buscar

aula9 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 6 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 6 páginas

Prévia do material em texto

Plano	de	Aula:	Estrutura	de	Repetição	-	Conceitos	Iniciais
INTRODUÇÃO	A	PROGRAMAÇÃO	-	CCT0672
Título
Estrutura	de	Repetição	-	Conceitos	Iniciais
Número	de	Aulas	por	Semana
Número	de	Semana	de	Aula
9
Tema
Estrutura	de	Repetição
Objetivos
O	aluno	deverá	ser	capaz	de:
	
·			Compreender	uma	estrutura	de	repetição	e	suas	características.
·			Discernir	quando	uma	estrutura	de	repetição	deve	ser	utilizada	e	criar	algoritmos
que	utilizem	essa	estrutura.
·			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:
	
·			Definição	da	estrutura	de	repetição	e	suas	características.
·			Utilização	dos	operadores	relacionais 	e	dos	operadores	lógicos.
·			Utilização	da	estrutura	de	repetição.
·			Apresentar	o	conceito	do	Teste	de	Mesa.
·			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.	Estrutura	de	Repetição
	
Como	o	próprio	nome	apresenta,	a	estrutura	de	repetição	permite	que	o	algoritmo
repita	determinada	seqüência	de	comandos,	de	acordo	com	um	determinado	critério.
	
Por	exemplo,	é	possível	criar	um	algoritmo	com	100	comandos	de	leitura	de	dados	de
entrada	(comando	leia)	ou	criar	um	algoritmo	que	tenha	somente	um	comando	de
entrada	de	dados	e	que	este	seja	repetido	100	vezes,	dependendo	da	s ituação.
	
Importante	observar	que,	normalmente,	isso	não	afeta	o	resultado	final	do
processamento,	mas	afeta	a	criação	do	algoritmo,	pois 	diminui	sensivelmente	o
tamanho	do	algoritmo	final.
	
O	uso	da	estrutura	de	repetição	necessita	que	seja	identificado	o	critério	de	repetição,
ou	seja,	em	que	condição	o	algoritmo	deve	continuar	repetindo	os	comandos	e	em	que
condição	ele	deve	parar	de	repetir.
	
2.	Operadores	Relacionais	e	Operadores	Lógicos
	
As	condições	utilizadas	na	estrutura	de	repetição	utilizam	os	mesmos	operadores,	
relacionais 	e	lógicos,	utilizados	na	estrutura	de	decisão.
	
3.	Estrutura	de	Repetição:	Comando	enquanto
	
Existem	vários	comandos	que	permitem	a	criação	de	uma	estrutura	de	repetição.	O
comando	enquanto	será	apresentado	em	primeiro	lugar	porque	ele	permite	a	criação
de	estruturas	de	decisão	para	qualquer	s ituação	que	possa	ser	encontrada.	Podemos
dizer	que	ele	é	um	comando	geral	de	repetição.
	
O	comando	enquanto	realiza	o	teste	lógico	da	condição	no	início	da	repetição.
	
Esse	comando	funciona	da	seguinte	forma:	enquanto	uma	determinada	condição	for
verdadeira,	ele	executa	os	comandos	que	devem	ser	repetidos	e	retorna	para	o	teste
da	condição	para	determinar	se	deve	repetir	novamente.	Caso	a	condição	seja	falsa,
ele	interrompe	a	repetição	e	continua	o	fluxo	de	comandos	normalmente.
	
É	importante	observar	que	não	existe	uma	opção	sobre	qual	seqüência	de	comandos
deve	ser	realizada,	mas	s im,	quando	determinados	comandos	devem	ser	repetidos.
Não	é	o	conceito	de	“seguir	um	caminho	ou	outro”	dentro	do	algoritmo.	Isso	diferencia
a	estrutura	de	repetição	da	estrutura	de	decisão.
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Repeticao1.jpg enquanto	(CONT	<	100)	faça
leia	(NUM);
SOMA	ß	SOMA	+	NUM;
CONT	ß	CONT	+	1;
fim_enquanto
	
	
Existem	alguns	detalhes	importantes	a	serem	observados	nesse	comando:
	
·			Os	comandos	que	estão	no	“lado	S”	do	comando	enquanto,	são	aqueles	que
serão	repetidos.	No	exemplo	acima,	um	comando	leia	e	dois 	comandos	de
atribuição	de	valores.
·			A	condição	para	repetição	é	a	seguinte:	enquanto	a	variável	CONT	apresentar
valor	menor	do	que	100,	os	comandos	devem	ser	repetidos.
·			Na	prática	acontece	o	seguinte:	é	realizado	o	teste	lógico	para	determinar	se	a
condição	é	verdadeira.	Se	a	condição	for	verdadeira	ele	executa	os	comandos	que
estão	no	“lado	S”	e	volta	para	o	teste	lógico	da	condição.	Caso	continue
verdadeiro,	repete	e	testa	novamente,	caso	a	condição	se	apresente	como	falsa,
ele	interrompe	a	repetição	(“vai	para	o	lado	‘N’”)	e	continua	a	seqüência	normal	de
comandos.
·			Por	permitir	que	o	fluxo	de	execução	dos	comandos	volte	para	um	ponto	anterior
do	programa,	algumas	pessoas	denominam	esse	comando	de	laço	de	repetição
(ou	loop	de	repetição).
·			Essa	maneira	de	utilizar	a	estrutura	de	repetição	depende	do	conhecimento,	por
parte	de	quem	vai	criar	o	algoritmo,	da	quantidade	de	vezes	que	os	comandos
serão	repetidos.
·			Existem	outras	maneiras	de	utilizar	a	estrutura	de	decisão.	Elas	serão	vistas
posteriormente.
	
Como	exemplo,	observe	o	algoritmo	abaixo	que	deve	ler	100	números,	somá-los	e
apresentar	o	resultado	da	soma.
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Repeticao2.jpg
	
	
programa	REPETICAO
var
inteiro	CONT;
real	NUM,	SOMA;
inicio
CONT	ß	0;
SOMA	ß	0;
enquanto	(CONT	<	100)	faça
leia	(NUM);
SOMA	ß	SOMA	+	NUM;
CONT	ß	CONT	+	1;
fim_enquanto
escreva	(SOMA);
fim
	
	
Existem	alguns	detalhes	importantes	a	serem	observados	nesse	algoritmo:
	
·			A	variável	CONT	funcionará	como	um	contador	de	vezes	que	foi	realizada	a
repetição	(ou	seja,	a	quantidade	de	números	que	foram	digitados).	Por	esse
motivo,	é	necessário	repetir	o	comando	CONT	ß	CONT	+	1,	para	que,	a	cada	vez
que	for	realizada	uma	repetição	seja	acrescentado	1	ao	valor	da	variável
contadora.
·			No	início	do	algoritmo	é	atribuído	o	valor	zero	para	a	variável	CONT	porque	a
contagem	deve	iniciar	com	algum	valor	e	como	ainda	não	houve	nenhuma	repetição
o	valor	deve	ser	zero.	Por	esse	motivo,	o	teste	lógico	realizado	no	comando
enquanto	é	CONT	<	100.
·			O	comando	SOMA	ß	SOMA	+	NUM	permite	somar	o	valor	que	foi	lido	pelo	comando
leia	(variável	NUM)	ao	valor	atual	da	variável	SOMA	e	acumular	esse	valor	na
própria	variável	SOMA.	Essa	variável	é	utilizada	como	um	acumulador	de	valores.
·			A	variável	SOMA	também	recebe	no	início	do	algoritmo,	como	atribuição,	o	valor
zero,	porque	ao	iniciar	o	programa,	como	nenhum	dado	foi	digitado,	a	soma	dos
valores	vale	zero.
·			Ao	terminar	a	repetição	(condição	falsa),	o	próximo	comando	a	ser	executado	é	o
comando	escreva	(SOMA).
·			Observe	que	somente	os	comandos	que	estão	no	“lado	S”	do	comando	enquanto
serão	repetidos.	Os	outros	comandos	serão	executados	somente	uma	vez.
	
Essa	estrutura	de	repetição	poderia	ser	conhecida	como	Repetição	Controlada	por
um	Contador.
	
4.		Teste	de	Mesa
	
Nem	sempre	será	possível	ter	em	mão	ferramentas	computacionais 	para	testar	os
algoritmos.	Nessa	s ituação,	é	necessário	testar	o	programa	utilizando	apenas	“papel
e	caneta”,	ou	seja,	s imular	o	funcionamento	do	programa	no	papel.
	
Essa	s imulação	recebe	o	nome	de	Teste	de	Mesa.
	
Observe	o	que	deve	ser	feito	para	que	o	Teste	de	Mesa	seja	realizado	(vamos	utilizar	o
algoritmo	acima	como	exemplo):
	
·			Em	primeiro	lugar,	crie	uma	tabela	onde	cada	linha	tenha	o	nome	de	uma	das
variáveis 	do	algoritmo.	Todas	as	variáveis 	devem	ser	colocadas	na	tabela.	No
exemplo:	CONT,	NUM	e	SOMA.
·			Observe	se	a	quantidade	de	vezes	que	se	deseja	repetir	é	alta.	Se	for,	altere	para
uma	quantidade	menor,	e	possível	de	ser	testada	em	um	tempo	razoável.	No
exemplo,	o	algoritmo	pretende	repetir	as	operações	100	vezes,	então
diminuiremos	(somente	para	efeito	de	teste)	essa	quantidade	para	4.
·			Toda	entrada	de	dados	(comando	leia)	indica	que	um	valor	será	inserido	pelo
usuário,	ou	seja,	não	é	possível	determinar	qual	será	esse	valor,	então,	cada	vez
que	um	comando	leia	for	encontrado	é	necessário	determinar	um	valor	qualquer
para	a	variável	de	entrada	(“chutar	o	valor”).	No	exemplo,	como	adotamos	repetir	4
vezes,	serão	lidos	4	números,	que	podem	ser	5,	6,	2	e	4.
·			Seguir	o	fluxograma	comando	por	comando,	do	início	até	o	fim,	fazendo	o	que	os
comandos	determinam	que	deve	ser	feito	e	seguindo	sempre	as	setas	de	fluxo	de
comandos.	Só	parar	o	teste	quando	encontrar	o	comando	fim.
·			Cada	vez	que	ocorrer	um	comando	de	entrada	de	dados	ou	de	atribuição	de	valor,
na	tabela,	alterar	o	valor	da	variável	utilizada	pelo	comando.	Lembre	que	esses
comandos	substituem	o	valor	anteriormentearmazenado	na	variável.
·			Quando	ocorrerem	comandos	que	tenham	condições	a	serem	testadas,	testar	a
condição	e	descobrir	por	qual	fluxo	seguir	(“lado	S”	ou	“lado	N”).	Comandos	de
apresentação	de	dados	(comando	escreva)	apresentam	o	conteúdo	da	variável
correspondente.
·			Chegando	ao	final	do	algoritmo,	conferir	se	foram	apresentados	os	resultados
corretos	(esperados).
·			Com	isso	é	possível	garantir	que	o	algoritmo	funciona	corretamente.
	
Exemplo	de	Teste	de	Mesa	(levando	em	consideração	o	programa	exemplo	anterior):
	
CONT 0 1 2 3 4
NUM 5 6 2 4 	
SOMA 0 5 11 13 17
	
5.		Repetição	com	Limite	do	Contador	Determinado	pelo	Usuário
	
Em	algumas	s ituações,	quem	cria	o	algoritmo	não	sabe	a	quantidade	de	vezes	que	os
comandos	devem	ser	repetidos,	mas	ela	pode	solicitar	que	o	usuário	determine	a
quantidade	de	vezes,	por	intermédio	de	um	comando	leia.
	
Fluxograma Pseudocódigo
Figura:	arquivo	anexo	Fluxo_Repeticao3.jpg
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
programa	REPETICAO
var
inteiro	CONT,	QTD;
real	NUM,	SOMA;
inicio
CONT	ß	0;
SOMA	ß	0;
leia	(QTD);
enquanto	(CONT	<	QTD)	faça
leia	(NUM);
SOMA	ß	SOMA	+	NUM;
CONT	ß	CONT	+	1;
fim_enquanto
escreva	(SOMA);
fim
	
Obs:	Os	comandos	serão	repetidos
QTD	vezes.
	
6.	Comandos	da	Linguagem	de	Programação
	
Abaixo	uma	tabela	de	correspondência	de	comandos:
	
Comando	Pseudocódigo Comando	Linguagem	C++
	
b)	Comando	de	repetição:
	
enquanto	(CONT	<	100)	faça
leia	(NUM);
SOMA	ß	SOMA	+	NUM;
CONT	ß	CONT	+	1;
fim_enquanto
	
	
	
while	(CONT	<	100)
{
cin	>>	NUM;
SOMA	=	SOMA	+	NUM;
CONT	=	CONT	+	1;
}
	
	
Aplicação	Prática	Teórica
Lista	de	exercícios
	
Arquivo	anexo:	Lista	de	Exercícios	VI.doc

Outros materiais