Introdução a Algoritmos e
Linguagens de Programação
      Aula 11 | Começando a programar: condicionais




               Apresentação
         Luiz Augusto de M. Morais
Roteiro

   Conceitos básicos
     ●
      Usando o Interpretador Interativo
     ●
      Pseudocódigo x Python


                  Jogo de Adivinhação
                       ●
                        Entendendo o problema
                       ●
                        Primeira tentativa
                       ●
                        Salvando o código em algum lugar
                       ●
                        Perguntas idiotas
                       ●
                        Segunda tentativa


                           UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Conceitos Básicos
Usando o
Interpretador Interativo




                    UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo


       ●
        Fazendo contas
       ●
        Tipos de dados
       ●
        Manipulando variáveis
       ●
        Comando de saída
       ●
        Comando de entrada
       ●
        Convertendo tipos




                            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Fazendo cálculos

     >>> 34 + 2
     36
     >>> 4 – 5.5
     -1.5
     >>> 3 * 11
     33
     >>> 5 / 2
     2.5
     >>> 5 // 2
     2
     >>> 4 % 2
     0




                        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Tipos de dados

     >>> type(36)
     <class 'int'>
     >>> type(55.2)
     <class 'float'>
     >>> type(2 == 3)
     <class 'bool'>
     >>> type('a')
     <class 'str'>
     >>> type('IALP')
     <class 'str'>




                        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Manipulando variáveis

     >>> numero = 2
     >>> soma = numero + 3
     >>> soma /= 2
     >>> soma
     2.5
     >>> palavra = 'ialp'
     >>> palavra
     'ialp'
     >>> numero / 0
     Traceback (most recent call last):
       File "<stdin>", line 1, in <module>
     ZeroDivisionError: division by zero




                            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Manipulando variáveis

     >>> nome
     Traceback (most recent call last):
       File "<stdin>", line 1, in <module>
     NameError: name 'nome' is not defined
     >>> nome = 'Luiz Augusto'
     >>> nome
     'Luiz Augusto'




                            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Comando de saída

     >>> frase = 'Olá mundo!'
     >>> print(frase)
     Olá mundo!
     >>> print(1 – 3)
     -2
     >>> print('ialp')
     ialp
     >>> print()

     >>>




                            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Comando de entrada

     >>> nome = input('Insira seu nome: ')
     Insira seu nome: Luiz Augusto
     >>> print('Meu nome é %s' % nome)
     Meu nome é Luiz Augusto
     >>> inteiro = input('Número: ')
     Número: 5
     >>> inteiro + 2
     Traceback (most recent call last):
       File "<stdin>", line 1, in <module>
     TypeError: Can't convert 'int' object to str implicitly




                              UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Usando o Interpretador Interativo

     Convertendo tipos

     >>> inteiro = input('Número: ')
     Número: 5
     >>> inteiro
     '5'
     >>> type(inteiro)
     <class 'str'>
     >>> inteiro = int(inteiro)
     >>> type(inteiro)
     <class 'int'>
     >>> inteiro + 2
     7




                            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Conceitos Básicos
Pseudocódigo x Python




                    UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Pseudocódigo x Python | Tipos de dados

       Pseudocódigo             Python

      inteiro                          int
      ponto-flutuante                  float
      booleano                         bool
      caractere                        str
      string




                        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Pseudocódigo x Python | Operadores lógicos

       Pseudocódigo           Python

            e                        and
            ou                       or
            não                      not
            xou                      ^




                      UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Pseudocódigo x Python | Entrada e saída

       Pseudocódigo               Python

      escreva(<valor>)            print(<valor>)

       leia(<variavel>)           <variavel> = input(<string>)




                          UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Pseudocódigo x Python | Estruturas

       Pseudocódigo            Python

      se-então-senão           if-else

       enquanto-faça           while

                               for




                       UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Entendendo
o problema




         UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Entendendo o problema


   O objetivo é criar um jogo de adivinhação simples,
   onde o computador escolhe um número e você terá
   algumas chances para adivinhá-lo.
   A cada palpite, o computador diz se você está perto
   ou longe de acertar.




                          UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Primeira tentativa




            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Primeira tentativa


print('Bem-vindo!')                     # Mostra uma mensagem de boas-vindas
palpite = input('Chute um número: ')    # Pede um palpite ao usuário
palpite = int(palpite)                  # Converte a entrada para um número
if palpite == 5:                        # O palpite é igual a 5?
   print('Você ganhou!')                # Exibe uma mensagem de vitória
else:                                   # Caso contrário
   print('Você perdeu!')                # Exibe uma mensagem de derrota
print('Fim do jogo')                    # Finaliza o programa




                               UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Salvando o código
em algum lugar




            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Salvando o código em algum lugar

 1. Abra um editor de texto que utilize texto puro;
  ➢
      Gedit, Bloco de Notas, Notepad++, Sublime Text 2

 2.Escreva o código;
 3.Salve o arquivo com a extensão .py
  ➢
      jogo.py

 4.Para executar, utilize o comando python3
  ➢
      python3 jogo.py




                                  UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Test Drive




        UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Jogo de Adivinhação
Segunda tentativa




            UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Segunda tentativa

print('Bem-vindo!')
                                           ●
                                            if palpite == 5:
palpite = input('Chute um número: ')       ●
                                            if palpite <= 5:
palpite = int(palpite)                     ●
                                            print('Muito baixo')
if palpite == 5:                           ●
                                            print('Você ganhou!')
   print('Você ganhou!')                   ●
                                            print('Fim do jogo')
else:                                      ●
                                            else: (3x)
   if palpite > 5:                         ●
                                            if palpite > 5:
          print('Muito alto.')             ●
                                            print('Você perdeu')
   else:                                   ●
                                            print('Muito alto.')
          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 isso se chama Python?
  ●
   Python realmente presta?
  ●
   O que eu posso criar com Python?
  ●
   Existem diferentes versões do Python? Por quê?
  ●
   Ainda não entendi a parte: palpite = int(palpite)




                           UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
O que aprendemos hoje?

  ●
   Usar o interpretador interativo
  ●
   Diferenças entre o pseudocódigo e o Python
  ●
   Criar um código-fonte
  ●
   Funções:
    ● type()

    ● print()

    ● input()

    ● int()

  ●
   Estrutura if-else




                           UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Referências


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

SWEIGART, Al. Invent Your Own Computer Games with Python.
2. ed. [S. l. : s. n.]. 2010.




                          UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES

Aula 11 - Começando a programar: Condicionais

  • 1.
    Introdução a Algoritmose Linguagens de Programação Aula 11 | Começando a programar: condicionais Apresentação Luiz Augusto de M. Morais
  • 2.
    Roteiro Conceitos básicos ● Usando o Interpretador Interativo ● Pseudocódigo x Python Jogo de Adivinhação ● Entendendo o problema ● Primeira tentativa ● Salvando o código em algum lugar ● Perguntas idiotas ● Segunda tentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 3.
    Conceitos Básicos Usando o InterpretadorInterativo UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 4.
    Usando o InterpretadorInterativo ● Fazendo contas ● Tipos de dados ● Manipulando variáveis ● Comando de saída ● Comando de entrada ● Convertendo tipos UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 5.
    Usando o InterpretadorInterativo Fazendo cálculos >>> 34 + 2 36 >>> 4 – 5.5 -1.5 >>> 3 * 11 33 >>> 5 / 2 2.5 >>> 5 // 2 2 >>> 4 % 2 0 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 6.
    Usando o InterpretadorInterativo Tipos de dados >>> type(36) <class 'int'> >>> type(55.2) <class 'float'> >>> type(2 == 3) <class 'bool'> >>> type('a') <class 'str'> >>> type('IALP') <class 'str'> UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 7.
    Usando o InterpretadorInterativo Manipulando variáveis >>> numero = 2 >>> soma = numero + 3 >>> soma /= 2 >>> soma 2.5 >>> palavra = 'ialp' >>> palavra 'ialp' >>> numero / 0 Traceback (most recent call last): File "<stdin>", line 1, in <module> ZeroDivisionError: division by zero UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 8.
    Usando o InterpretadorInterativo Manipulando variáveis >>> nome Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'nome' is not defined >>> nome = 'Luiz Augusto' >>> nome 'Luiz Augusto' UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 9.
    Usando o InterpretadorInterativo Comando de saída >>> frase = 'Olá mundo!' >>> print(frase) Olá mundo! >>> print(1 – 3) -2 >>> print('ialp') ialp >>> print() >>> UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 10.
    Usando o InterpretadorInterativo Comando de entrada >>> nome = input('Insira seu nome: ') Insira seu nome: Luiz Augusto >>> print('Meu nome é %s' % nome) Meu nome é Luiz Augusto >>> inteiro = input('Número: ') Número: 5 >>> inteiro + 2 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: Can't convert 'int' object to str implicitly UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 11.
    Usando o InterpretadorInterativo Convertendo tipos >>> inteiro = input('Número: ') Número: 5 >>> inteiro '5' >>> type(inteiro) <class 'str'> >>> inteiro = int(inteiro) >>> type(inteiro) <class 'int'> >>> inteiro + 2 7 UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 12.
    Conceitos Básicos Pseudocódigo xPython UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 13.
    Pseudocódigo x Python| Tipos de dados Pseudocódigo Python inteiro int ponto-flutuante float booleano bool caractere str string UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 14.
    Pseudocódigo x Python| Operadores lógicos Pseudocódigo Python e and ou or não not xou ^ UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 15.
    Pseudocódigo x Python| Entrada e saída Pseudocódigo Python escreva(<valor>) print(<valor>) leia(<variavel>) <variavel> = input(<string>) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 16.
    Pseudocódigo x Python| Estruturas Pseudocódigo Python se-então-senão if-else enquanto-faça while for UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 17.
    Jogo de Adivinhação Entendendo oproblema UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 18.
    Entendendo o problema O objetivo é criar um jogo de adivinhação simples, onde o computador escolhe um número e você terá algumas chances para adivinhá-lo. A cada palpite, o computador diz se você está perto ou longe de acertar. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 19.
    Jogo de Adivinhação Primeiratentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 20.
    Primeira tentativa print('Bem-vindo!') # Mostra uma mensagem de boas-vindas palpite = input('Chute um número: ') # Pede um palpite ao usuário palpite = int(palpite) # Converte a entrada para um número if palpite == 5: # O palpite é igual a 5? print('Você ganhou!') # Exibe uma mensagem de vitória else: # Caso contrário print('Você perdeu!') # Exibe uma mensagem de derrota print('Fim do jogo') # Finaliza o programa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 21.
    Jogo de Adivinhação Salvandoo código em algum lugar UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 22.
    Salvando o códigoem algum lugar 1. Abra um editor de texto que utilize texto puro; ➢ Gedit, Bloco de Notas, Notepad++, Sublime Text 2 2.Escreva o código; 3.Salve o arquivo com a extensão .py ➢ jogo.py 4.Para executar, utilize o comando python3 ➢ python3 jogo.py UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 23.
    Jogo de Adivinhação TestDrive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 24.
    Jogo de Adivinhação Segundatentativa UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 25.
    Segunda tentativa print('Bem-vindo!') ● if palpite == 5: palpite = input('Chute um número: ') ● if palpite <= 5: palpite = int(palpite) ● print('Muito baixo') if palpite == 5: ● print('Você ganhou!') print('Você ganhou!') ● print('Fim do jogo') else: ● else: (3x) if palpite > 5: ● if palpite > 5: print('Muito alto.') ● print('Você perdeu') else: ● print('Muito alto.') print('Muito baixo.') print('Fim do jogo') UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 26.
    Jogo de Adivinhação TestDrive UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 27.
    Jogo de Adivinhação PerguntasIdiotas UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 28.
    Perguntas Idiotas ● Por que isso se chama Python? ● Python realmente presta? ● O que eu posso criar com Python? ● Existem diferentes versões do Python? Por quê? ● Ainda não entendi a parte: palpite = int(palpite) UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 29.
    O que aprendemoshoje? ● Usar o interpretador interativo ● Diferenças entre o pseudocódigo e o Python ● Criar um código-fonte ● Funções: ● type() ● print() ● input() ● int() ● Estrutura if-else UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
  • 30.
    Referências BARRY, Paul; GRIFFITHS,David. Head First Programming. Sebastopol: O'Reilly, 2009. SWEIGART, Al. Invent Your Own Computer Games with Python. 2. ed. [S. l. : s. n.]. 2010. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES