SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Introdução a Algoritmos e
Linguagens 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ção
Analisando
o 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ção
Repetindo 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 teste
endentação                 tem que mudar para sair do
                           loop.



                                 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Repetição
Usando 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ção
Entendendo
o 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ção
Primeira tentativa




            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Primeira tentativa

print('Bem-vindo!')
palpite = input('Chute um número: ')    ●
                                         Qual a parte do código tem que
palpite = 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ção
Test Drive




        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Tornando
as 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ção
Usando 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ção
Segunda tentativa




            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Segunda tentativa

print('Bem-vindo!')
palpite = 0                                 ●
                                             Importe o módulo que possui
while 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 = 0
Módulo que possui    segredo = random.randint(1, 10)
funções para gerar   while palpite != segredo:                   Guardando na
nú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ído
nú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ção
Test Drive




        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Perguntas 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ências


BARRY, Paul; GRIFFITHS, David. Head First Programming.
Sebastopol: O'Reilly, 2009.




                          UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES

Weitere ähnliche Inhalte

Was ist angesagt?

Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3José Araújo
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAndré Constantino da Silva
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08André Phillip Bertoletti
 
Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Robson Ferreira
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoRobson Ferreira
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoMauro Pereira
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgRegis Magalhães
 
Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2engenhariadecomputacao
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Conceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoConceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoRobson Ferreira
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoaldoirjava
 
Lógica de Programação - Unimep/Pronatec - Aula02
Lógica de Programação - Unimep/Pronatec - Aula02Lógica de Programação - Unimep/Pronatec - Aula02
Lógica de Programação - Unimep/Pronatec - Aula02André Phillip Bertoletti
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2José Araújo
 
mod3-programação-estruturada
mod3-programação-estruturadamod3-programação-estruturada
mod3-programação-estruturadadiogoa21
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Gercélia Ramos
 

Was ist angesagt? (20)

Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08
 
Algoritmos - capítulo 6
Algoritmos - capítulo 6Algoritmos - capítulo 6
Algoritmos - capítulo 6
 
Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introdução
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o Visualg
 
Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2Algoritmo e lógica de programação - aula 2
Algoritmo e lógica de programação - aula 2
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Conceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoConceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentação
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programação
 
Lógica de Programação - Unimep/Pronatec - Aula02
Lógica de Programação - Unimep/Pronatec - Aula02Lógica de Programação - Unimep/Pronatec - Aula02
Lógica de Programação - Unimep/Pronatec - Aula02
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2
 
Aula 3 algoritmos
Aula 3   algoritmosAula 3   algoritmos
Aula 3 algoritmos
 
mod3-programação-estruturada
mod3-programação-estruturadamod3-programação-estruturada
mod3-programação-estruturada
 
Apostila Visualg
Apostila VisualgApostila Visualg
Apostila Visualg
 
Lista exercícios
Lista exercíciosLista exercícios
Lista exercícios
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 

Andere mochten auch

SBIE 2014 - Student's satisfaction with Mastery Learning in an Introductory ...
SBIE 2014 -  Student's satisfaction with Mastery Learning in an Introductory ...SBIE 2014 -  Student's satisfaction with Mastery Learning in an Introductory ...
SBIE 2014 - Student's satisfaction with Mastery Learning in an Introductory ...Luiz Augusto Macêdo Morais
 
Aula1 apresentacao-110926181111-phpapp01
Aula1 apresentacao-110926181111-phpapp01Aula1 apresentacao-110926181111-phpapp01
Aula1 apresentacao-110926181111-phpapp01Polyanna Conrado
 
Aula4 introducao-a-algoritmos-110926191723-phpapp02
Aula4 introducao-a-algoritmos-110926191723-phpapp02Aula4 introducao-a-algoritmos-110926191723-phpapp02
Aula4 introducao-a-algoritmos-110926191723-phpapp02Polyanna Conrado
 
Algoritmo e lógica de programação - aula 4
Algoritmo e lógica de programação - aula 4Algoritmo e lógica de programação - aula 4
Algoritmo e lógica de programação - aula 4engenhariadecomputacao
 
Lógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalLógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalWesley R. Bezerra
 
Python Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem PythonPython Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem Pythonantonio sérgio nogueira
 
Lógica de Programação - Entrada/saída de dados
Lógica de Programação - Entrada/saída de dadosLógica de Programação - Entrada/saída de dados
Lógica de Programação - Entrada/saída de dadosWesley R. Bezerra
 
Algoritmo e lógica de programação - Aula 1
Algoritmo e lógica de programação - Aula 1Algoritmo e lógica de programação - Aula 1
Algoritmo e lógica de programação - Aula 1engenhariadecomputacao
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonGiancarlo Silva
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 

Andere mochten auch (20)

Aula 9 - Estruturas Condicionais
Aula 9 - Estruturas CondicionaisAula 9 - Estruturas Condicionais
Aula 9 - Estruturas Condicionais
 
SBIE 2014 - Student's satisfaction with Mastery Learning in an Introductory ...
SBIE 2014 -  Student's satisfaction with Mastery Learning in an Introductory ...SBIE 2014 -  Student's satisfaction with Mastery Learning in an Introductory ...
SBIE 2014 - Student's satisfaction with Mastery Learning in an Introductory ...
 
Aula 2 - Histórico da Computação e OAC
Aula 2 - Histórico da Computação e OACAula 2 - Histórico da Computação e OAC
Aula 2 - Histórico da Computação e OAC
 
Aula1 apresentacao-110926181111-phpapp01
Aula1 apresentacao-110926181111-phpapp01Aula1 apresentacao-110926181111-phpapp01
Aula1 apresentacao-110926181111-phpapp01
 
Aula4 introducao-a-algoritmos-110926191723-phpapp02
Aula4 introducao-a-algoritmos-110926191723-phpapp02Aula4 introducao-a-algoritmos-110926191723-phpapp02
Aula4 introducao-a-algoritmos-110926191723-phpapp02
 
Csharp
CsharpCsharp
Csharp
 
Aula 10 - Estruturas de repeticao
Aula 10 - Estruturas de repeticaoAula 10 - Estruturas de repeticao
Aula 10 - Estruturas de repeticao
 
Aula 5 - Tipos de dados
Aula 5 - Tipos de dadosAula 5 - Tipos de dados
Aula 5 - Tipos de dados
 
Algoritmo e lógica de programação - aula 4
Algoritmo e lógica de programação - aula 4Algoritmo e lógica de programação - aula 4
Algoritmo e lógica de programação - aula 4
 
Lógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalLógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicional
 
Python Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem PythonPython Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem Python
 
Lógica de Programação - Entrada/saída de dados
Lógica de Programação - Entrada/saída de dadosLógica de Programação - Entrada/saída de dados
Lógica de Programação - Entrada/saída de dados
 
Aula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveisAula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveis
 
Aula 7 - Expressões Aritméticas e Lógicas
Aula 7 - Expressões Aritméticas e LógicasAula 7 - Expressões Aritméticas e Lógicas
Aula 7 - Expressões Aritméticas e Lógicas
 
Algoritmo e lógica de programação - Aula 1
Algoritmo e lógica de programação - Aula 1Algoritmo e lógica de programação - Aula 1
Algoritmo e lógica de programação - Aula 1
 
Linguagem C - Entrada e Saída
Linguagem C - Entrada e SaídaLinguagem C - Entrada e Saída
Linguagem C - Entrada e Saída
 
Logica Programação. ...
Logica Programação. ...Logica Programação. ...
Logica Programação. ...
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
 
Python Presentation
Python PresentationPython Presentation
Python Presentation
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 

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

Ähnlich wie Aula 12 - Começando a programar : repetição (16)

03 algoritmos basicos
03 algoritmos basicos03 algoritmos basicos
03 algoritmos basicos
 
Aula 4 aed - parte 1
Aula 4   aed - parte 1Aula 4   aed - parte 1
Aula 4 aed - parte 1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Backtracking
BacktrackingBacktracking
Backtracking
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 
Exercicios facebook
Exercicios facebookExercicios facebook
Exercicios facebook
 
