Computação 2. Aula 11 Teórica professor: Leonardo Carvalho

Tamanho: px
Começar a partir da página:

Download "Computação 2. Aula 11 Teórica professor: Leonardo Carvalho"

Transcrição

1 Computação 2 Aula 11 Teórica professor: Leonardo Carvalho

2 SciPy 2

3 SciPy Conjunto de algoritmos matemáticos usados com frequência por cientistas e engenheiros. Alguns submódulos: cluster: algoritmos de clusterização fftpack: cálculo de transformada de Fourier integrate: integração e soluções de EDOs interpolate: interpolação linalg: álgebra linear ndimage: processamento de imagens optimize: otimização e cálculo de raizes signal: processamento de sinais 3

4 SciPy - integrate import scipy.integrate as integrate def f(x): return 6*x**2-4*x-2 res, err = integrate.quad(f, 0, 5) print res, err e-12 4

5 SciPy - integrate import scipy.integrate as integrate def f(x, y): return x*y def low(y): return 0 def high(y): return 1-2*y res, err = integrate.dblquad(f, 0.0, 0.5, low, high) print 1.0/96, res, err e-16 5

6 SciPy - optimize import scipy.optimize as optimize from numpy import sin, cos def f(x): return x*sin(x*2)*cos(3*x**2) print optimize.bisect(f, 1, 1.5)

7 SciPy - interpolate from scipy.interpolate import interp1d import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 5) y = np.array([3, -2, 1, 0, 2]) f1 = interp1d(x, y) f2 = interp1d(x, y, kind='cubic')... 7

8 SciPy - interpolate... xx = np.linspace(0, 10, 2000) y1 = f1(xx) y2 = f2(xx) plt.xlim(-1, 11) plt.ylim(-3, 4) plt.plot(x, y, 'o') plt.plot(xx, y1, '-') plt.plot(xx, y2, '--') plt.show() 8

9 SciPy - interpolate 9

10 SciPy - linalg Tudo que tem no numpy.linalg e mais um pouco! import numpy as np from scipy import linalg A = np.matrix([ [4, 3, 2], [7, 2, 5], [8, 0, -1], [9, 7, -3] ]) b = np.matrix([ [2], [1], [0], [4] ]) x, resid, rank, sing_val = linalg.lstsq(a, b) print x print resid print rank print sing_val 10

11 11

12 Problema Sistemas para resolver problemas complexos podem possuir milhares de linhas de código, com muitas classes e funções. Suponha que precisamos adicionar uma nova funcionalidade a um código existente, ou aperfeiçoar a implementação. Como ter certeza de que essa funcionalidade não vai "quebrar" o código? Ou seja, gostaríamos de manter o que funcionava antes funcionando depois. 12

13 Testes automáticos 13

14 Testes automáticos Podemos utilizar ferramentas que realizam testes automaticamente em busca de falhas no código. Exemplos: doctest, unittest, py.test, nose, tox 14

15 doctest Testes são definidos em docstrings, veja exemplo: import doctest def funcao(x, y): ''' Faz uma coisa muito louca. >>> funcao(3, 10) 108 >>> funcao(8, 23) 1232 ''' s = 0 for i in range(1, 100): if x%i==0 or y%i == 2: s += x*y - x return s if name == ' main ': doctest.testmod() 15

16 doctest Saída do programa: 16

17 doctest O programa só gera saída se for encontrado algum erro! 17

18 doctest Testes são definidos em docstrings, veja exemplo: import doctest def funcao(x, y): ''' Faz uma coisa muito louca. >>> funcao(3, 10) 1080 >>> funcao(8, 23) 1232 ''' s = 0 for i in range(1, 100): if x%i==0 or y%i == 2: s += x*y - x return s if name == ' main ': doctest.testmod() 18

19 doctest Saída do programa: ********************************************************************** File "aula.py", line 5, in main.funcao Failed example: funcao(3, 10) Expected: 1080 Got: 108 ********************************************************************** 1 items had failures: 1 of 2 in main.funcao ***Test Failed*** 1 failures. 19

20 doctest import doctest... def fatorial(n): ''' Calcula o fatorial de n >>> fatorial(5) 120 >>> fatorial(0) 1 >>> fatorial(2) 2 ''' if n <= 1: return n else: return n*fatorial(n-1) if name == ' main ': doctest.testmod() 20

21 doctest Saída do programa: ********************************************************************** File "aula.py", line 20, in main.fatorial Failed example: fatorial(0) Expected: 1 Got: 0 ********************************************************************** 1 items had failures: 1 of 3 in main.fatorial ***Test Failed*** 1 failures. 21

22 doctest import doctest... def fatorial(n): ''' Calcula o fatorial de n >>> fatorial(5) 120 >>> fatorial(0) 1 >>> fatorial(2) 2 ''' if n <= 1: return 1 else: return n*fatorial(n-1) if name == ' main ': doctest.testmod() 22

