Aula 12 - Começando a programar : repetição
Upcoming SlideShare
Loading in...5
×
 

Aula 12 - Começando a programar : repetição

on

  • 1,810 views

 

Statistics

Views

Total Views
1,810
Views on SlideShare
1,810
Embed Views
0

Actions

Likes
1
Downloads
61
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Aula 12 - Começando a programar : repetição Aula 12 - Começando a programar : repetição Presentation Transcript

  • Introdução a Algoritmos eLinguagens de Programação Aula 12 | Começando a programar: repetição Apresentação Luiz Augusto de M. Morais
  • Roteiro Repetição ● Analisando o programa atual ● Repetindo com Python ● Usando o interpretador Jogo de Adivinhação ● Entendendo o novo problema ● Primeira tentativa ● Tornando as coisas aleatórias ● Segunda tentativa ● Perguntas idiotas UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • RepetiçãoAnalisandoo programa atual UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Analisando o programa atual print(Bem-vindo!) palpite = input(Chute um número: ) palpite = int(palpite) if palpite == 5: print(Você ganhou!) else: if palpite > 5: print(Muito alto.) else: print(Muito baixo.) print(Fim do jogo) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Analisando o programa atual Certo. Mas tenho que executar várias vezes? UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • RepetiçãoRepetindo com Python UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Repetindo com Python Coloque um valor padrão para o teste passar resposta = não while resposta != sim: print(Ok, vamos continuar.) resposta = input(Pede pra sair! )Não esqueça da O valor da variável de testeendentação tem que mudar para sair do loop. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • RepetiçãoUsando o interpretador UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Usando o Interpretador 1/4 >>> resposta = não >>> while resposta != sim: ... print(Ok, vamos continuar) ... resposta = input(Pede pra sair! ) ... Ok, vamos continuar Pede pra sair! não Ok, vamos continuar Pede pra sair! não Ok, vamos continuar Pede pra sair! sim UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Usando o Interpretador 2/4 >>> x = 5 >>> while x > 0: ... print(x) ... 5 5 Loop infinito! 5 5 5 5 5 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Usando o Interpretador 3/4 >>> x = 5 >>> while x > 0: ... print(x) ... x -= 1 ... 5 Com esse decrementador 4 o loop vai parar 3 2 1 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Usando o Interpretador 4/4 >>> x = 0 >>> while x < 10: ... if x % 2 == 0: ... print(x) ... x += 1 ... 0 2 4 6 8 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoEntendendoo novo problema UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Entendendo o novo problema Já temos um jogo onde você pode dar palpites e o programa informa se o palpite é maior ou menor que o número correto. O problema é: só temos uma chance! Temos que achar uma forma deste código ser repetido várias vezes, até o usuário acertar o palpite. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoPrimeira tentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Primeira tentativaprint(Bem-vindo!)palpite = input(Chute um número: ) ● Qual a parte do código tem quepalpite = int(palpite) repetir?if palpite == 5: ● Qual será a variável de teste para o print(Você ganhou!) loop?else: if palpite > 5: ● Não esqueça de definir um valor padrão para a variável de teste fora print(Muito alto.) do loop. else: print(Muito baixo.)print(Fim do jogo) 5 minutos! UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Primeira tentativa print(Bem-vindo!) palpite = 0 while palpite != 5: palpite = input(Chute um número: )Variável de teste palpite = int(palpite)com valor padrão if palpite == 5: print(Você ganhou!) Onde a variável else: de teste muda if palpite > 5: seu valor print(Muito alto.) else: print(Muito baixo.) print(Fim do jogo) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoTest Drive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoTornandoas coisas aleatórias UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Tornando as coisas aleatórias Módulo que possui funções para gerar números aleatórios import random numero_aleatorio = random.randint(1, 10) print(numero_aleatorio) Qualquer número inteiro entre 1 e 10 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoUsando o interpretador UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Usando o Interpretador >>> import random >>> random.randint(1,3) 2 >>> random.randint(1,3) 1 >>> random.randint(1,3) 1 >>> random.randint(1,3) 3 >>> random.randint(1,3) 2 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoSegunda tentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Segunda tentativaprint(Bem-vindo!)palpite = 0 ● Importe o módulo que possuiwhile palpite != 5: funções que produzem números palpite = input(Chute um número: ) aleatórios palpite = int(palpite) ● Crie uma variável e armazene if palpite == 5: nela um valor inteiro aleatório print(Você ganhou!) ● Troque o valor que está fixo pela else: nova variável aleatória if palpite > 5: print(Muito alto.) else: print(Muito baixo.) 3 minutos!print(Fim do jogo) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Segunda tentativa import random print(Bem-vindo!) palpite = 0Módulo que possui segredo = random.randint(1, 10)funções para gerar while palpite != segredo: Guardando nanúmeros aleatórios palpite = input(Chute um número: ) variável segredo palpite = int(palpite) um número inteiro if palpite == segredo: aleatório entre 1 e print(Você ganhou!) 10 else:Substituídonúmero 5 pela if palpite > segredo:variável segredo print(Muito alto.) else: print(Muito baixo.) print(Fim do jogo) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoTest Drive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Jogo de AdivinhaçãoPerguntas Idiotas UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • Perguntas Idiotas Por que tem umas palavras coloridas no código? ● Só existe um tipo de estrutura de repetição em Python? ● O que significa while? ● ● Quando é que a execução de um programa sai do bloco while? O que é um loop infinito, mesmo? ● O que é aquele import random? ● Eu posso importar outros módulos? ● O random possui outras funções? ● UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • O que aprendemos hoje? ● Estrutura de repetição while ● Módulo: ● random ● Função: ● random.randint() UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • ReferênciasBARRY, Paul; GRIFFITHS, David. Head First Programming.Sebastopol: OReilly, 2009. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES