Turmas: A e B Professor: Isac Mendes Lacerda

0
0
65
6 months ago
Preview
Full text

  Turmas: A e B Professor: Isac Mendes Lacerda (Material original cedido gentilmente pela professora Janaína Gomide)

  MCG126

  • – Programação de Computadores II
Bibliografia

  Bibliografia algoritmos e lógica de programação para iniciantes Introdução à Programação com Python: Nilo Ney Coutinho Menezes Marco Medina e Cristina Fertig Algoritmos e Programação: Teoria e Prática Conteúdo Prog. 2

  1. Revisão

  2. Exceção

  3. Desempacotamento

  4. Datetime

  5. Conjunto

  6. Orientação a Objetos

  Monitoria

  • Nome do Monitor: (Informar depois)
  • E-mail:
  • Local: LIG
  • Horário de atendimento (informar depois):

  Avaliação

  • Prova 1 (P1) - 02/10/17
  • Prova 2 (P2) - 20/11/17
  • Exercícios (E) Média Final = ((P1*4.5)+(P2*4.5)+(E*1))/10 Média Final >= 5 Aprovado Média Final < 5 Reprovado

  Obs: algumas aulas serão no LIG

  Material de aula e informações

  https://sites.google.com/site/professorisacmendes/

  Revisão Strings

  • O que é impresso?
  • b) ps

      a) tr d) ck

      c) nn

      Strings

    • O que é impresso?
    • b) ps

        a) tr p y t h o n r o c k S d) ck c) nn -12 . . . . . -6 -5 -4 -3 -2 -1 1 2 3 4 5 6 . . . . 11

        Métodos String

      • que é impresso?
      • b) 2

          a) 0

          c) 3

          Métodos String

        • que é impresso?
        • b) 2

            a) 0 c) 3 ocorrências dos parâmetros indicados O método “COUNT” conta o número de

            Métodos String

          • que é impresso?
          • b) -1

              a) 0 d) Erro

              c) 1

              Métodos String

            • que é impresso?
            • b) -1

                a) 0 ? p y t h o n d) Erro c) 1

              • -1
              • 1 2 3 4 5 Comandos de Condição

                  Comando if

                • O que o seguinte código imprime:
                • b) VERDADEIRO

                    a) Nada será impresso d) FALSO

                    c) FALSO

                    VERDADEIRO Comandos de Condição

                    Comando if

                  • O que o seguinte código imprime:
                  • b) VERDADEIRO

                      a) Nada será impresso d) FALSO

                      c) FALSO

                      O que delimita os comandos em um “if” VERDADEIRO ou “else” é a indentação! Comandos de Repetição

                      While - break

                    • O que será impresso?

                      Comandos de Repetição

                      While - break

                    • O que será impresso?

                      Faça um programa em Python que calcule a soma dos números ímpares entre 1 e um limite superior definido pelo usuário: Comandos de Repetição

                      While

                      Faça um programa em Python que calcule a soma dos números ímpares entre 1 e um limite superior definido pelo usuário: Comandos de Repetição

                      While

                      Funções definidas pelo programador

                    • Porque usar funções?
                      • Evitar que os blocos do programa fiquem grandes demais, e por consequência, facilita a leitura e o entendimento
                      • Separar o programa em partes que possam ser logicamente compreendidos de forma isolada
                      • – Permitir o reaproveitamento de código já construído
                      • Evitar que um trecho de código seja repetido várias vezes dentro de um mesmo programa, minimizando erros e facilitando alterações.

                      Definição da função somaTresNumeros Uso da função somaTresNumeros

                      Funções definidas pelo programador

                    • Exemplos de uso:

                      Funções definidas pelo programador

                    • Escreva um programa que receba do usuário a base e a altura do triângulo e calcule sua área. Escreva uma função que calcule a área do triângulo (A = (base x altura) / 2).

                      Funções definidas pelo programador

                    • Considere o seguinte código Python. Observe que o número das linhas estão a esquerda. O que é impresso na tela?
                    • b) 5

                        a) 25 d) 32

                        c) 125

                        Funções definidas pelo programador

                      • Considere o seguinte código Python. Observe que o número das linhas estão a esquerda. O que é impresso na tela?
                      • b) 5

                          a) 25 d) 32

                          c) 125

                          Variáveis locais e variáveis globais

                        • O que é impresso por esse programa?
                        • c) x = 0 e z = 4 b) x = 0 e z = 2

                            a) x = 2 e z = 2

                            d) x = 2 e z = 4

                            Variáveis locais e variáveis globais

                          • O que é impresso por esse programa? Atribui novo valor ao parâmetro! apenas localmente! Variável x é alterada
                          • b) x = 0 e z = 2

                              a) x = 2 e z = 2 d) x = 2 e z = 4

                              c) x = 0 e z = 4

                              Parâmetros opcionais

                            • Podemos combinar parâmetros opcionais com obrigatórios na mesma função
                            • Mas parâmetros opcionais devem sempre ser os últimos

                              Quais são os resultados? Listas

                            • Qual o resultado do seguinte programa?
                            • b) 150

                                a) 100 d) Erro!

                                c) 10

                                Listas

                              • Qual o resultado do seguinte programa?
                              • b) 150

                                  a) 100 d) Erro!

                                  c) 10

                                  For

                                • • Embora a instrução for facilite nosso trabalho, ela não substitui

                                  outro. completamente o while. Dependendo do problema, utilizaremos um ou
                                • • Normalmente utilizaremos for quando quisermos processar os

                                  elementos de uma lista, um a um.
                                • • O while é mais indicado para repetições até uma condição ser atendida

                                  ou onde manipulamos índices de forma não sequencial.

                                  Função Range

                                  >>> ============RESTART ============= >>>

                                  1 2 3

                                  4 >>> >>> ============RESTART ============= >>> 53 54 55 56 57 >>>

                                  Tuplas tupla com elementos de diversos tipos:

                                • Uma

                                  tuplas são imutáveis!

                                • Mas não se esqueça,

                                  Strings: Métodos

                                  Strings: Métodos

                                  string substituindo

                                • replace(antigo, novo, contador) – retorna uma o antigo informado pelo novo informado. Se contador for informado faz apenas este total de substituições.

                                  Dicionários

                                • Dicionários são estruturas de dados que implementam mapeamentos
                                • Um mapeamento é uma coleção de associações entre pares de valores
                                  • – O primeiro elemento do par é chamado de chave e o segundo de valor ou conteúdo.

                                  Dicionários

                                  {}

                                • Para criar um dicionário vazio, use

                                  []

                                • Adicionar novos elementos, use
                                • Outra maneira de criar dicionários

                                  Dicionários • Se a chave não existir, uma exceção do tipo KeyError será ativada.

                                  Dicionários

                                • Para verificar se uma chave pertence ao dicionário, podemos usar o operador in .

                                  Dicionários

                                • Podemos obter o conjunto de chaves do dicionário, ou mesmo uma lista dos valores associados
                                • Observe que o retorno dos métodos keys() e values() não são listas, são outros objetos do Python !
                                • Mas podemos utilizá-los dentro de um for ou transformá-los em lista usando a função list

                                  Dicionários

                                • Principais características:

                                  1. Acesso ao item pela chave e não pelo índice

                                  2. Coleção desordenada de objetos: não mantêm uma ordem lógica para os objetos dentro deles.

                                  Dicionários

                                  Percorrendo um dicionário

                                • Nenhum método é necessário para percorrer um dicionário
                                • Mas, é possível usar o método keys()

                                  Dicionários

                                  Percorrendo um dicionário

                                • O método values() é usado para percorrer os valores
                                • O código acima é equivalente:

                                  Dicionários

                                  Percorrendo um dicionário

                                • O método items() é outra forma de percorrer chaves e valores.

                                  Dicionários: Métodos

                                  get (chave, [valor para ausência])

                                • – retorna o valor do par

                                  associado à chave fornecida. Quando a chave não existe é

                                  retornado o conteúdo de valor para ausência(se fornecido) ou None.

                                Dicionários

                                  Ordenação

                                • Como já vimos, dicionários não são ordenáveis

                                  Dicionários

                                  Ordenação • Mas podemos ordenar as chaves ou valores usando sorted().

                                • A função sorted() gera uma lista com o resultado da classificação desejada.

                                  Dicionários

                                  Percorrendo um dicionário

                                • sorted()
                                  • Imprimindo os itens ordenados pela chave
                                  • Imprimindo os itens ordenados pelos valores

                                  Dicionários com listas

                                • Podemos ter dicionários nos quais as chaves são associadas a listas ou mesmo a outros dicionários.
                                • Por exemplo, uma relação de estoque de mercadoria onde teríamos, além do preço, a quantidade em estoque .

                                  Dicionários com listas

                                dict.items() e retorna uma lista na

                                O comando for manipula o objeto

                                variável

                                  “dados”. Arquivos open retorna um objeto do tipo file (arquivo).

                                • A função
                                • É esse objeto que vamos utilizar para ler e escrever os dados no arquivo.

                                  write para escrever dados no arquivo.

                                • Utilizamos o método read.
                                • Para ler utilizamos o método close.
                                • Para fechar utilizamos o método

                                  Arquivos

                                • Vamos agora ler o arquivo e imprimir suas linhas na tela:

                                  readlines gera uma lista em que cada elemento é

                                • O método uma linha do arquivo • Observe que sempre vai existir os pares open e close.

                                  Gerando arquivos

                                • O que faz o programa abaixo? pares.txt respectivamente. Distribui os números ímpares e pares nos arquivos impares.txt e

                                  Lendo e Escrevendo

                                • O que faz o programa abaixo? apenas os múltiplos de 4 no arquivo multiplos4.txt O programa lê os números do arquivo pares.txt e escreve

                                  Principais Métodos de Arquivos

                                • read() - leitura de todo o conteúdo do arquivo em uma

                                  string única .

                                  Principais Métodos de Arquivos

                                • readline() - leitura do próximo registro. Incrementa o

                                  ponteiro do arquivo indicando a nova posição corrente.

                                  Principais Métodos de Arquivos

                                  Principais Métodos de Arquivos

                                • readlines() - leitura de todo o conteúdo do arquivo em

                                  uma lista. Cada registro do arquivo será um elemento da lista.

                                  Principais Métodos de Arquivos

                                • write(string) - escreve a string fornecida no arquivo, na

                                  posição atual ou ao final do arquivo, dependendo do modo de abertura. Esta função falha se o arquivo foi aberto com modo “r”. Retorna o tamanho da string gravada.

                                  Principais Métodos de Arquivos

                                  Principais Métodos de Arquivos

                                  Dicionários

                                Leia o arquivo que contém nomes, endereços e telefones e Exercício : Crie uma agenda telefônica. Imprima o dicionário na tela. armazene essas informações em um dicionário (com listas). John Smith:8809336:Rua do meio 1, Macaé, RJ O arquivo está no seguinte formato: Peter Power:7847321: Av. Principal 500, Macaé, RJ Emily Lame:67892345:Rua da praia 200, apto 900, Macaé, RJ como parâmetro o caractere separador. Obs1: Para separar uma string utilize o método split. Passe Prof. Isac Mendes Lacerda

                                  MCG126

                                • – Programação de Computadores II

Novo documento