programação de computadores iii aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · passo...

29
Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle TCC-00.157 Programação de Computadores III Professor Hugo de Oliveira Barbalho [email protected] Material produzido pelo professor: Leandro Augusto Frata Fernandes ([email protected])

Upload: others

Post on 06-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Programação de Computadores III

Pseudocódigo e EstruturasBásicas de Controle

Programação de Computadores III

Pseudocódigo e EstruturasBásicas de Controle

TCC-00.157 Programação de Computadores III

Professor Hugo de Oliveira [email protected]

Material produzido pelo professor:Leandro Augusto Frata Fernandes ([email protected])

Page 2: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Roteiro das AulasRoteiro das Aulas

• Fluxograma

• Pseudocódigo

• Estruturas de decisão

• Estruturas de repetição

TCC-00.157 Programação de Computadores III 2

Page 3: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Representação de AlgoritmosRepresentação de Algoritmos

• Fluxograma ou diagrama de bloco Forma universal de representação Utiliza formas geométricas bem definidas para ilustrar os

passos do algoritmo

• Pseudocódigo Significa “código falso” Facilita descrever o algoritmo antes de passá-lo para

uma linguagem de programação. Linguagem intermediária entre a natural e a de

programação

TCC-00.157 Programação de Computadores III 3

Page 4: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Fluxograma ou Diagrama de Bloco Fluxograma ou Diagrama de Bloco

• Representação gráfica padronizada dospassos de um algoritmo

• Principais símbolos

TCC-00.157 Programação de Computadores III 4

Terminalinício ou fim do algoritmo

Processoação, operação

Entrada manual de dadosler, receber

Exibirmostrar dados, saída de dados

Decisãodesvio condicional ou teste

Direção do fluxopróximo passo, sentido

Page 5: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Fluxograma para o Exemplo da MédiaFluxograma para o Exemplo da Média

TCC-00.157 Programação de Computadores III 5

INÍCIO

Recebe N1 Recebe N2 Recebe N3 Recebe N4

CalculaMEDIA ← (N1 + N2 + N3 + N4) / 4

Mostra MEDIA

FIM

MEDIA = N1 + N2 + N3 + N44

Page 6: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Fluxograma para o Exemplo da MédiaFluxograma para o Exemplo da Média

TCC-00.157 Programação de Computadores III 6

INÍCIO Recebe N1

Recebe N2

Recebe N3

Recebe N4

Calcula MEDIA ← (N1 + N2 + N3 + N4) / 4

Mostra MEDIA FIM

INÍCIO N1

N2

N3

N4

MEDIA ← (N1 + N2 + N3 + N4) / 4

MEDIA FIM

Significadoimplícito nos

símbolos

Significadoimplícito nos

símbolos

Page 7: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

PseudocódigoPseudocódigo

• Descrição do algoritmo menos rigorosa que na linguagem de programação

• Fácil de entender e fácil de codificar depois

• Simples e objetivo

• Deve seguir boas práticas

TCC-00.157 Programação de Computadores III 7

Page 8: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Boas Práticas na Escrita de PseudocódigoBoas Práticas na Escrita de Pseudocódigo

• Utilize um verbo por frase

• Faça frases curtas e simples

• Seja objetivo

• Use palavras sem duplo sentido

• Use identação e linhas em branco

TCC-00.157 Programação de Computadores III 8

Page 9: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Pseudocódigo para o Exemplo da MédiaPseudocódigo para o Exemplo da Média

VARIÁVEIS Real: N1, N2, N3, N4, MEDIA

INÍCIO Ler N1 Ler N2 Ler N3 Ler N4

MEDIA ← (N1+N2+N3+N4)/4

Escrever ‘A média é ’ MEDIAFIM

TCC-00.157 Programação de Computadores III 9

Tipo da VariávelTipo da Variável

AtribuiçãoAtribuição

Iden

taçã

oId

enta

ção Operadores AritméticosOperadores Aritméticos

INÍCIO

N1

N2 N3

N4

MEDIA ← (N1 + N2 + N3 + N4) / 4

‘ A média é ’ MEDIA FIM

Fluxograma

Page 10: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Estruturas de DecisãoEstruturas de Decisão

• Comandos de decisão ou desvio são usados na construção de algoritmos que não são totalmente seqüenciais

• Com instruções de desvio pode-se fazer com que o algoritmo proceda de uma outra maneira, de acordo com as decisões lógicas tomadas em função dos dados ou resultados anteriores

TCC-00.157 Programação de Computadores III 10

Page 11: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Estruturas de DecisãoEstruturas de Decisão

• As estruturas de decisão que veremos hoje são: SE ... ENTÃO ... SENÃO ... FIM SE

