estruturas de controle - moodle usp: e-disciplinas · 4 bloco de comando categoria de comandos...

34
1 Estruturas de controle Wilmax M. Cruz ([email protected] )

Upload: dangkhue

Post on 17-Dec-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

1 �

Estruturas de controle�Wilmax M. Cruz ([email protected])�

Page 2: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

2�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

O que veremos? "�

Page 3: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

3�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 4: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

4�

Bloco de comando �

Categoria de comandos� Palco �

Área de edição �

Criação e edição do palco e sprites�

Page 5: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

5�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 6: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

6�

Algoritmos�

Um procedimento para resolver um problema, onde: �1.  as ações a serem executadas�2.  estejam em ordem específica�

Ref.: Deitel - Java Como Programar, 8a Edição, Prentice-Hall�

Page 7: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

7�

Algoritmos�Considere um algoritmo para você �sair da cama e ir trabalhar: �

1) levantar da cama; �2) tirar o pijama; �3) tomar banho; �4) vestir-se; �5) tomar café da manhã; �6) dirigir o carro até o trabalho.�

Page 8: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

8�

1) levantar da cama; �2) tirar o pijama; �3) �4) �5) tomar café da manhã; �6) dirigir o carro até o trabalho.�

Algoritmos�Considere um algoritmo para você �sair da cama e ir trabalhar: �

vestir-se; �tomar banho; �

Page 9: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

9�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 10: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

10�

Estruturas de controle�

BOHM, C.; JACOPINI, G., 'Flow diagrams, turing machines, and language with only two formation rules', 1966.�

!   Estrutura de sequência�!   Instruções de seleção �!   Instruções de repetição �

Segundo Bohm e Jacopini, todos os programas poderiam ser escritos baseados em somente três estruturas de controle: �

Page 11: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

11 �

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 12: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

12�

Estrutura de sequência�

O computador executa as instruções (ações) uma depois da outra, na ordem em que elas foram escritas, isto é, em sequência.�

Estruturas de controle�

Page 13: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

13�

Estrutura de sequência�O diagrama de atividades é um exemplo: �

Estruturas de controle�

Page 14: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

14�

Estrutura de sequência�No Scratch ficaria assim: �

Estruturas de controle�

Page 15: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

15�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 16: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

16�

Instruções de seleção �

No Scratch contém 2 (dois) tipos de instruções de seleção: �

Estruturas de controle�

!   se (if)�!   se...senão (if...else)�

Page 17: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

17�

se (if)�

Instrução de uma única seleção, porque seleciona ou ignora uma única ação (ou blocos de ações)�

Estruturas de controle� Instruções de seleção �

Page 18: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

18�

se (if)�Se a nota do aluno é maior que 59�{�

Diga “Aprovado”�} �

Estruturas de controle� Instruções de seleção �

Textual�

Scratch�

Page 19: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

19�

( )�Escopo �

É utilizado para definir o grau de visibilidade �e acessibilidade às variáveis e instruções em �

diferentes partes do programa.�

Page 20: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

20�

se (if)�Se a nota do aluno é maior que 59�{�

Diga “Aprovado”�} �

Estruturas de controle� Instruções de seleção �

Textual�

Scratch�

Page 21: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

21 �

se...senão (if...else)�

Instrução de seleção dupla, porque seleciona entre duas ações diferentes (ou blocos de ações)�

Estruturas de controle� Instruções de seleção �

Page 22: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

22�

se...senão (if...else)�Se a nota do aluno é maior que 59�{�

Diga “Aprovado”�} �Senão �{�

Diga “Reprovado”�{�

Estruturas de controle� Instruções de seleção �

Textual�

Page 23: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

23�

Estruturas de controle� Instruções de seleção �

Scratch�

se...senão (if...else)�

Page 24: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

24�

!  Relembrando... Scratch�

!  Relembrando... Algoritmos�

!   Estruturas de controle�

!   Estrutura de sequência�

!   Instruções de seleção �

!   Instruções de repetição �

Page 25: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

25�

Instruções de repetição �

No Scratch contém 3 (três) tipos de instruções de repetição: �

Estruturas de controle�

!   repita X vezes �!   repita até <condição>�!   sempre�

Page 26: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

26�

repita X vezes�

A ação (ou blocos de ações) que está contido no comando “repita” é executado X vezes. ��Sendo que X é um número inteiro.�

Estruturas de controle� Instruções de repetição �

Page 27: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

27�

repita X vezes�

Estruturas de controle� Instruções de repetição �

Scratch�

Page 28: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

28�

repita até <condição>�

A ação (ou blocos de ações) que está contido no comando “repita até” é executado até que uma condição de parada seja verdadeira.�

Estruturas de controle� Instruções de repetição �

Page 29: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

29�

Estruturas de controle� Instruções de repetição �

Scratch�

repita até <condição>�

Page 30: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

30�

sempre�

A ação (ou blocos de ações) que está contido no comando “sempre” é executado “infinitamente”.�

Estruturas de controle� Instruções de repetição �

Page 31: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

31 �

sempre�

Estruturas de controle� Instruções de repetição �

Scratch�

Page 32: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

32�

Cuidado! �

Estruturas de controle� Instruções de repetição �

As instruções de repetição pode causar o que é chamado de “loop infinito” e pode ocasionar o travamento do software.�

Page 33: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

33�

Cuidado! �

Estruturas de controle� Instruções de repetição �

Scratch�

ou seja, a condição de parada (5 = 10) nunca será verdadeira. Ocorrendo o loop infinito.�

Page 34: Estruturas de controle - Moodle USP: e-Disciplinas · 4 Bloco de comando Categoria de comandos Palco Área de edição Criação e edição do palco e sprites

34�

Referências�!   DEITEL, P. & DEITEL, H. Java: Como Programar. 8ª.

Edição. São Paulo: Pearson, 2010.��

!   http://scratch.mit.edu/help/��

! Corrado Böhm and Giuseppe Jacopini. 1966. Flow diagrams, turing machines and languages with only two formation rules. Commun. ACM 9, 5 (May 1966), 366-371. http://doi.acm.org/10.1145/355592.365646 