ESTRUTURAS DE CONTROLE
Introdução à Ciência da Computação
ESTRUTURA SEQUENCIAL E ESTRUTURA SEQUENCIAL E ESTRUTURAS CONDICIONAISESTRUTURAS CONDICIONAIS
1
Estruturas de Controle� ESTRUTURA SEQUENCIAL� ESTRUTURAS CONDICIONAIS
� Estrutura Condicional Simples� Estrutura Condicional Composta� Seleção entre duas ou mais Seqüências de Comandos
� ESTRUTURA DE REPETIÇÃO� Repetição com Teste no Início� Repetição com Teste no Final� Repetição Contada
2
Estruturas de Controle� ESTRUTURA SEQUENCIAL� ESTRUTURAS CONDICIONAIS
� Estrutura Condicional Simples� Estrutura Condicional Composta� Seleção entre duas ou mais Seqüências de Comandos
4
Estrutura Sequencial
� Em uma estrutura sequencial, os passos são tomados em uma sequênciapré-definida.
5
Estrutura SequencialFormas de Representação no Algoritmo
Fluxograma Linguagem Algorítmica
comando 1
comando 2
comando n
comando 1comando 2…..comando n...
7
Exemplo - estrutura sequencialCalcular a área e o perímetro de uma circunferência
dado o valor de seu raio
ler R
programa CIRCUNF
AREA R2
PERIM 2 R
Escrever AREA, PERIM
fim
programaCIRCUNFdeclarações
início
leia (R)
AREA R2
PERIM 2 R
escreva (AREA, PERIM)
fim
ALGORALGOR ÍÍ TMOTMO
πππ
π
declarações
8
Programa CIRCUNF Teste de MesaTeste de Mesa
R=3
ÁREA= 28.274
PERIMETRO=18.850
Executar “na mão” os passos do computador
9
programaCIRCUNF
cabeçalhoDeclarações Globais
inicio
leia( R)
AREA R2
PERIM 2 R
escreva (AREA, PERIM)
fim
// program CIRCUNF# include <stdio.h># include <math.h>
int R;float Area,Perim;
main(){
scanf("%d",&R);Area = 3.1416*pow(R,2);Perim = 2*3.1416*R; printf("%f %f",Area,Perim);getchar();
}
Exemplo - estrutura sequencialCalcular a área e o perímetro de uma circunferência
dado o valor de seu raio
ππ
π
10
Exemplo - estrutura sequencialCalcular a área de um triângulo, dados os comprimentos dos seus lados
ler A, B, C
programa AREATRI
P (A+B+C)/2
AREA
Escrever AREA
fim
( )( )( )( )CPBPAPP −−−
programaAREATRIdeclarações
inicio
leia (A, B, C)
P (A + B + C)/2
AREA
escreva (AREA)
fim
( )( )( )( )CPBPAPP −−−
11
Execução do Programa AREATRI
Primeira Execução
A=3; B=4; C=5
PER=(3+4+5)/2 = 6
AREA= raiz (6*(6-3)*(6-4)*(6-5)) = raiz 36=6
Segunda Execução
A=3; B=4; C=9
PER=(3+4+9)/2 = 8
AREA= raiz (8*(8-3)*(8-4)*(8-9)) = raiz (-160) = ?
12
Execução do Programa AREATRI
� O que acontece é que nem sempre três números reais são comprimentos dos lados de um triângulo.
� Três números só podem ser comprimento dos lados de um triângulo se cada um deles for menor que a soma dos outros dois.
A < B+C e B < (A+C) e C < (A+B)ESTRUTURA DE DECISESTRUTURA DE DECISÃÃOO
14
Estrutura de Decisão
� Uma estrutura de decisão ou estrutura condicional permite a escolha do grupo de ações a ser executado quando determinadas condições, representadas por expressões lógicas, são ou não satisfeitas.
15
Estrutura de Decisão
� ESTRUTURA CONDICIONAL SIMPLES
� ESTRUTURA CONDICIONAL COMPOSTA
� SELEÇÃO ENTRE DUAS OU MAIS SEQUÊNCIAS DE COMANDOS
São de 3 tipos
16
Estrutura Condicional SimplesEstrutura Condicional SimplesFormas de Representação no Algoritmo
Fluxograma
comando
decisão verdadefalso
Linguagem Algoritmica
se<condição> então
<comando>
fim-se
18
Estrutura Condicional Simples
� O comando só será executado se a condição for verdadeira
� a condição deve ser uma expressão lógica
� se mais de um comando deve ser executado quando a condição for verdadeira, esses comandos devem ser transformados em um comando composto.
19
Comando Composto
� Um conjunto de comandos que devem ser executados em uma ordem específica.
� Os comandos devem ficar reunidos entre as chaves { e }
� {comando 1;comando 2; comando 3;
}
Comando composto
20
se<condição> então
<comando1>
senão
<comando2>
fim-se
Estrutura Condicional CompostaEstrutura Condicional CompostaFormas de Representação no Algoritmo
Fluxograma Linguagem Algoritmica
comando 1
decisão verdadefalso
comando 2
22
Estrutura Condicional Composta� Se condição for verdadeira seráexecutado o comando 1 e não seráexecutado o comando 2.
� Se condição for falsa será executado o comando 2 e não será executado o comando 1.
� a condição deve ser uma expressão lógica
23
Estrutura Condicional Composta
� se mais de um comando deve ser executado quando a condição for verdadeira ou quando a condição for falsa, esses comandos devem ser transformados em comandos compostos.
24
SELESELEÇÃÇÃO ENTRE DUAS OU MAIS O ENTRE DUAS OU MAIS SEQUSEQUÊÊNCIAS DE COMANDOSNCIAS DE COMANDOS -
Formas de Representação no Algoritmo
Fluxograma
sequência de comandos 1
expressão
lista devalores1 ….
sequência de comandos N
lista de valoresNsequência de comandos X
valor ≠ listas de valoresvalor =
25
Linguagem Algoritmica
caso<valor da expressão>
igual<lista de valores 1> então<seqüência de comandos 1>
…….
igual<lista de valores N> então<seqüência de comandos N>
senão<seqüência de comandos X>
fim-caso
SELESELEÇÃÇÃO ENTRE DUAS OU MAIS O ENTRE DUAS OU MAIS SEQUSEQUÊÊNCIAS DE COMANDOSNCIAS DE COMANDOS -
Formas de Representação no Algoritmo
27
programaCOND7declaraçõesinicio
ler A, B, Cse(A<B+C) e (B<A+C) e (C<B+A)
entãoinício
P (A+B+C)/2
AREA
escreverAREA
fim
senãoescrever(Os numeros A, B e,C nao formam um triangulo)
fim se
fim
EXEMPLO (condicional composto): Calcular a área de um triangulo dado o comprimento de seus lados
( )( )( )( )CPBPAPP −−−
28
programaCOND1declaraçõesinicio
ler A, B MAIOR Ase(B > A)
entãoMAIOR Bfim seescreverMAIOR
fim
EXEMPLO (condicional simples): Ler dois números inteiros e encontrar o maior deles
29
TROCA DE CONTEÚDO ENTRE DUAS VARIÁVEIS
L
25
M
15memória
1a Idéia L
25
M
15
L ← M M ← L
L
15
M
15
M ← L
L
15
M
15
L ← M
NÃO FUNCIONA para trocar é preciso uma variável auxiliar
L
25
M
15memóriaA
30
Faço uma cópia de L em A A ← L L
25
M
15
A
25
Coloco M no lugar de LL ← M
L
15
M
15
A
25
TROCA DE CONTEÚDO ENTRE DUAS VARIÁVEIS
Coloco o L que estava guardado em A no lugar de M
M ← A L
15
M
25
A
25
32
programaCOND6declaraçõesinicio
ler A, B se(A > B)
entãoinicioAUX AA BB AUX
fimfim seescreverA, B
fim
EXEMPLO (condicional simples): Ler dois números e colocá-los em ordem crescente
33
programaCOND2declaraçõesinicio
ler A, Bse(A > B)entãoinicio
MAIOR AMENOR B
fimsenão inicio
MAIOR BMENOR A
fimfim seescreverMAIOR, MENOR
fim
EXEMPLO: Ler dois números distintos e encontrar o menor e o maior deles
34
EXERCÍCIO: Calcular a data do dia seguinte, dada a data de hoje
� Ano bisexto � fevereiro = 29� dia 30/31 � muda mês� Dez/31/200X � muda ano e mês
Top Related