SE alguma coisa for verdadeira ENTÃO execute este bloco de comandosSENÃO execute este outro bloco de comandos

FIM SE

SE ... ENTÃO ... FIM SE

SE alguma coisa for verdadeira ENTÃO execute este bloco de comandosFIM SE

TCC-00.157 Programação de Computadores III 11

Page 12: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Construa um algoritmo para ler doisvalores inteiros e escrever qual é maior

VARIÁVEIS Inteiro: VALOR1, VALOR2

INÍCIO Ler VALOR1 Ler VALOR2 SE VALOR1 > VALOR2 ENTÃO Escrever ‘O primeiro é maior’ SE NÃO Escrever ‘O segundo é maior’ FIM SEFIM

TCC-00.157 Programação de Computadores III 12

VALOR1

VALOR2

‘O segundo é maior’ FIM

‘O primeiro é maior’

VALOR1 > VALOR2 Sim

Não

INÍCIO

Operação LógicaOperação Lógica

Iden

taçã

oId

enta

ção

Page 13: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Construa um algoritmo para ler doisvalores inteiros e escrever qual é maior

VARIÁVEIS Inteiro: VALOR1, VALOR2

INÍCIO Ler VALOR1 Ler VALOR2 SE VALOR1 > VALOR2 ENTÃO Escrever ‘O primeiro é maior’ SE NÃO Escrever ‘O segundo é maior’ FIM SEFIM

TCC-00.157 Programação de Computadores III 13

VALOR1

VALOR2

‘O segundo é maior’ FIM

‘O primeiro é maior’

VALOR1 > VALOR2 Sim

Não

INÍCIO

Teste o algoritmo paraas entradas 15 e 12.

‘O segundo é maior’

Não

• Construa um algoritmo para ler doisvalores inteiros e escrever qual é maior

VARIÁVEIS Inteiro: VALOR1, VALOR2

INÍCIO Ler VALOR1 Ler VALOR2 SE VALOR1 > VALOR2 ENTÃO Escrever ‘O primeiro é maior’ SE NÃO Escrever ‘O segundo é maior’ FIM SEFIM

Page 14: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Construa um algoritmo para ler umvalor real. Se o valor for maior que zero,escreva-o e termine o programa. Casocontrário, apenas termine o programa

VARIÁVEIS Real: VALOR

INÍCIO Ler VALOR SE VALOR > 0 ENTÃO Escrever ‘O valor é ’ VALOR FIM SEFIM

TCC-00.157 Programação de Computadores III 14

VALOR

FIM

‘O valor é ’ VALOR

VALOR > 0 Sim

Não

INÍCIO

Page 15: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Estruturas de RepetiçãoEstruturas de Repetição

• Uma ação que se repete várias vezes em um algoritmo pode ser tratada... ... escrevendo-a várias vezes ... resumindo-a, anotando uma única vez,

e solicitando que ela se repita

• Exemplo Construa um fluxograma que execute o comando

“Martele” dez vezes

TCC-00.157 Programação de Computadores III 15

Page 16: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Fluxogramas de ExemploFluxogramas de Exemplo

TCC-00.157 Programação de Computadores III 16

INÍCIO

Martele

CONTADOR < 10

Sim

Não

FIM

INÍCIO

FIM

CONTADOR ← 0

Martele

Martele

Martele

Martele

Martele

Martele

Martele

Martele

Martele

Martele

CONTADOR ← CONTADOR + 1

Isso funciona,mas não é prático

Isso funcionae é fácil de ser adaptado

para mais repetições

Page 17: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Vantagens das Estruturas de RepetiçãoVantagens das Estruturas de Repetição

• Podemos pedir que uma ação (ou conjunto de ações) seja executada Um número definido ou indefinido de vezes Enquanto um estado permanecer Até que um estado seja atingido

• Reduz o tamanho do algoritmo/programa

• Facilita a manutenção do algoritmo/programa

TCC-00.157 Programação de Computadores III 17

Page 18: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Principais Estruturas de RepetiçãoPrincipais Estruturas de Repetição

• ENQUANTO ... REPETIR ...ENQUANTO condição for verdadeira REPETIR

bloco de comandosFIM ENQUANTO

• REPETIR ... ENQUANTO ... REPETIR bloco de comandosENQUANTO condição for verdadeira

• PARA ... ATÉ ... REPETIR ...PARA variável ← início ATÉ fim REPETIR bloco de comandosFIM PARA

TCC-00.157 Programação de Computadores III 18

Page 19: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Principais Estruturas de Repetição (1/3)Principais Estruturas de Repetição (1/3)

• ENQUANTO ... REPETIR ...