23 doctest - testfile Os testes não precisam estar na documentação das funções. Você pode criar um arquivo contendo todos os testes que desejar: Exemplo, arquivo sobre.txt: Sobre o módulo aula. Importe o módulo fazendo: >>> from aula import * Este módulo contém uma função chamada fatorial, que calcula o fatorial de um número (dããã). Exemplo: >>> fatorial(5) 120 >>> fatorial(0) 1 >>> fatorial(2) 2 23

24 doctest - testfile Programa para executar os testes: import doctest if name == ' main ': doctest.testfile('sobre.txt') 24

25 E se... Se quisermos testar a função fatorial para todos os valores entre 0 e 50? Colocar tudo na documentação é muito feio... 25

26 unittest Podemos criar objetos cujo único objetivo é fazer testes de código. import unittest from aula import fatorial class Testador(unittest.TestCase): def test_fatorial(self): self.assertequal(fatorial(0), 1) self.assertequal(fatorial(1), 1) self.assertequal(fatorial(2), 2) self.assertequal(fatorial(5), 120) if name == ' main ': unittest.main() 26

27 unittest Saída do programa: Ran 1 test in 0.000s OK 27

28 unittest Saída do programa (caso o programa esteja errado): F ====================================================================== FAIL: test_fatorial ( main.testador) Traceback (most recent call last): File "tutu.py", line 7, in test_fatorial self.assertequal(fatorial(0), 1) AssertionError: 0!= Ran 1 test in 0.000s FAILED (failures=1) 28

29 unittest Aperfeiçoando nosso teste: import unittest import math from aula import fatorial class Testador(unittest.TestCase): def test_fatorial(self): for i in range(0, 51): self.assertequal(fatorial(i), math.factorial(i)) if name == ' main ': unittest.main() 29

30 unittest Adicionando ao programa aula.py: def primo(n): '''Retorna True se n eh primo.''' if n in (0, 1): return False for i in range(2, n): if n%i == 0: return False return True 30

31 unittest Outros tipos de teste possíveis no unittest: import unittest import math from aula import * class Testador(unittest.TestCase):... def test_primo(self): '''Testa funcao primo.''' self.asserttrue(primo(13)) self.assertfalse(primo(0)) self.assertfalse(primo(4), msg='quatro não é primo') if name == ' main ': unittest.main() 31

32 unittest Saída do programa: Ran 2 tests in 0.001s OK 32

33 unittest Outros possíveis assert* # Verifica se a é diferente de b self.assertnotequal(a, b) # Verifica se primo('batata') vai gerar um TypeError self.assertraises(typeerror, primo, 'batata') # Verifica se valor pertence a L self.assertin(valor, L) # Verifica se a>b self.assertgreater(a, b) 33

34 34

35 Trabalho 35

36 Trabalho Individual, em dupla, ou em trio Prazo de entrega: 2 de março Objetivo: criar um programa em Python para resolver algum problema mais complexo do que os que fizemos em aula O programa deve ter: - Interface gráfica (tkinter) - Classes - Tratamento de exceções - arquivos - numpy 36

37 37

38 Provas 38

39 Datas das próximas provas Previsão de datas: P2: 24/02 P3: 09/03 39

Computação 2. Revisão Geral professor: Leonardo Carvalho

Computação 2. Revisão Geral professor: Leonardo Carvalho Computação 2 Revisão Geral professor: Leonardo Carvalho Datas das provas P2: 24/02/2016 P3: 09/03/2016 Revisão Recursão Fatorial recursivo def fatorial(n): if n > 0: return n*fatorial(n-1) else: return

Leia mais

Programação I Aula 17 Correção de programas Pedro Vasconcelos DCC/FCUP

Programação I Aula 17 Correção de programas Pedro Vasconcelos DCC/FCUP Programação I Aula 17 Correção de programas DCC/FCUP DCC/FCUP 2019 1/ 30 Nesta aula 1 Classes de erros 2 Execução passo-a-passo 3 Testes na documentação 4 Asserções 5 Outros erros comuns DCC/FCUP 2019

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 14: Deteção e correção de erros Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Erros sintáticos 2. Erros de execução 3. Erros

Leia mais

Introdução à Programação Aula 17 Deteção e correção de erros

Introdução à Programação Aula 17 Deteção e correção de erros Introdução à Programação Aula 17 Deteção e correção de erros Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 17 Deteção e correção de erros 2015 1 / 31 Nesta

Leia mais

1 Definição de funções 1. 2 Valores boleanos e condicionais 5. Podemos depois usar as novas funções tal qual as pré-definidas

1 Definição de funções 1. 2 Valores boleanos e condicionais 5. Podemos depois usar as novas funções tal qual as pré-definidas Nesta aula... Conteúdo 1 Definição de funções 1 2 Valores boleanos e condicionais 5 1 Definição de funções Definição de novas funções Na aula passada: vimos como usar os operadores e funções pré-definidas

Leia mais

Python: Exceções, Iteradores e Geradores. Claudio Esperança

Python: Exceções, Iteradores e Geradores. Claudio Esperança Python: Exceções, Iteradores e Geradores Claudio Esperança Exceções Quando um programa encontra dificuldades não previstas, diz se que uma condição excepcional ou uma exceção ocorreu Um erro é uma exceção

Leia mais

Entrada e saída. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá

Entrada e saída. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá Entrada e saída Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual

Leia mais

Integração numérica. Prof. Luiz T. F. Eleno. Departamento de Engenharia de Materiais Escola de Engenharia de Lorena Universidade de São Paulo

Integração numérica. Prof. Luiz T. F. Eleno. Departamento de Engenharia de Materiais Escola de Engenharia de Lorena Universidade de São Paulo Integração numérica Prof. Luiz T. F. Eleno Departamento de Engenharia de Materiais Escola de Engenharia de Lorena Universidade de São Paulo 2018 LOM3260 (EEL-USP, 2018) Integração numérica Prof. Luiz T.

Leia mais

Algoritmos e estrutura de dados

Algoritmos e estrutura de dados Algoritmos e estrutura de dados Introdução Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. Conteúdo A linguagem Python

Leia mais

Analises de Sinais Introdução ao Python. Prof. George Sand Franca Profa. Susanne Maciel

Analises de Sinais Introdução ao Python. Prof. George Sand Franca Profa. Susanne Maciel Analises de Sinais Introdução ao Python Prof. George Sand Franca Profa. Susanne Maciel Introdução ao Python Introdução muito rápido para Python e em particular o seu sistema científico para o caso de você

Leia mais

Python 3.x Estrutura de Repetição for Estrutura de Decisão if then else

Python 3.x Estrutura de Repetição for Estrutura de Decisão if then else Python 3.x Estrutura de Repetição for Estrutura de Decisão if then else Introdução à Ciência da Computação Prof. Edison Ishikawa Agenda Laço for Condicionais Expressões Booleanas Operadores Lógicos Tabela

Leia mais

Python 3.x Estrutura de Repetição while

Python 3.x Estrutura de Repetição while Python 3.x Estrutura de Repetição while Introdução à Ciência da Computação Prof. Edison Ishikawa Sumário Atribuição Atualizando variáveis Iterações Revisitando o laço for Laço while Rastreando um programa

Leia mais

1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores

1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores Nesta aula... Conteúdo 1 Expressões, valores e tipos 1 2 Variáveis e atribuições 5 1 Expressões, valores e tipos Expressões e valores Tipos programas calculam expressões para produzir valores cálculo de

Leia mais

SCC0124 Introdução à Programação para Engenharias

SCC0124 Introdução à Programação para Engenharias SCC0124 Introdução à Programação para Engenharias 1. Escreva uma função ehpar(n) que recebe um número inteiro n e retorna se ele é par ou ímpar. Observação: a função não deve imprimir nada na tela, apenas

Leia mais

Processamento da Informação Teoria Funções

Processamento da Informação Teoria Funções Processamento da Informação Teoria Funções Semana 01 Prof. Jesús P. Mena-Chalco 27/04/2013 Funções No contexto de linguagens de programação, uma função é uma sequência de instruções utilizada para realizar

Leia mais

Laboratório de Programação 1 Aula 04

Laboratório de Programação 1 Aula 04 Laboratório de Programação 1 Aula 04 Mário Hozano professor@hozano.com Ciência da Computação UFAL - Arapiraca Relembrando a aula anterior... O que são valores, tipos e variáveis? Descreva os tipos int,

Leia mais

1 Detecção e correcção de erros 1 1.1 Erros sintáticos... 1 1.2 Erros de execução... 2 1.3 Erros semânticos... 5 1.4 Erros semânticos...

1 Detecção e correcção de erros 1 1.1 Erros sintáticos... 1 1.2 Erros de execução... 2 1.3 Erros semânticos... 5 1.4 Erros semânticos... Nesta aula... Conteúdo 1 Detecção e correcção de erros 1 1.1 Erros sintáticos............................. 1 1.2 Erros de execução............................ 2 1.3 Erros semânticos............................

Leia mais

Computação 1 - Python Aula 2 - Teórica. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 39

Computação 1 - Python Aula 2 - Teórica. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 39 Computação 1 - Python Aula 2 - Teórica Função 1/ 39 Calcule a área da coroa circular (anel) formada por dois círculos de raios r1 e r2 (r1 > r2 e Pi = 3.14). 2/ 39 Calcule a área da coroa circular (anel)

Leia mais

Computação I - Python

Computação I - Python Computação I - Python Aula 2 - Teórica: João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/ Computação I - Python Aula 2 1

