python 04 - programação estruturada

36
Programação estruturada LNCC UFRJ

Upload: paulo-roberto-godoy-bordoni

Post on 18-Dec-2014

1.454 views

Category:

Documents


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Python 04 - Programação Estruturada

Programação estruturada

LNCC UFRJ

Page 2: Python 04 - Programação Estruturada

Fluxo continuado, escolhas e repetições

Page 3: Python 04 - Programação Estruturada

Siga em frente,

SEMPRE

Page 4: Python 04 - Programação Estruturada

Escolhas

são

possíveis

Siga por aqui

Ou por aqui

Page 5: Python 04 - Programação Estruturada

Podem ser tantas que

nos confundem

Xilogravura, M.C. Escher

Escolhas...

Page 6: Python 04 - Programação Estruturada

2ª visão local

Analisando

em detalhe

Page 7: Python 04 - Programação Estruturada

3ª. Visão local

Analisando em detalhe

Page 8: Python 04 - Programação Estruturada

Analisando em

detalhe

4ª. Visão local

Page 9: Python 04 - Programação Estruturada

5ª. Visão local

Analisando em detalhe

Page 10: Python 04 - Programação Estruturada

A água cai

E torna a cair

Num ciclo eterno

Repetindo,

repetindo,

repetindo ...

Xilogravura, M.C. Escher

Page 11: Python 04 - Programação Estruturada

Escher e

o tribar de

Penrose

Xilogravura, M.C. Escher

Page 12: Python 04 - Programação Estruturada

Escadas impossíveis

e a repetição eterna

Xilogravura, G. Escher

Page 13: Python 04 - Programação Estruturada

Programação estruturada diagramas de atividade

Page 14: Python 04 - Programação Estruturada

Estruturas de controle

controle de repetição Permitem executar repetidas vezes trechos específicos do código.

controle de decisão

Permitem escolher sessões específicas de código a executar

Page 15: Python 04 - Programação Estruturada

Diagramas de ação

Estado inícial

Estado final

Estado de ação

Conexão /decisão

Fluxo

Simbologia gráfica

Page 16: Python 04 - Programação Estruturada

Diagrama de

sequência

Início

Ação

Fluxo

Fim

Page 17: Python 04 - Programação Estruturada

Diagrama

de seleção

(simples)

V

F

Instrução if

Conexão

Decisão Ação

Page 18: Python 04 - Programação Estruturada

Diagrama

de seleção

(dupla)

F V

Instrução if ... else

Decisão

Ação Ação

Conexão

Page 19: Python 04 - Programação Estruturada

Diagrama de

seleção

(múltipla) V

F

V

V

break

break

break

F

F

Instrução switch com breaks

1º. caso

1ª. ação

Conexão

Ação default

2º. caso

2ª. ação

Nº. caso

Nª. ação

Page 20: Python 04 - Programação Estruturada

Diagrama de

repetição

V F

Instrução while

Ciclos

Page 21: Python 04 - Programação Estruturada

V

F Instrução

do ... while

Diagrama de

repetição

Page 22: Python 04 - Programação Estruturada

V

F

Inicialização

Incremento

Instrução for

Diagrama de

repetição

Page 23: Python 04 - Programação Estruturada

Regras de estruturação

Comece com o diagrama de atividade mais simples

Qualquer estado de ação pode ser substituído por instrução de controle (seleção ou repetição)

As regras 2 e 3 podem ser aplicadas qualquer número de vezes e em qualquer ordem

Qualquer estado de ação pode ser substituído por dois estados de ação, em sequência

Page 24: Python 04 - Programação Estruturada

Aplicação das regras Duas aplicações

sucessivas da regra do

empilhamento

O diagrama mais simples

Page 25: Python 04 - Programação Estruturada

Aplicação das regras

Uma aplicação da regra do

aninhamento V

F

Page 26: Python 04 - Programação Estruturada

Aplicação das regras

V

F

V

F

V

F

Duas aplicações da regra do

aninhamento

Page 27: Python 04 - Programação Estruturada

Não há como errar

Mama mia!

Spagheti

A aplicação das regras 1, 2, 3, 4 não permite a

criação de programas não-estruturados,

como este!

Page 28: Python 04 - Programação Estruturada

Programação estruturada -

blocos de comandos

comando

comando

comando

comando

...

comando

comando

comando

Bloco de comandos

Veja o dente!

Page 29: Python 04 - Programação Estruturada

Exercício 1

Faça um programa que leia um número inteiro e imprima o fatorial desse número.

Page 30: Python 04 - Programação Estruturada

Exercício 2

Faça um programa que receba um número inteiro X, execute a fórmula

N=1+2+3+4+...+X

e imprima o resultado de N na tela.

Page 31: Python 04 - Programação Estruturada

Exercício 3

Faça um programa que receba um número inteiro e imprima a tabuada da multiplicação por esse número.

Page 32: Python 04 - Programação Estruturada

Exercício 4

Faça um programa que receba um número e imprima a soma de todos os números

inteiros que aparecem entre este número e o seu segundo múltiplo.

Imprima também o primeiro e o segundo múltiplo deste número.

Page 33: Python 04 - Programação Estruturada

Exercício 5

Faça um programa que leia uma String e a imprima na tela. Faça com que o programa

imprima também a String ao contrário.

Dica: Faça uma pesquisa na API da classe String para descobrir qual método usar.

Page 34: Python 04 - Programação Estruturada

Exercício 6

Faça um programa que leia dois números e imprima os múltiplos de 3 no intervalo

entre estes números.

Page 35: Python 04 - Programação Estruturada

Faça um programa que leia uma String e imprima na tela quantas vezes as letras ‘A’

ou ‘a’ aparecem na mesma.

Exercício 7

Page 36: Python 04 - Programação Estruturada

Exercício 8

Faça um programa que receba um número X e imprima na tela os X primeiros termos

da série de Fibonacci.