logica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdflogica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdf
 
Acartomante urgente
Acartomante urgenteAcartomante urgente
Acartomante urgente
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 
Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06
 
Aula05
Aula05Aula05
Aula05
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
01 variaveis io if
01 variaveis io if01 variaveis io if
01 variaveis io if
 
02 while
02 while02 while
02 while
 

Mehr von Luiz Augusto Macêdo Morais

Mehr von Luiz Augusto Macêdo Morais (6)

Minicurso: Python e suas baterias incluídas
Minicurso: Python e suas baterias incluídasMinicurso: Python e suas baterias incluídas
Minicurso: Python e suas baterias incluídas
 
Expressões Regulares: Teoria e Prática
Expressões Regulares: Teoria e PráticaExpressões Regulares: Teoria e Prática
Expressões Regulares: Teoria e Prática
 
Aula 15 - Organizando os dados com listas
Aula 15 - Organizando os dados com listasAula 15 - Organizando os dados com listas
Aula 15 - Organizando os dados com listas
 
Aula 4 - Introducão a algoritmos
Aula 4 - Introducão a algoritmosAula 4 - Introducão a algoritmos
Aula 4 - Introducão a algoritmos
 
Aula 1 - Apresentação
Aula 1 - ApresentaçãoAula 1 - Apresentação
Aula 1 - Apresentação
 
Otimizador de Rotas - PythonBrasil[6]
Otimizador de Rotas - PythonBrasil[6]Otimizador de Rotas - PythonBrasil[6]
Otimizador de Rotas - PythonBrasil[6]
 

Kürzlich hochgeladen

Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfIedaGoethe
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbyasminlarissa371
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASEdinardo Aguiar
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfIedaGoethe
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxDeyvidBriel
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasRicardo Diniz campos
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfPastor Robson Colaço
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxBiancaNogueira42
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...LuizHenriquedeAlmeid6
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfangelicass1
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAlexandreFrana33
 

Kürzlich hochgeladen (20)

Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdf
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecas
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdf
 
As Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptxAs Viagens Missionária do Apostolo Paulo.pptx
As Viagens Missionária do Apostolo Paulo.pptx
 

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

  • 1. Introdução a Algoritmos e Linguagens de Programação Aula 12 | Começando a programar: repetição Apresentação Luiz Augusto de M. Morais
  • 2. 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
  • 3. Repetição Analisando o programa atual UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 4. 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
  • 5. Analisando o programa atual Certo. Mas tenho que executar várias vezes? UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 6. Repetição Repetindo com Python UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 7. 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 teste endentação tem que mudar para sair do loop. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 8. Repetição Usando o interpretador UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 9. 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
  • 10. 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
  • 11. 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
  • 12. 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
  • 13. Jogo de Adivinhação Entendendo o novo problema UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 14. 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
  • 15. Jogo de Adivinhação Primeira tentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 16. Primeira tentativa print('Bem-vindo!') palpite = input('Chute um número: ') ● Qual a parte do código tem que palpite = 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
  • 17. 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
  • 18. Jogo de Adivinhação Test Drive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 19. Jogo de Adivinhação Tornando as coisas aleatórias UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 20. 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
  • 21. Jogo de Adivinhação Usando o interpretador UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 22. 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
  • 23. Jogo de Adivinhação Segunda tentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 24. Segunda tentativa print('Bem-vindo!') palpite = 0 ● Importe o módulo que possui while 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
  • 25. Segunda tentativa import random print('Bem-vindo!') palpite = 0 Módulo que possui segredo = random.randint(1, 10) funções para gerar while palpite != segredo: Guardando na nú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ído nú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
  • 26. Jogo de Adivinhação Test Drive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 27. Jogo de Adivinhação Perguntas Idiotas UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 28. 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
  • 29. O que aprendemos hoje? ● Estrutura de repetição while ● Módulo: ● random ● Função: ● random.randint() UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 30. Referências BARRY, Paul; GRIFFITHS, David. Head First Programming. Sebastopol: O'Reilly, 2009. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES