Upload
internet
View
125
Download
2
Embed Size (px)
Citation preview
Módulo 2
1 2 3 4 5 6 7 8 9 1
1 Mecanismos de decisão binária e múltipla2 Mecanismos de repetição condicionada
Programação e Sistemas de Informação
Índice
• Mecanismos de Controlo de Execução
Módulo 2
1 2 3 4 5 6 7 8 9 2
1 Mecanismos de decisão binária e múltipla
BINÁRIA
Estruturas de
DECISÃO ou
SELEÇÃO
1
MÚLTIPLA
SEENTÃOSENÃO
SEENTÃO
CASO
Módulo 2
1 2 3 4 5 6 7 8 9 3
1 Mecanismos de decisão binária e múltipla
• Estruturas de decisão/seleção binária – SE-ENTÃO-SENÃO– SE-ENTÃO
• Permitem a seleção entre duas alternativas dependendo de uma condição/expressão.
• SE-ENTÃO[-SENÃO]– É avaliada a condição/expressão
• Se o seu valor for verdadeiro, é apenas executado o primeiro bloco de instruções – instruções_v.
• Se o valor da condição é falso é executado apenas o segundo bloco de instruções – instruções_f.
1
SE «condição»ENTÃO «instruções_v»;[SENÃO «instruções_f»;]FIM SE
Sintaxe
Módulo 2
1 2 3 4 5 6 7 8 9 4
1 Mecanismos de decisão binária e múltipla
• SE-ENTÃO-SENÃO
1
Processo alternativa VERDADEI
RA
ENTER
Avaliação de uma
CONDIÇÃO Processo
alternativa FALSA
SEGUIR PARA A AÇÃO SEGUINTE
VERDADEIRA
FALSA
Módulo 2
1 2 3 4 5 6 7 8 9 5
1 Mecanismos de decisão binária e múltipla
• SE-ENTÃO
1
Processo alternativa VERDADEI
RA
VERDADEIRA
Avaliação de uma
CONDIÇÃO
SEGUIR PARA A AÇÃO SEGUINTE
FALSA
ENTER
Módulo 2
1 2 3 4 5 6 7 8 9 6
1 Mecanismos de decisão binária e múltipla
• If-Then-ElseSintaxe:
If (condição) Then
instrução1;[Else
instrução2; ]
• Em Pascal
• if – elseSintaxe:
if (condição)
instrução1;[ else instrução2; ]
• Em C
Em C, existe também oOPERADOR CONDICIONAL ?
condição ? instrução1 : instrução2
1
Módulo 2
1 2 3 4 5 6 7 8 9 7
1 Mecanismos de decisão binária e múltipla SE «condição1» ENTÃO
SE «condição2» ENTÃO
SE «condição3» ENTÃO
«instrução1»;SENÃO
«instrução2»;FIM SE
SENÃO«instrução3»;
FIM SESENÃO
«instrução4»;FIM SE
• SE-ENTÃO-SENÃO ENCADEADOS
1
Módulo 2
1 2 3 4 5 6 7 8 9 8
1 Mecanismos de decisão binária e múltipla Variável N: inteiro
InícioEscrever (“Introduza um inteiro”)Ler (N)Se N>0 então
Escrever (“Positivo!”)senão
Se N<0 entãoEscrever
(“Negativo!”)senão
Escrever (“Nulo!”)
fim sefim seFim
• Exemplo 1
1
Dado um número introduzido pelo utilizador, verificar se é positivo, negativo ou nulo.
Módulo 2
1 2 3 4 5 6 7 8 9 9
1 Mecanismos de decisão binária e múltipla
Variáveis A, B, C: inteirosInícioEscrever (“Introduza tres inteiros”)Ler (A, B, C)Se A<B então
Se A<C entãoSe B<C então Escrever
(A, B, C)senão Escrever (A, C,
B)fim se
senão Escrever (C, A, B)fim se
senãoSe B<C então
Se A<C então Escrever (B, A, C)
senão Escrever (B, C, A)
fim sesenão Escrever (C, B, A)fim se
fim seFim
• Exemplo 2
1
Ordenar três números introduzidos pelo utilizador.
Módulo 2
1 2 3 4 5 6 7 8 9 10
1 Mecanismos de decisão binária e múltipla
• Estruturas de decisão/seleção múltipla – CASO
• Esta estrutura permite a escolha de várias alternativas.
1
SELECIONAR CASO «variavel»«valor1»: «instruções1»;«valor2»: «instruções2»;...[SENÃO «instruções_n»]FIM SELECIONAR
Sintaxe
Módulo 2
1 2 3 4 5 6 7 8 9 11
1 Mecanismos de decisão binária e múltipla
• CASO
1
Processo alternativa OPÇÃO1
ENTER
OPÇÃO_1
SEGUIR PARA A AÇÃO SEGUINTE
Verificação de um
VALOR
OPÇÃO_2Processo
alternativa OPÇÃO2
Processo alternativa OPÇÃO3
Processo alternativa OPÇÃON
OPÇÃO_3
OPÇÃO_N
…
Módulo 2
1 2 3 4 5 6 7 8 9 12
1 Mecanismos de decisão binária e múltipla
Sintaxe:Case «variável» Of
«valor1»: «instruções1»;
«valor2»: «instruções2»;
...[Else
«instruçõesn» ]End
1
• Case-Of
• Em Pascal
Módulo 2
1 2 3 4 5 6 7 8 9 13
1 Mecanismos de decisão binária e múltipla
BREAKPermite parar a instrução
imediatamente a seguir a um switch • switch
• Em C
Sintaxe:switch (variavel) {
case «valor1»: «instruções1»; [break;]
case «valor2»: «instruções2»; [break;]
…[ default: «instruções»; ]
}
1
Módulo 2
1 2 3 4 5 6 7 8 9 14
2 Mecanismos de repetição condicionada• Mecanismos de repetição/CICLOS
Um ciclo é constituído por uma sequência de instruções e por uma estrutura, que controla a execução dessas instruções.
2
CONDICIONAL
Estruturas de
REPETIÇÃO
INCONDICIONAL
ENQUANTOFAZER
REPETIRATÉ
PARAATÉFAZER
Módulo 2
1 2 3 4 5 6 7 8 9 15
2 Mecanismos de repetição condicionada
• Estruturas de repetição baseadas numa condição– ENQUANTO-FAZER– REPETIR-ATÉ
• Possibilitam a repetição da execução de uma ou várias instruções, enquanto uma determinada condição, do tipo lógico, tiver valor verdadeiro.
Sintaxe
2
Módulo 2
1 2 3 4 5 6 7 8 9 16
2 Mecanismos de repetição condicionada
• ENQUANTO-FAZER– Esta estrutura
permite repetir uma ou várias instruções, enquanto uma determinada condição do tipo lógico, tenha valor verdadeiro.
ENQUANTO «condição»FAZER «instrução1»;
...
«instruçãoN»;]
Sintaxe
2
Módulo 2
1 2 3 4 5 6 7 8 9 17
2 Mecanismos de repetição condicionada
• REPETIR-ATÉ– Esta estrutura permite
repetir uma ou várias instruções, até que uma determinada condição do tipo lógico, tenha valor verdadeiro.
– Ao contrário da estrutura enquanto são executadas as instruções incluídas no corpo do ciclo e, só depois é verificada a condição/expressão.
SintaxeREPETIR
«instrução1»;...
«instruçãoN»;ATÉ «condição»
2
Módulo 2
1 2 3 4 5 6 7 8 9 18
1 Mecanismos de decisão binária e múltipla
• ENQUANTO-FAZER
Instruções 1;
Instruções 2;...
ENTER
SEGUIR PARA A AÇÃO SEGUINTE
VERDADEIRA
FALSA
2
Avaliação de uma
CONDIÇÃO
Módulo 2
1 2 3 4 5 6 7 8 9 19
1 Mecanismos de decisão binária e múltipla
• REPETIR-ATÉ
ENTER
SEGUIR PARA A AÇÃO SEGUINTE
VERDADEIRA FAL
SA
Avaliação de uma
CONDIÇÃO
Instruções 1;
Instruções 2;...
2