Leia mais

1/ 26. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função

1/ 26. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função 1/ 26 Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função Python - Modo Interativo Experiência com programação e uso do computador 2/ 26 Primeiros Passos - Operadores adição + subtração multiplicação

Leia mais

Nesta aula... Diagramas da stack. Recursão. 1 Funções. 2 Valores booleanos e condicionais. 3 Execução condicional e recursão

Nesta aula... Diagramas da stack. Recursão. 1 Funções. 2 Valores booleanos e condicionais. 3 Execução condicional e recursão Nesta aula... 1 2 Diagramas da stack 3 Recursão Instruções compostas keyword expression: statement statement... Âmbito de variáveis âmbito local: quando precisa do valor de uma variável, Python procura

Leia mais

Os elementos da programação

Os elementos da programação Os elementos da programação Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual

Leia mais

Computação I - Python Aula 1 - Prática: Primeiros Passos- Função

Computação I - Python Aula 1 - Prática: Primeiros Passos- Função Computação I - Python Aula 1 - Prática: Primeiros Passos- Função João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/ Computação

Leia mais

1/ 23. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função

1/ 23. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função 1/ 23 Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função Python - Modo Interativo Experiência com programação e uso do computador 2/ 23 Primeiros Passos - Operadores adição + subtração multiplicação

Leia mais

Computação 1. Aula 11 Teórica professor: Leonardo Carvalho

Computação 1. Aula 11 Teórica professor: Leonardo Carvalho Computação 1 Aula 11 Teórica professor: Leonardo Carvalho Últimos assuntos do curso! 2 Comunicação com o usuário 3 Comunicação com o usuário Como fazer o programa informar ou perguntar coisas ao usuário?

Leia mais

Interpolação. Série 1D. Interpolação polynomial, Interpolação por troços: linear, splines. Sensibilidade à amostra. Geração de amostras aleatórias.

Interpolação. Série 1D. Interpolação polynomial, Interpolação por troços: linear, splines. Sensibilidade à amostra. Geração de amostras aleatórias. AULA 4 Interpolação. Série 1D. Interpolação polynomial, Interpolação por troços: linear, splines. Sensibilidade à amostra. Geração de amostras aleatórias. Laboratório Numérico 1 Porquê interpolar? Produzir

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 20: Traçado de gráficos Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Matplotlib 2. Geração de gráficos 3. Tipos de gráficos

Leia mais

Computação I - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings

Computação I - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings Computação I - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/

Leia mais

Computação II MAB EE2/ET2/ER2. SciPy & NumPy. Brunno Goldstein.

Computação II MAB EE2/ET2/ER2. SciPy & NumPy. Brunno Goldstein. Computação II MAB 225 - EE2/ET2/ER2 SciPy & NumPy Brunno Goldstein bfgoldstein@cos.ufrj.br www.lam.ufrj.br/~bfgoldstein Ementa Programação Orientada a Objetos Tratamento de Exceções Módulos Manipulação

Leia mais

Introdução à Ciência da Computação Disciplina:

Introdução à Ciência da Computação Disciplina: Introdução à Ciência da Computação Disciplina: 113913 Prof. Edison Ishikawa Python 3.0 Aula 5 Funções frutíferas Sumário Funções frutíferas Valores de retorno Desenvolvimento de programas Composição Funções

Leia mais

Computação 1 - Python 1/ 41

Computação 1 - Python 1/ 41 Computação 1 - Python Aula 2 - Teórica: Função 1/ 41 Função Exercício: Calcule a área da coroa circular (anel) formada por dois círculos de raios r1 e r2 (r1 > r2 e Pi = 3.14). 2/ 41 Função Exercício:

Leia mais

1 Da aula teórica ao Java

1 Da aula teórica ao Java Universidade Federal do ABC Bacharelado em Ciência da Computação Processamento da Informação - Prof. Fabrício Olivetti de França Guia de tradução entre Java e outras linguagens 1 Da aula teórica ao Java

Leia mais

Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18

Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18 Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - 1/ 18 Considere que você precisa fazer uma função que guarde o nome e o telefone de seus amigos. Sua função também deve permitir a consulta

Leia mais

Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 30

Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 30 Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings 1/ 30 Variáveis e Atribuição Dados a hora, minuto e segundo em que um corredor de uma maratona partiu, e dados a hora, minuto e segundos

Leia mais

Projeto de funções e instruções condicionais

Projeto de funções e instruções condicionais Projeto de funções e instruções condicionais Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons

Leia mais

Introdução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC

Introdução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC Introdução ao Python Prof. Fabrício Olivetti de França Universidade Federal do ABC Python Linguagem interpretada criada em 1991 Objetivos: enfatizar a legibilidade do código e, encurtar o tamanho dos códigos.

Leia mais

Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28

Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28 Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28 Listas - Fatias Podemos usar a notação de fatias (slices) em listas: [start : end] : vai do índice start até o índice end-1 [start : ] : vai de start

