LINGUAGEM DE PROGRAMAÇÃO
ORIENTADA A OBJETOS
INSTRUÇÕES DE CONTROLE –
PARTE I
Prof. Thiago Pereira Rique
<[email protected]>
http://thiagorique.wordpress.com/
AGENDA
Estruturas de controle
 A instrução de seleção única if
 A instrução de seleção dupla if...else
 A instrução de repetição while
 Formulando algoritmos: repetição controlada por
contador
 Formulando algoritmos: repetição controlada por
sentinela
 Formulando algoritmos: instruções de controle
aninhadas
 Operadores de atribuição composta
 Operadores de incremento e decremento

ESTRUTURAS DE CONTROLE

Estrutura de sequência


Execução sequencial, instrução após instrução.
Instruções de seleção
if (seleção única)
 if...else (seleção dupla)
 switch (seleção múltipla)


Instruções de repetição





Também chamadas instruções de loop
Condição de continuação do loop (verdadeira)
while (executa ações zero ou mais vezes)
For (executa ações zero ou mais vezes)
do...while (executa ações uma ou mais vezes)
A INSTRUÇÃO DE SELEÇÃO ÚNICA IF

Considere o exemplo:

Se a nota do aluno for maior que ou igual a 60
imprima “Aprovado”
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Considere o exemplo:
Se (if) a nota do aluno for maior que ou igual a 60
imprima “Aprovado”
 Caso contrário (else) imprima “Reprovado”

A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Operador condicional (?:)
Único operador ternário do Java
 Primeiro operando



Segundo operando


Expressão boolean
Valor da expressão condicional se a expressão boolean for
true
Terceiro operando

Valor da expressão condicional se a expressão boolean for
false
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Instruções if...else aninhadas
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Instruções if...else aninhadas
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Instruções if...else aninhadas
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

O problema do else oscilante

O compilador Java sempre associa um else à
instrução if imediatamente anterior, a menos que
instruído de outro modo pela colocação de chaves ({ e
}).

O compilador interpreta da seguinte forma:
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

O problema do else oscilante

Para forçar a instrução if...else aninhada para
executar como foi originalmente concebida, devemos
escrevê-la assim:
A INSTRUÇÃO DE SELEÇÃO DUPLA
IF...ELSE

Blocos

Instruções contidas em um par de chaves
A INSTRUÇÃO DE REPETIÇÃO WHILE
Uma instrução de repetição (ou um loop) permite
especificar que um programa deve repetir uma
ação enquanto alguma condição permanece
verdadeira.
 Considere o pseudocódigo:


Enquanto houver mais itens em minha lista de
compras, compre o próximo item e risque-o da minha
lista
A INSTRUÇÃO DE REPETIÇÃO WHILE

Considere um segmento de programa projetado
para calcular a primeira potência de 3 maior que
100. Suponha que a variável int product tenha
sido inicializada como 3.
A variável product é igual a 3 no início do while
 Cada iteração da instrução while multiplica
product por 3, fazendo a variável assumir os
valores 9, 27, 81, 243.
 A execução do programa continua com a próxima
instrução depois do while.

FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR

Considere o problema:


Uma classe de dez alunos se submeteu a um
questionário. As notas (inteiros no intervalo 0 a 100)
desse questionário estão disponíveis. Determine a
média da classe no questionário.
Algoritmo em pseudocódigo
controlada por contador
com
repetição
Variável contador (ou variável de controle)
 A repetição controlada por contador costuma ser
chamada de repetição definida ( número de repetições
é conhecido previamente)

FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR

Algoritmo em pseudocódigo
controlada por contador
com
repetição
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR


Implementando a repetição
contador na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR


Implementando a repetição
contador na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR


Implementando a repetição
contador na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR

Implementando a repetição
contador na classe GradeBook
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR CONTADOR

A classe GradeBookTest
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA

Considere o seguinte problema:


Desenvolva um programa para tirar a média da
classe que processe as notas de acordo com um
número arbitrário de alunos toda vez que é
executado.
Algoritmo em pseudocódigo
controlada por sentinela
com
repetição
Valor de sentinela (valor de sinal, valor fictício ou
valor de flag) para indicar o “fim da entrada de
dados”
 A repetição controlada por sentinela costuma ser
chamada de repetição indefinida (número de
repetições não é conhecido previamente)

FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA

Algoritmo em pseudocódigo
controlada por sentinela
com
repetição
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA


Implementando a repetição
sentinela na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA


Implementando a repetição
sentinela na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA


Implementando a repetição
sentinela na classe GradeBook
Continua no próximo slide...
controlada
por
FORMULANDO ALGORITMOS: REPETIÇÃO
CONTROLADA POR SENTINELA

Implementando a repetição
sentinela na classe GradeBook
controlada
por
FORMULANDO ALGORITMOS: INSTRUÇÕES
DE CONTROLE ANINHADAS

Considere o pseudocódigo a seguir:
FORMULANDO ALGORITMOS: INSTRUÇÕES
DE CONTROLE ANINHADAS

Implementação

Continua no próximo slide...
FORMULANDO ALGORITMOS: INSTRUÇÕES
DE CONTROLE ANINHADAS

Implementação
FORMULANDO ALGORITMOS: INSTRUÇÕES
DE CONTROLE ANINHADAS

Saída do programa
OPERADORES DE ATRIBUIÇÃO COMPOSTA

Instruções do tipo


podem ser abreviadas como


variável = variável operador expressão;
variável operador= expressão;
onde operador pode ser +, -, *, /, %.
OPERADORES DE ATRIBUIÇÃO COMPOSTA
OPERADORES DE INCREMENTO E
DECREMENTO
OPERADORES DE INCREMENTO E
DECREMENTO
Download

Instruções de Controle – Parte I - Thiago Rique