Estruturas Básicas
João Medeiros
FATERN 2010.2
Estruturas Básicas de
Controle
• Seqüencial: conjunto de comandos separados que são
executados em uma seqüência linear de cima para baixo.
• Seleção, Condicional ou de Decisão: a partir de um
teste condicional, uma instrução, ou um conjunto de
instruções, podem ser executados ou não, dependendo
exatamente do resultado do teste efetuado.
• Repetição: uma instrução ou o conjunto de instruções
que será executado repetidamente, de acordo com o
resultado de um teste condicional ou de uma contagem.
Na estrutura seqüencial os comandos de um algoritmo são
executados numa seqüência pré-estabelecida. Cada comando é
executado somente após o término do comando anterior. Os comandos
deverão ser executados numa seqüência linear, seguindo-se o texto
Estrutura Seqüencial
em que estão escritos, de cima para baixo, se não houver indicação
em contrário (vide Figura 24).
Figura 24 - Estrutura Sequencial
Nesta estrutura da Figura 24, o comando-3 somente será executado
após o comando-2 e o comando-2 após o comando-1 e assim por
Estrutura Condicional
• É a mais utilizada.
• Tipos:
• Condicional Simples
• Condicional Composta
• Condicional Múltipla
HXLUHLjSUDLD´$UHSUHVHQWDomRGHVVDFRQGLomRHPXPÀX[RJUDPD
VHULD DOJR FRPR QD )LJXUD 1HVWD PHVPD ¿JXUD R H[HPSOR GH
Condicional Simples
XVRGRÀX[RJUDPDPRVWUDTXHVHR7HPSRIRULJXDODVRODFRQGLomR
p YHUGDGHLUD 9 H R FRPDQGR ³YRX j SUDLD´ VHUi H[HFXWDGR 6H D
condição não for verdadeira, o comando não será executado.
)LJXUD±0RGHOR)OX[RJUDPDH([HPSORSDUD(VWUXWXUD&RQGLFLRQDO6L
Em linguagem algorítmica, a sintaxe para esse tipo de es
Se <condição> então
FRPDQGR!
FRPDQGR!
FRPDQGR1!
Fimse
Exemplo:
SeLGDGHentão
HVFUHYD³(VWDSHVVRDpPHQRUGHLGDGH´
¿PVH
)LJXUD±0RGHOR)OX[RJUDPDH([HPSORSDUD(VWUXWXUD&RQGLFLRQDO6LPSOHV
Onde, se a <condição> for verdadeira será executado os c
do bloco, que pode ser apenas um ou vários c
Em linguagem algorítmica, a sintaxe para esse tipo de estrutura dentro
é:
(<comando-1>...<comando-2>. Como mencionado anterio
Se <condição> então
FRPDQGR!
<condição> é uma expressão lógica. No caso do exemplo, a
será apresentada ao usuário, se a idade for menor que 18.
FRPDQGR!
FRPDQGR1!
35
Então.....Senão”. Dessa forma, além de executar se a condição for
Verdadeira (V), a decisão composta também vai executar algo se a
condição for Falsa (F). Ou seja, a seleção composta sempre executará
Condicional Composta
um bloco condicional, pois se o resultado do teste condicional for
YHUGDGHLUR XP FRQMXQWR GH LQVWUXo}HV RX VRPHQWH XPD LQVWUXomR
será executada e se o resultado não for verdadeiro (for falso) uma
outra instrução ou conjunto delas será executada também. Agora,
• Na estrutura condicional composta, a condição irá
determinar
qual comando ou bloco de comandos será
VHUiXPFDPLQKRRXRXWURQXQFDRVGRLVEORFRVGHLQVWUXo}HVVHUmR
H[HFXWDGRV (Pdentre
GHVFULomRdois
QDUUDWLYD
VHULD DOJRNa
GR JrQHUR
³Se ¿]HUsimples
executado
listados.
estrutura
sol entãoHXLUHLjSUDLDsenão eu irei ao shopping”. A representação
temos
“Se.....Então”,
nesta
caso
teremos
“Se.....
GHVVDFRQGLomRHPXPÀX[RJUDPDVHULDDOJRFRPRQD)LJXUD
Então.....Senão”.
Introdução à Programação
Condicional Composta
Aninhada
¿PVH
8PH[HPSORGHXVRGHVVHWLSRGHHVWUXWXUDVHULD
AlgoritmoH[HPSOR
varLGDGHLQWHLUR
inicio
escreva³,QIRUPHVXDLGDGH³
leiaLGDGH
seLGDGHentão
escreva³9RFrpGHPHQRU´
senão seLGDGH! HLGDGHentão
escreva³9RFrpMRYHP´
senão seLGDGH! HLGDGHentão
escreva³9RFrpDGXOWR´
senão seLGDGH! então
escreva³9RFrpYHOKR´
¿PVH
¿PVH
¿PVH
¿PVH
¿PDOJRULWPR
Estrutura Condicional
Múltipla
escolha <seletor>
caso<exp1> <seqüência-de-comandos-1>
caso <exp2> <seqüência-de-comandos-2> ...
outrocaso <seqüência-de-comandos-extra>
fimescolha
H[SUHVV}HVSUHVHQWHVHPFDGDFDVR4XDQGRXPDLJXDOGDGHRFRUUHU
a seqüência de comandos correspondente é executada e apenas ela.
Estrutura Condicional
Múltipla
6HQHQKXPFDVRDWHQGHUDVHOHomRRWUHFKRGHQRPLQDGR³RXWURFDVR´
é executado (ou seja, a seqüência de comandos extra). Vejamos um
exemplo. Suponha um trecho de programa para selecionar o mês
do ano. Sendo que 1 é janeiro, 2 é fevereiro, 3 é março e assim por
diante.
No exemplo acima, vai ser realizada uma comparação de igualdade
SDUDLGHQWL¿FDUTXDORSomRWHPRPHVPRYDORUGRVHOHWRU&DVRWRGDV
DVFRQGLo}HVVHMDP)H[HFXWDVHR³RXWURFDVR´VHHVWHH[LVWLUXPD
vez que ele é uma parte opcional do comando) ou sai-se da estrutura
sem executar nada. Se a igualdade for encontrada, vai ser executada
Exercícios
1) Leia um número inteiro e mostre uma mensagem indicando se este número é
par ou ímpar (pra calcular se é par ou ímpar, use a função MOD).
2) Leia 3 notas, calcule a média aritmética dessas e, de acordo com o resultado,
escreva como saída o valor da média e a mensagem apropriada: Reprovado (média
< 4), Em Prova Final (média >= 4 e < 7) e Aprovado (média >= 7).
3) Leia a idade de um nadador e exiba sua categoria segundo as regras: Junior (5
até 7 anos); Infantil (8 até 12 anos); Pré (13 até 18) e Avançada ( Idade > 18)
4) Desenvolva um algoritmo que funcione como uma calculadora, com as quatro
operações básicas: adição, subtração, multiplicação e divisão. Para isso, deve ser
pedido ao usuário o primeiro número, o sinal da operação e o segundo número.
Dê uma mensagem se o sinal digitado não for um dos quatro presentes na
calculadora e lembre que não existe número divisível por zero.
Download

JOãO MEDEIROS FATERN 2O1O.2