Leia mais

Processamento da Informação Teoria. Listas e Matrizes

Processamento da Informação Teoria. Listas e Matrizes Processamento da Informação Teoria Listas e Matrizes Semana 07 Prof. Jesús P. Mena-Chalco 05/06/2013 Função range (cria uma lista) >>> range(1,5) [1, 2, 3, 4] >>> range(5,10) [5, 6, 7, 8, 9] Uma lista

Leia mais

Vetores. Vanessa Braganholo

Vetores. Vanessa Braganholo Vetores Vanessa Braganholo vanessa@ic.uff.br Exemplo Motivacional } Programa para auxiliar a escrever Parabéns! nas melhores provas de uma disciplina com 3 alunos } Ler os nomes e as notas de 3 alunos

Leia mais

Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas

Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/

Leia mais

Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28

Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28 Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28 Tipos de Dados Dados Numéricos Números Inteiros: Int/Long Ponto Flutuante: Float Números Complexos: Complex

Leia mais

Aplicações de Dicionários. Prof. Alberto Costa Neto Programação em Python

Aplicações de Dicionários. Prof. Alberto Costa Neto Programação em Python Aplicações de Dicionários Prof. Alberto Costa Neto Programação em Python Qual é o nome mais comum? alberto pedro maria luiz maria lucia clara pedro Qual é nome mais comum? alberto pedro maria luiz maria

Leia mais

Programação Python. Nesta aula... 1 Programação. 2 Python. Operadores e Operandos Variáveis, Expressões, Instruções Funções Ciclos Comentários

Programação Python. Nesta aula... 1 Programação. 2 Python. Operadores e Operandos Variáveis, Expressões, Instruções Funções Ciclos Comentários Nesta aula... 1 2 Introdução à - minor Ciência de computadores: incluí tópicos de matemática (linguagens formais para especificar ideias) engenharia (projetar, juntar componentes para formar um sistema,

Leia mais

Listas e Tuplas. Vanessa Braganholo

Listas e Tuplas. Vanessa Braganholo Listas e Tuplas Vanessa Braganholo vanessa@ic.uff.br Exemplo Motivacional } Programa para auxiliar a escrever Parabéns! nas melhores provas de uma disciplina com 3 alunos } Ler os nomes e as notas de 3

Leia mais

MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples. Instituto de Computação Unicamp

MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples. Instituto de Computação Unicamp MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples Instituto de Computação Unicamp 2016 Roteiro 1 Shell Interativa 2 Estrutura de um Programa em Python 3 Variáveis

Leia mais

PROGRAMAÇÃO E PYTHON. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

PROGRAMAÇÃO E PYTHON. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes Sjsoft, http://westmarch.sjsoft.com/2012/11/zen-of-python-poster/ PROGRAMAÇÃO E PYTHON Laboratórios de Informática 2014-2015 João Paulo Barraca, André Zúquete, Diogo Gomes Porquê Programar? Com ferramentas

Leia mais

Listas, conjuntos e dicionários

Listas, conjuntos e dicionários Listas, conjuntos e dicionários Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual

Leia mais

Introdução à Programação Aula 4 Definição de funções

Introdução à Programação Aula 4 Definição de funções Introdução à Programação Aula 4 Definição de funções Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 4 Definição de funções 2015 1 / 28 Nesta aula... 1 Definição

Leia mais

Python. 17 Maio 2005, Teste e Qualidade de Software. Faculdade de Engenharia da Universidade do Porto. Ferramentas de teste para a linguagem.

Python. 17 Maio 2005, Teste e Qualidade de Software. Faculdade de Engenharia da Universidade do Porto. Ferramentas de teste para a linguagem. Faculdade de Engenharia da Universidade do Porto 17 Maio 2005, Teste e Qualidade de Software Estrutura da apresentação 1 à 2 Ferramentas para testes unitários 3 Ferramentas para cobertura de 4 Ferramentas

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece

Leia mais

Simulado de Linguagem de Programação Java

Simulado de Linguagem de Programação Java Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as

Leia mais

Curso básico de Python para estudantes de Física

Curso básico de Python para estudantes de Física Curso básico de Python para estudantes de Física Germán A. Racca Universidade do Estado do Rio Grande do Norte Faculdade de Ciências Exatas e Naturais Departamento de Física Mossoró - RN 25 de Maio de

Leia mais

Programação I Aula 4 Definição de procedimentos e funções

Programação I Aula 4 Definição de procedimentos e funções Programação I Aula 4 Definição de procedimentos e funções Pedro Vasconcelos DCC/FCUP 2018 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções 2018 1 / 28 Nesta aula...

Leia mais

Padrão para a codificação em Python

Padrão para a codificação em Python Padrão para a codificação em Python Bonito é melhor que feio. Explícito é melhor que implícito. Simples é melhor que complexo. Complexo é melhor que complicado. Esparso é melhor que denso. Legibilidade

