| TEMA 4 | ESTRUTURAS DE SELEÇÃO |
A. SELEÇÃO EM JAVA
Vimos, no Tema 1, que o controle de fluxo de um algoritmo/programa pode ser assegurado por três estruturas de controlo básicas: sequência, seleção e repetição. Neste tema vamos estudar as estruturas de seleção, que podem ser:
1) Seleção simples ↓
É implementada pela instrução if e a sua sintaxe é:
if (condição)
instrução;
A condição é uma expressão lógica.
Caso o resultado da condição seja true a instrução é executada, caso seja false a instrução não é executada.
Cf. Exemplo

(Clique nas setas para avançar e retroceder no exemplo apresentado)
2) Seleção em alternativa ↓
É implementada pela instrução if – else, cuja sintaxe é:
if (condição)
instrução 1;
else instrução 2;
A condição é uma expressão lógica.
Se o resultado da condição for true a instrução 1 é executada, se for false é executada a instrução 2.
Cf. Exemplo

(Clique nas setas para avançar e retroceder no exemplo apresentado)
Como selecionar entre várias alternativas?
A execução de uma estrutura encadeada de instruções if permite escolher uma de várias alternativas, em função do resultado das diversas condições utilizadas.
As condições são calculadas por ordem até que uma delas dê true, sendo então executadas as instruções respetivas. Depois passa a ser executada a instrução seguinte a esta estrutura.
Caso nenhuma expressão dê true são executadas as instruções relativas ao último else (se existir).
Cf. Exemplo
Selecionar uma de três alternativas em função do valor de uma variável. Se nenhuma se verificar deve fazer a instrução 4.
|
if (num >= 1 && num <= 10) instrução 1; else if (num > 10 && num <= 20) instrução 2; else if (num > 20 && num <= 30) instrução 3; else instrução 4; |
Cf. Exemplo
Dada a idade de uma pessoa definir o tipo de bilhete
Repare como os ifs estão encadeados ou ligados, através dos else, e, cada caso o programa só segue um caminho possível.

(Clique nas setas para avançar e retroceder no exemplo apresentado)
3) Seleção múltipla ↓
É implementada pela instrução switch que permite escolher uma de várias alternativas, em função do valor de uma expressão. Esta instrução tem a seguinte sintaxe:
|
switch (expressão) { case valor1 : instrução 1; break; case valor2 : instrução 2; break; ... case valorn : instrução n; break; default : outra instrução; break; } |
A expressão utilizada numa instrução switch terá que ter um resultado inteiro ou caracter.
A instrução break é colocada no fim das instruções relativas a cada case. Tem como função provocar o fim do switch.
A opção default (pode não existir) é executada se o valor da expressão não for igual a nenhum dos valores utilizados no switch (valor1, … valorn).
Cf. Exemplo

(Clique nas setas para avançar e retroceder no exemplo apresentado)