ENQUANTO condição for verdadeira REPETIR

bloco de comandosFIM ENQUANTO

TCC-00.157 Programação de Computadores III 19

Instrução

Condição

Verdadeiro

Falso

Page 20: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Ler 850 números fornecidos pelo usuário, calcular e exibir a média

VARIÁVEIS Real: Soma, Num, Media Inteiro: Cont

INÍCIO Soma ← 0 Cont ← 0 ENQUANTO Cont < 850

REPETIR Ler Num Soma ← Soma + Num Cont ← Cont + 1 FIM ENQUANTO Media ← Soma / Cont

Mostrar MediaFIM

TCC-00.157 Programação de Computadores III 20

Page 21: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Principais Estruturas de Repetição (2/3)Principais Estruturas de Repetição (2/3)

• REPETIR ... ENQUANTO ...

REPETIR

bloco de comandosENQUANTO condição for verdadeira

TCC-00.157 Programação de Computadores III 21

Instrução

CondiçãoVerdadeiro

Falso

Page 22: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Note a Diferença nos FluxogramasNote a Diferença nos Fluxogramas

TCC-00.157 Programação de Computadores III 22

ENQUANTO ... REPETIR ... REPETIR ... ENQUANTO ...

Instrução

Condição

Verdadeiro

Falso

Instrução

Condição

Verdadeiro

Falso

Page 23: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Ler 850 números fornecidos pelo usuário, calcular e exibir a média

VARIÁVEIS Real: Soma, Num, Media Inteiro: Cont

INÍCIO Soma ← 0 Cont ← 0 REPETIR Ler Num Soma ← Soma + Num Cont ← Cont + 1 ENQUANTO Cont < 850 Media ← Soma / Cont

Mostrar MediaFIM

TCC-00.157 Programação de Computadores III 23

Page 24: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Principais Estruturas de Repetição (3/3)Principais Estruturas de Repetição (3/3)

• PARA ... ATÉ ... REPETIR ...

PARA variável ← início ATÉ fim REPETIR

bloco de comandosFIM PARA

TCC-00.157 Programação de Computadores III 24

Page 25: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Características da EstruturaPARA ... ATÉ ... REPETIR ... Características da EstruturaPARA ... ATÉ ... REPETIR ...

PARA variável ← início ATÉ fim REPETIR

bloco de comandosFIM PARA

• Execução Passo 1: A variável recebe o valor inicial Passo 2: Se a variável é menor ou igual ao valor final, o

bloco de comandos é executado Passo 3: Soma-se 1 à variável e volta ao Passo 2 Término: Após a o bloco de comandos ser executado para

a variável igual ao valor final, ou caso o valor inicial seja maior que o final

TCC-00.157 Programação de Computadores III 25

Page 26: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

Características da EstruturaPARA ... ATÉ ... REPETIR ... Características da EstruturaPARA ... ATÉ ... REPETIR ...

PARA variável ← início ATÉ fim REPETIR

bloco de comandosFIM PARA

• Gerencia, automaticamente, o contador

• A estrutura deixa subentendido que A variável receberá primeiro o valor inicial Será incrementada a cada ciclo Os comandos serão executados (fim – início + 1) vezes

TCC-00.157 Programação de Computadores III 26

Page 27: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

O valor de incremento pode ser alterado!O valor de incremento pode ser alterado!

PARA variável ← início ATÉ fim PASSO p REPETIR

bloco de comandosFIM PARA

• Ao incluir o passo p no protótipo da estrutura, o incremento padrão de uma unidade é substituído pelo incremento de p unidades

• O passo p pode ser tanto um valor positivo quanto um valor negativo

TCC-00.157 Programação de Computadores III 27

Page 28: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Ler 850 números fornecidos pelo usuário, calcular e exibir a média

VARIÁVEIS Real: Soma, Num, Media Inteiro: Cont

INÍCIO Soma ← 0 PARA Cont ← 1 ATÉ 850 REPETIR Ler Num Soma ← Soma + Num FIM PARA Media ← Soma / 850

Mostrar MediaFIM

TCC-00.157 Programação de Computadores III 28

Page 29: Programação de Computadores III Aula 1hbarbalho/pages/slides/slides04.pdf · 2016-01-11 · Passo 2: Se a variável é menor ou igual ao valor final, o bloco de comandos é executado

ExemploExemplo

• Escrever todos os números pares de 1 a 100

VARIÁVEIS Inteiro: Num

INÍCIO PARA Num ← 2 ATÉ 100 PASSO 2 REPETIR Mostrar Num FIM PARA FIM

A saída exibe os números: 2, 4, 6, ..., até 100

TCC-00.157 Programação de Computadores III 29