Leia mais

Computação 2. Aula 8 Teórica professor: Leonardo Carvalho

Computação 2. Aula 8 Teórica professor: Leonardo Carvalho Computação 2 Aula 8 Teórica professor: Leonardo Carvalho Exercício Escreva uma função que recebe uma lista L de valores inteiros e retorna uma lista contendo o triplo de cada valor em L. def triplos(l):

Leia mais

Nesta aula... Parâmetros opcionais Atribuição abreviada Instruções break e continue Interrupção da execução. 1 Estudo desta disciplina.

Nesta aula... Parâmetros opcionais Atribuição abreviada Instruções break e continue Interrupção da execução. 1 Estudo desta disciplina. Nesta aula... 1 2 Parâmetros opcionais Atribuição abreviada Instruções break e continue Interrupção da execução 3 Forum: https://piazza.com/up.pt/fall2012/cc101/home Livro: versão PDF: http: //www.greenteapress.com/thinkpython/html/index.html

Leia mais

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON 02/47 O QUE É PYTHON? Python é uma linguagem de propósito geral, de alto nível e interpretada Python será

Leia mais

INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2

INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2 INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2 *Exercícios de provas anteriores escolhidos para você estar preparado para qualquer questão na prova. Resoluções em simplificaaulas.com. Listas(= tipo

Leia mais

Usando gráficos python e arduino

Usando gráficos python e arduino [1] maregito [1] 11:04 30 jun, 2015 [2] Bom final de dia Galerinha do Módulo 2! Segue um pequeno exemplo de como juntar o arduino com o pyhon. Este gráfico permite até 6 linhas simultaneamente, basta conectar

Leia mais

TCC 00308: Programação de Computadores I Organização de programas em Python

TCC 00308: Programação de Computadores I Organização de programas em Python TCC 00308: Programação de Computadores I 2017.1 Organização de programas em Python Vamos programar em Python! Como um programa é organizado? Quais são os tipos de dados disponíveis? Como variáveis podem

Leia mais

MC-102 Aula 11 Strings

MC-102 Aula 11 Strings MC-102 Aula 11 Strings Instituto de Computação Unicamp 22 de Setembro de 2016 Roteiro 1 Strings Strings; operações, funções e métodos 2 Processamento de Texto 3 Exercícios (Instituto de Computação Unicamp)

Leia mais

Computação I: Linguagem de Programação Python

Computação I: Linguagem de Programação Python Computação I: Linguagem de Programação Python reginaldo.re@utfpr.edu.br * Parte da apresentação foi gentilmente cedida pelo prof. Igor Steinmacher Agenda Objetivos Python: conceitos básicos O Ambiente

Leia mais

AULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa

AULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa AULA 2: INTRODUÇÃO A PYTHON Luís Feliphe Silva Costa Sumário Variáveis simples Entrada e Saída de dados Operadores Estruturas Condicionais Estruturas de repetição Funções Tratamento de erros Variáveis

Leia mais

Computação 1. Aula 5 - Teórica Professor: Leonardo Carvalho

Computação 1. Aula 5 - Teórica Professor: Leonardo Carvalho Computação 1 Aula 5 - Teórica Professor: Leonardo Carvalho Comparações múltiplas Aula 4 Prática: Exercício 5 Crie um programa que a cada clique do mouse desenhe uma linha da posição clicada a um dos pontos

Leia mais

Organização de programas em Python. Vanessa Braganholo

Organização de programas em Python. Vanessa Braganholo Organização de programas em Python Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem

Leia mais

Aula de hoje. Python para disciplinas básicas. Computação científica. Introdução. Álgebra Linear. Álgebra linear

Aula de hoje. Python para disciplinas básicas. Computação científica. Introdução. Álgebra Linear. Álgebra linear SCC 14 - Introdução à Programação para Engenharias Python para disciplinas básicas Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto

Leia mais

Processamento da Informação Teoria. Laços

Processamento da Informação Teoria. Laços Processamento da Informação Teoria Laços Semana 02 Prof. Jesús P. Mena-Chalco 04/05/2013 Laços (estruturas de repetição) Usado em situações em que é necessário repetir um determinado trecho de um programa,

Leia mais

AULA 2. Números e operações. Erros de arredondamento e de truncatura. Gráficos simples. Cópia de objetos. Estruturas de controlo.

AULA 2. Números e operações. Erros de arredondamento e de truncatura. Gráficos simples. Cópia de objetos. Estruturas de controlo. AULA 2 Números e operações. Erros de arredondamento e de truncatura. Gráficos simples. Cópia de objetos. Estruturas de controlo. Laboratório Numérico 1 Números inteiros Plain int: 32 bits, representa os

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 3 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Variáveis String Strings

Leia mais

Minicurso de Python Básico

Minicurso de Python Básico Ana Lívia S. S. Almeida, Guilherme Giordano P. Guimarães 10 de março de 2013 Introdução à Linguagem Python O que é Python? Python é uma linguagem de altíssimo nível, orientada a objetos, de tipagem dinâmica

Leia mais

Cassius Thalles T2. May 15, 2018

Cassius Thalles T2. May 15, 2018 Cassius Thalles T2 May 15, 2018 1 Fundamentos de Computação Gráfica 2 Trabalho 2 - Escala Mel O primeiro passo é importar os pacotes do python necessários para o desenvolvimento do trabalho. Aqui usarei

Leia mais

Computação 1. Aula 2 Teórica professor: Leonardo Carvalho

Computação 1. Aula 2 Teórica professor: Leonardo Carvalho Computação 1 Aula 2 Teórica professor: Leonardo Carvalho Reutilizar código Guardar instruções em Funções Funções pré-definidas Valor absoluto >>> abs(4) 4 >>> abs(-4) 4 >>> x = 5 >>> x, y = 5, 2 >>> abs(y**2

Leia mais

Minicurso de Python Aula 2. Raphael Lupchinski Marcelo Millani

Minicurso de Python Aula 2. Raphael Lupchinski Marcelo Millani Minicurso de Python Aula 2 Raphael Lupchinski Marcelo Millani Recapitulando Na última aula vimos a sintaxe básica de Python: Criar escopo utilizando : Identação baseada em 4 espaços Expressões matemáticas

Leia mais

Computação 2. Aula 7 Teórica professor: Leonardo Carvalho

Computação 2. Aula 7 Teórica professor: Leonardo Carvalho Computação 2 Aula 7 Teórica professor: Leonardo Carvalho Abstração 2 Abstração Do latim abstracione, que significa separação Ação de isolar um elemento de um todo 3 Exemplo O que você vê neste vídeo? 4

Leia mais

Computação 2. Aula 6 Teórica professor: Leonardo Carvalho

Computação 2. Aula 6 Teórica professor: Leonardo Carvalho Computação 2 Aula 6 Teórica professor: Leonardo Carvalho Quando é a prova? 2 13/01/2016 3 Códigos grandes são difíceis de manipular 4 Vamos organizar melhor nossos códigos! 5 Separe o código em módulos

Leia mais

Minicurso de Python Básico

Minicurso de Python Básico Ana Lívia S. S. Almeida, Guilherme Giordano P. Guimarães 25 de junho de 2013 Introdução à Linguagem Python O que é Python? Python é uma linguagem de altíssimo nível, orientada a objetos, de tipagem dinâmica

Leia mais

Aula passada. Aula passada... Sequências Funções puras e modificadores. Listas Tuplos

Aula passada. Aula passada... Sequências Funções puras e modificadores. Listas Tuplos Aula passada Listas Listas 1 Listas em compreensão Alguns idiomas úteis conjuntos ordenado de valores, cada um dos quais identificado por um índice; Operações com listas: semelhantes a operações com strings;

Leia mais

AULA 4. Estruturas e controlo: for, if, while, def. Somatórios. Funções python. Mais sobre regressão linear Laboratório Numérico 1

AULA 4. Estruturas e controlo: for, if, while, def. Somatórios. Funções python. Mais sobre regressão linear Laboratório Numérico 1 AULA 4 Estruturas e controlo: for, if, while, def. Somatórios. Funções python. Mais sobre regressão linear. 2018 Laboratório Numérico 1 Ciclo com contador vs operação vetorial np benchmark simples import

Leia mais

Programação I Aula 3 Primeiros programas

Programação I Aula 3 Primeiros programas Programação I Aula 3 Primeiros programas Pedro Vasconcelos DCC/FCUP 2018 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 3 Primeiros programas 2018 1 / 23 Nesta aula... 1 Tipos básicos 2 Variáveis e atribuições

Leia mais

Sequências - Tuplas. Sequências - Tuplas

Sequências - Tuplas. Sequências - Tuplas Sequências - Tuplas Sequência de valores separados por vírgulas. Elementos podem ser de tipos distintos. Endereçáveis, com índice 0 para o primeiro elemento Exemplos : >>> tupla="computadores e Programacao",

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 3: Primeiros Programas Rita P. Ribeiro 2018/2019 Departamento de Ciência de Computadores Nesta aula 1. Tipos básicos 2. Variáveis e atribuições 3. Programas

Leia mais

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012 Operações básicas + - / * ** ou pow(a,b) % = ==,!=, , = or, and, not Valor dos operadores 10/3 10.0/3 10/3.0 10%3

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 18: Definições recursivas Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Definições recursivas 2. Exemplos INTRODUÇÃO À PROGRAMAÇÃO

Leia mais

ICE-B. 7 - Condições. Ludwig Krippahl

ICE-B. 7 - Condições. Ludwig Krippahl ICE-B 7 - Condições Ludwig Krippahl Iteração Resumo Operadores relacionais: comparações Execução condicional: instrução if Valores booleanos (True, False) 1 Condições Operadores relacionais 2 Operadores

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 9: Cadeias de caracteres Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Cadeias de caracteres 2. Exemplo: a cifra de César

Leia mais

Introdução à Programação Aula 3 Primeiros programas

Introdução à Programação Aula 3 Primeiros programas Introdução à Programação Aula 3 Primeiros programas Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 3 Primeiros programas 2015 1 / 23 Nesta aula... 1 Tipos básicos

Leia mais

Processamento da Informação Estruturas de seleção simples e composta

Processamento da Informação Estruturas de seleção simples e composta Processamento da Informação Estruturas de seleção simples e composta Prof. Jesús P. Mena-Chalco CMCC/UFABC Q1/2017 1 Expressões Booleanas 2 Fonte: http://pt.wikipedia.org/wiki/george_boole Expressões Booleanas

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Solução do Primeiro Teste 29 de Março de 2014 09:00 10:30 1. (1.0) O que é um processo computacional? Qual a relação entre um programa e um processo computacional? Um processo

Leia mais

Processamento da Informação Teoria. Laços aninhados

Processamento da Informação Teoria. Laços aninhados Processamento da Informação Teoria Laços aninhados Semana 03 Prof. Jesús P. Mena-Chalco 10/05/2013 Uma possível solução da lista 02... Questão 1: Crie uma função que permita somar apenas os números impares

Leia mais

Curso básico de Python para estudantes de Física

Curso básico de Python para estudantes de Física Curso básico de Python para estudantes de Física Germán A. Racca Universidade do Estado do Rio Grande do Norte Faculdade de Ciências Exatas e Naturais Departamento de Física Mossoró - RN 01 de Junho de

Leia mais

Aula 6. Resolução de sistemas de equações lineares: Método de Gauss. Input/output. Laboratório Numérico 1

Aula 6. Resolução de sistemas de equações lineares: Método de Gauss. Input/output. Laboratório Numérico 1 Aula 6 Resolução de sistemas de equações lineares: Método de Gauss. Input/output Laboratório Numérico 1 Resolver Método: 1x 1 + 2x 2 + x 3 = 1 ቐ 5x 1 + 2x 2 + x 3 = 2 x 1 + x 2 + x 3 = 1 Modificando progressivamente

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 6: Mais sobre ciclos Rita P. Ribeiro 2018/2019 Departamento de Ciência de Computadores Nesta aula 1. Ciclos for 2. Ciclos while 3. Saída e continuação num

Leia mais

Processamento da Informação Teoria. Recursividade

Processamento da Informação Teoria. Recursividade Processamento da Informação Teoria Recursividade Semana 08 Prof. Jesús P. Mena-Chalco 15/06/2013 Uma função chama outra função Vimos exemplos de uma função chamar uma outra função. def fatorial1(n): mult

Leia mais

Dicionários. Prof. Alberto Costa Neto Programação em Python

Dicionários. Prof. Alberto Costa Neto Programação em Python Dicionários Prof. Alberto Costa Neto Programação em Python O que é uma Coleção? Uma coleção permite colocar vários valores em um única variável Coleções são práticas porque permitem carregar muitos valores

Leia mais

Informática Aplicada à Engenharia Florestal

Informática Aplicada à Engenharia Florestal Informática Aplicada à Engenharia Florestal INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 3 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Variáveis

Leia mais

Sem mais delongas, hoje introduziremos o conceito de Função. Mas o que é uma função?

Sem mais delongas, hoje introduziremos o conceito de Função. Mas o que é uma função? Computação I Apostila 2 Cá estou eu para ajudar nessa batalha contra comp. Pra quem ainda não me conhece meu nome é Edivaldo. Na última apostila, pudemos ter uma noção do que é algoritmo e a lógica de

Leia mais

10 - Ciclo while. Ludwig Krippahl 4/3/2019 ICE-B-10 ICE-B

10 - Ciclo while. Ludwig Krippahl 4/3/2019 ICE-B-10 ICE-B ICE-B 10 - Ciclo while Ludwig Krippahl file:///media/ludi/gaveta/my Documents/Aulas/ICE-B-1819-2/Lectures/10-while.html?print-pdf#/ 1/35 while Resumo Ciclo while Iterar enquanto uma condição for verdadeira

Leia mais

Integração Arduino - Python Leitura de sensor de umidade e temperatura

Integração Arduino - Python Leitura de sensor de umidade e temperatura Integração Arduino - Python Leitura de sensor de umidade e temperatura Filipi Nascimento Silva, Luciano da Fontoura Costa Disciplina: Modelagem Matemático - Computacional Nesta prática, usaremos um programa

Leia mais