Computação 2. Aula 6 Teórica professor: Leonardo Carvalho
|
|
- Débora Álvares
- 5 Há anos
- Visualizações:
Transcrição
1 Computação 2 Aula 6 Teórica professor: Leonardo Carvalho
2 Quando é a prova? 2
3 13/01/2016 3
4 Códigos grandes são difíceis de manipular 4
5 Vamos organizar melhor nossos códigos! 5
6 Separe o código em módulos Todo arquivo com extensão.py é um módulo! Exemplo, arquivo areas.py: import math def area_triangulo(a, b, c): '''Calcula a area de um triangulo de lados a, b, c.''' p = (a+b+c)/2.0 return math.sqrt(p*(p-a)*(p-b)*(p-c)) def area_retangulo(ret): '''Calcula a area de um retangulo dado por uma tupla contendo os seus lados.''' return ret[0]*ret[1] 6
7 Separe o código em módulos Arquivo teste.py: import areas print 'Area =', areas.area_triangulo(3, 4, 5) Area = 6.0 Saída do programa 7
8 Separe o código em módulos Arquivo teste.py: import areas import random def retangulo_aleatorio(): '''Retorna um retangulo aleatorio.''' a = random.randint(1, 100) b = random.randint(1, 100) return a, b R = retangulo_aleatorio() print 'Area do retangulo', R, '=', areas.area_retangulo(r) Saída do programa Area do retangulo (47, 16) = 752 8
9 Posso usar o arquivo teste.py como módulo? Com certeza Que bom! 9
10 Separe o código em módulos Arquivo outro_teste.py: import teste P = teste.retangulo_aleatorio() print 'Retangulo', P Saída do programa Area do retangulo (18, 39) = 702 Retangulo (75, 49) 10
11 Como evitar que a saída do teste.py apareça no outro_teste.py? 11
12 Precisamos descobrir se um código está sendo executado a partir de um import ou por si próprio 12
13 Variável name Arquivo abacate.py: print 'Olha:', name Saída do programa abacate.py Olha: main Arquivo batata.py: import abacate print 'E agora:', name Saída do programa batata.py Olha: abacate E agora: main 13
14 Guardião de código Arquivo teste.py: import areas import random def retangulo_aleatorio(): '''Retorna um retangulo aleatorio.''' a = random.randint(1, 100) b = random.randint(1, 100) return a, b if name == ' main ': R = retangulo_aleatorio() print 'Area do retangulo', R, '=', areas.area_retangulo(r) 14
15 Função main Arquivo teste.py: import areas import random def retangulo_aleatorio(): '''Retorna um retangulo aleatorio.''' a = random.randint(1, 100) b = random.randint(1, 100) return a, b def main(): R = retangulo_aleatorio() print 'Area do retangulo', R, '=', areas.area_retangulo(r) if name == ' main ': main() 15
16 Testando novamente outro_teste.py Arquivo outro_teste.py: import teste P = teste.retangulo_aleatorio() print 'Retangulo', P Retangulo (94, 72) Saída do programa 16
17 Conclusão Organize seus códigos em módulos. Crie uma função main e a proteja com if name == ' main ': main() 17
18 Exercício 2 da Aula 5 Prática Inclua no seu programa a seguinte string: dados = '''001:Bulbasaur:Ovo 002:Ivysaur:Bulbasaur 003:Venusaur:Ivysaur 004:Charmander:Ovo 005:Charmeleon:Charmander''' você pode encontrar a lista contendo os 151 primeiros pokemons em: dcc.ufrj.br/~lcarvalho/pokemon.txt A partir desta string crie uma lista (tipo list) de objetos da classe Pokemon. Dica: use a função a.split(x) para separar linhas (caractere separador '\n') e informações de cada pokemon (caractere separador ':') 18
19 Solução... dados = '''001:Bulbasaur:Ovo 002:Ivysaur:Bulbasaur 003:Venusaur:Ivysaur 004:Charmander:Ovo 005:Charmeleon:Charmander 006:Charizard:Charmeleon 007:Squirtle:Ovo 008:Wartortle:Squirtle 009:Blastoise:Wartortle 010:Caterpie:Ovo''' P = [] for linha in dados.split('\n'): d = linha.split(':') p = Pokemon(int(d[0]), d[1], d[2]) P.append(p)... 19
20 Podemos ler os dados direto de um arquivo? 20
21 Abrindo um arquivo >>> a = open('pokemon.txt') >>> a.readline() '001:Bulbasaur:Ovo\n' >>> a.readline() '002:Ivysaur:Bulbasaur\n' >>> a.readline() '003:Venusaur:Ivysaur\n' >>> a.readline() '004:Charmander:Ovo\n'... >>> a.close() 21
22 Abrindo um arquivo >>> a = open('pokemon.txt') >>> a.read() "001:Bulbasaur:Ovo\n002:Ivysaur:Bulbasaur\n003:Venusaur:Ivysaur\n004: Charmander:Ovo\n005:Charmeleon:Charmander\n006:Charizard: Charmeleon\n007:Squirtle:Ovo\n... bla bla bla :Aerodactyl:Ovo\n143:Snorlax:Ovo\n144:Articuno:nada\n145:Zapdos: nada\n146:moltres:nada\n147:dratini:ovo\n148:dragonair:dratini\n149: Dragonite:Dragonair\n150:Mewtwo:nada\n151:Mew:nada\n" >>> a.read() '' >>> a.close() 22
23 Programa original... dados = '''001:Bulbasaur:Ovo 002:Ivysaur:Bulbasaur 003:Venusaur:Ivysaur 004:Charmander:Ovo 005:Charmeleon:Charmander 006:Charizard:Charmeleon 007:Squirtle:Ovo 008:Wartortle:Squirtle 009:Blastoise:Wartortle 010:Caterpie:Ovo''' P = [] for linha in dados.split('\n'): d = linha.split(':') p = Pokemon(int(d[0]), d[1], d[2]) P.append(p)... 23
24 Usando arquivo... arquivo = open('pokemon.txt') dados = arquivo.read() arquivo.close() P = [] for linha in dados.split('\n'): d = linha.split(':') p = Pokemon(int(d[0]), d[1], d[2]) P.append(p)... 24
25 E se eu quiser salvar? 25
26 Abrindo um arquivo em modo de escrita arquivo = open('saida.txt', 'w') a = 1872*'ding ' arquivo.write(a) arquivo.close() 26
27 Abrindo um arquivo em modo de adição arquivo = open('saida.txt', 'a') a = 1938*'dong ' arquivo.write(a) arquivo.close() 27
28 Exercício Crie um programa completo que leia um arquivo e imprima qual é a palavra mais frequente. Use a função raw_input para receber o nome do arquivo. 28
29 Solução def mais_frequente(frases): '''Retorna a palavra mais frequente de uma string.''' M = {} max_palavra = None contador = 0 for palavra in frases.split(): if palavra not in M: M[palavra] = 1 else: M[palavra] += 1 if M[palavra] > contador: contador = M[palavra] max_palavra = palavra return max_palavra 29
30 Solução def main(): name = raw_input('nome do arquivo:') arquivo = open(name) print mais_frequente(arquivo.read()) arquivo.close() if name == ' main ': main() 30
31 31
32 Exercício Crie uma classe Poligono que representa um polígono de n lados. O construtor deve receber o número n e um tamanho de lado e constrói um polígono regular de n lados com o tamanho especificado. Crie também um método desenha, que desenha este polígono usando o módulo turtle. 32
33 Exercício class Poligono: def init (self, n, lado=10): '''Constroi um Poligono regular de n lados.''' self.pts = [] dtheta = 2*math.pi/n for i in range(n): x = lado*math.cos(i*dtheta) y = lado*math.sin(i*dtheta) p = x, y self.pts.append(p) def desenha(self): '''Desenha o poligono em turtle.''' turtle.up() turtle.goto(self.pts[-1]) turtle.down() for p in self.pts: turtle.goto(p) 33
34 Exercício def main(): turtle.speed('fastest') p1 = Poligono(5, 50) p2 = Poligono(3) p3 = Poligono(8, 100) p4 = Poligono(7, 200) p1.desenha() p2.desenha() p3.desenha() p4.desenha() turtle.done() if name == ' main ': main() 34
35 Exercício Crie uma classe Triangulo. O construtor deve receber o tamanho do lado, e construir um triângulo equilátero com o lado especificado. Crie também um método desenha, que desenha este triângulo usando o módulo turtle. 35
36 Exercício class Triangulo: def init (self, lado): '''Constroi um Triangulo equilatero com o lado especificado.''' self.pts = [] dtheta = 2*math.pi/3 for i in range(3): x = lado*math.cos(i*dtheta) y = lado*math.sin(i*dtheta) p = x, y self.pts.append(p) def desenha(self): '''Desenha o triangulo em turtle.''' turtle.up() turtle.goto(self.pts[-1]) turtle.down() for p in self.pts: turtle.goto(p) 36
37 Exercício def main(): turtle.speed('fastest') p1 = Triangulo(50) p2 = Triangulo(30) p3 = Triangulo(100) p4 = Triangulo(200) p1.desenha() p2.desenha() p3.desenha() p4.desenha() turtle.done() if name == ' main ': main() 37
38 Exercício Crie uma classe Quadrilatero. O construtor deve receber o tamanho do lado, e construir um quadrado com o lado especificado. Crie também um método desenha, que desenha este quadrilátero usando o módulo turtle. 38
39 Exercício class Quadrilatero: def init (self, lado): '''Constroi um quadrado com o lado especificado.''' self.pts = [] dtheta = 2*math.pi/4 for i in range(4): x = lado*math.cos(i*dtheta) y = lado*math.sin(i*dtheta) p = x, y self.pts.append(p) def desenha(self): '''Desenha o quadrilatero em turtle.''' turtle.up() turtle.goto(self.pts[-1]) turtle.down() for p in self.pts: turtle.goto(p) 39
40 Exercício def main(): turtle.speed('fastest') p1 = Quadrilatero(50) p2 = Quadrilatero(30) p3 = Quadrilatero(100) p4 = Quadrilatero(200) p1.desenha() p2.desenha() p3.desenha() p4.desenha() turtle.done() if name == ' main ': main() 40
41 Como reaproveitar o código da classe Poligono nas outras classes? 41
42 Composição class Triangulo: def init (self, lado): '''Constroi um Triangulo equilatero com o lado especificado.''' self.poligono = Poligono(3, lado) def desenha(self): '''Desenha o triangulo em turtle.''' self.poligono.desenha() 42
43 Pode ser mais simples?
44 Herança! 44
45 Herança class Triangulo(Poligono): def init (self, lado): '''Constroi um Triangulo equilatero com o lado especificado.''' Poligono. init (self, 3, lado) class Quadrilatero(Poligono): def init (self, lado): '''Constroi um Triangulo equilatero com o lado especificado.''' Poligono. init (self, 3, lado) Agora um objeto da classe Triangulo também é um objeto da classe Poligono. Portanto todos os métodos da classe Poligono podem ser usados na classe Triangulo. Da mesma maneira, um Quadrilatero também é um Poligono. 45
46 Herança Exemplo genérico: class A: def metodo1(self,...):... def metodo2(self,...):... def metodo3(self,...):... class B(A): def metodox(self,...):... def metodoy(self,...):... def metodoz(self,...):... Dizemos que: B estende A B é uma subclasse de A A é super classe de B 46
47 Herança Exemplo genérico: pa = A(...) # cria um objeto da classe A pa.metodo1(...) pa.metodo2(...) pa.metodo3(...) pb = B(...) # cria um objeto da classe B, que também é da classe A. pb.metodo1(...) pb.metodo2(...) pb.metodo3(...) pb.metodox(...) pb.metodoy(...) pb.metodoz(...) 47
48 E se um método for redefinido? Exemplo genérico: class A: def metodo1(self): print 'ui' class B(A): def metodo1(self,...): print 'vixe' Dizemos que: metodo1 foi sobreposto (overridden) na classe B. 48
49 Métodos sobrepostos pa = A() pa.metodo1() pb = B() pb.metodo1() ui vixe Saída do programa 49
50 Verificando tipos >>> t = turtle.turtle() >>> p = Poligono(50) >>> q = Triangulo(50) >>> type(t) <class 'turtle.turtle'> >>> type(p) <type 'instance'> >>> type(q) <type 'instance'> 50
51 Classe object >>> a = object() >>> type(a) <type 'object'> >>> help(a) Help on object object: class object The most base type 51
52 Estendendo a classe object Se não tiver o que estender, estenda a classe object: class Poligono(object):... >>> t = turtle.turtle() >>> p = Poligono(50) >>> q = Triangulo(50) >>> type(t) <class 'turtle.turtle'> >>> type(p) <class ' main.poligono'> >>> type(q) <class ' main.triangulo'> >>> type(q) == Poligono False 52
53 Função isinstance >>> t = turtle.turtle() >>> p = Poligono(50) >>> q = Triangulo(50) >>> isinstance(t, turtle.turtle) True >>> isinstance(t, object) True >>> isinstance(p, Poligono) True >>> isinstance(p, object) True >>> isinstance(p, Triangulo) False >>> isinstance(q, Triangulo) True >>> isinstance(q, Poligono) True 53
54 done() 54
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 maisComputação 1. Aula 4 - Teórica Professor: Leonardo Carvalho
Computação 1 Aula 4 - Teórica Professor: Leonardo Carvalho Planejamento Relembrando Valores numéricos int, float operações: + - * / // ** % Variáveis atribuição simples e múltipla Sequências: str, tuple,
Leia maisComputaçã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 maisComputação 2. Aula 3 Teórica professor: Leonardo Carvalho
Computação 2 Aula 3 Teórica professor: Leonardo Carvalho Na vida precisamos de muitos tipos de dados Tipos de dados conhecidos int long float complex str tuple list dict Verificando tipos >>> i = 32 >>>
Leia maisComputação 1. Aula 7 Teórica professor: Leonardo Carvalho
Computação 1 Aula 7 Teórica professor: Leonardo Carvalho Ementa 2 Ementa Introdução ao ambiente de programação Python Funções - declaração - parâmetros - valor de retorno - chamada de funções Manipulação
Leia maisComputação 1. Aula 10 Teórica professor: Leonardo Carvalho
Computação 1 Aula 10 Teórica professor: Leonardo Carvalho Problema Como escrever a função exibe_ate, para obter o resultado abaixo: frase1 = 'Percebe ivair a petulancia do cavalo' frase2 = 'Elementar meu
Leia maisComputaçã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 maisComputaçã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 maisComputaçã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 maisComputação 1. Aula 8 Teórica professor: Leonardo Carvalho
Computação 1 Aula 8 Teórica professor: Leonardo Carvalho Mais exercícios com for 2 Exercício Escreva uma função que recebe um inteiro n e retorna o somatório: 3 Solução import math def somatorio(n): '''Calcula
Leia maisMAC2166 Introdução à Computação
Departamento de Ciência da Computação IME USP MAC2166 Introdução à Computação Escola Politécnica Primeiro Semestre de 2015 Prova Substitutiva QUESTÃO 1 Esta questão consiste na implementação de duas funções
Leia maisComputação II (MAB 225)
Computação II (MAB 225) Fabio Mascarenhas - 2015.1 http://www.dcc.ufrj.br/~fabiom/pythonoo Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato em nosso
Leia maisExercício. ... P = [] Q = [] for v in range(-200, 200, 50): P.append( (v, -100) ) Q.append( (v, 100) )
Computação 1 Exercícios Exercício... P = [] Q = [] for v in range(-200, 200, 50): P.append( (v, -100) ) Q.append( (v, 100) ) for a, b in zip(p, Q): turtle.up() turtle.goto(a) turtle.dot(10, 'red')... turtle.down()
Leia maisComputação 1. Revisão Geral professor: Leonardo Carvalho
Computação 1 Revisão Geral professor: Leonardo Carvalho O que vimos no curso? 2 Escrever uma palavra exatamente 1687 vezes >>>1687*'rapadura ' 3 Desenhos muito loucos 4 Desenhos muito loucos 5 Códigos
Leia maisDURAÇÃO DA PROVA: 2 horas
MAC2166 Introdução à Computação Grande Áreas Civil, Mecânica, Petróleo e Química Escola Politécnica Terceira Prova 21 de junho de 2016 Nome: Assinatura: N o USP: Turma: Professor: Instruções: 1. Não destaque
Leia maisComputação II MAB EE2/ET2/ER2. Manipulação de Arquivos. Brunno Goldstein.
Computação II MAB 225 - EE2/ET2/ER2 Manipulação de Arquivos 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 maisNesta 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 maisPython. Resumo e Exercícios P3
Python Resumo e Exercícios P3 Resuminho Teórico Classes e Objetos Tudo em python é um objeto, objetos são instâncias de classes, como int, float, list, etc. a = 5 # a é um objeto da classe int b = 2.0
Leia maisComputação 2. Aula 5 Teórica professor: Leonardo Carvalho
Computação 2 Aula 5 Teórica professor: Leonardo Carvalho Como criar funções recursivas? Pense no que a função vai fazer não se importando em como ela faz Exemplo Crie uma função recursiva remover_todos(l,
Leia maisComputação 1. Aula 3 - Teórica Professor: Leonardo Carvalho
Computação 1 Aula 3 - Teórica Professor: Leonardo Carvalho Quando é a prova? Então tudo mudou quando a nação do fogo atacou. Planejamento Aula 2 Prática: Tarefa 7 Usando o módulo Turtle, desenhe cada um
Leia maisMAC2166 Introdução à Computação
MAC2166 Introdução à Computação Escola Politécnica Primeiro Semestre de 2015 Prova 3 Departamento de Ciência da Computação IME USP QUESTÃO 1 Nesta questão considere expressões na forma posfixa como no
Leia maisComputação II MAB EPT/EP1. Manipulação de Arquivos. Brunno Goldstein.
Computação II MAB 225 - EPT/EP1 Manipulação de Arquivos Brunno Goldstein bfgoldstein@cos.ufrj.br www.cos.ufrj.br/~bfgoldstein Ementa Programação Orientada a Objetos Tratamento de Exceções Módulos Manipulação
Leia maisComputação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10
Computação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10 Estrutura de Repetição while Estrutura que permite a repetição de um conjunto de comandos. Até o momento vimos o while: while
Leia maisProcessamento 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 maisCurso de Python em 5 Horas
Curso de Python em 5 Horas Classes e Trabalhando com Arquivo Gustavo Sverzut Barbieri GPSL - UNICAMP 12 de maio de 2005 ustavo Sverzut Barbieri (GPSL - UNICAMP) Curso de Python em 5 Horas 12 de maio de
Leia maisComputaçã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 maisIntrodução à Programação Aula 19 Programação com objetos
Introdução à Programação Aula 19 Programação com objetos Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 19 Programação com objetos 2015 1 / 20 Nesta aula 1 Programação
Leia maisComputação 1 - Python Aula 11 - Teórica. programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 29
Computação 1 - Python Aula 11 - Teórica Interação com o usuário e programa principal 1/ 29 print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma
Leia maisComputação II (MAB 225)
Computação II (MAB 225) Fabio Mascarenhas - 2015.1 http://www.dcc.ufrj.br/~fabiom/pythonoo Introdução No curso de Computação I vocês viram os conceitos básicos de programação em Python: expressões e comandos,
Leia maisINTRODUÇÃ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 maisIntrodução a programação em Python Flávio Filipe L. S. Porto
Introdução a programação em Python Flávio Filipe L. S. Porto O que é Python? Linguagem de programação criada por Guido Van Rossum em 1991 com foco em produtividade e legibilidade. Por quê Python? Fácil
Leia maisMAC2166 Introdução à Computação
Departamento de Ciência da Computação - IME - USP MAC2166 Introdução à Computação Escola Politécnica - Primeiro Semestre de 2013 Prova 3 QUESTÃO 1 Em um jogo da velha temos um jogador Xis, um jogador Bola
Leia maisTrabalhando com Arquivos
Trabalhando com Arquivos Dados de um Programa Durante sua execução, um programa típico processa um ou mais conjuntos de dados. dados de entrada (usados pelo programa) e dados de saída (gerados pelo programa)
Leia maisINFORMÁTICA PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO
INFORMÁTICA PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO Prof. Dr. Daniel Caetano 2019-1 Objetivos O que são módulos Entender a utilidade das funções Compreender o escopo das variáveis Capacitar
Leia maisAula 28: Arquivos de texto
Aula 28: Arquivos de texto Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Baseado nos slides de Guillermo Cámara-Chávez Aulas anteriores Memória Ponteiro Utilização
Leia maisComputação 1 - Python Aula 7 - Teórica Estrutura de Repetição com Teste de Parada: while. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18
Computação 1 - Python Aula 7 - Teórica Estrutura de Repetição com Teste de Parada: while 1/ 18 Permite que o programador especifique que a função deve repetir um conjunto de comandos enquanto uma dada
Leia maisProcessamento da Informação Teoria. Exercícios sobre strings
Processamento da Informação Teoria Exercícios sobre strings Semana 04 Prof. Jesús P. Mena-Chalco 18/05/2013 Uma string é uma sequência Uma string (cadeia) é uma sequência de caracteres. Podemos acessar
Leia maisProcessamento 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 maisIntrodução à Programação
Introdução à Programação Aula 21: Programação com objetos Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Programação com objetos 2. Exemplo: módulo turtle 3. Tipos de dados
Leia maisComputação 1. Revisão para a P1 professor: Leonardo Carvalho
Computação 1 Revisão para a P1 professor: Leonardo Carvalho O que aprendemos até agora? 2 Resolver problemas de forma rápida e com precisão 3 Que problemas já conseguimos resolver? 4 Calcular expressões
Leia maisComputação 1 - Python Aula 12 - Teórica: Interação com o usuário e programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 25
Computação 1 - Python Aula 12 - Teórica: Interação com o usuário e programa principal 1/ 25 print: Usado para imprimir informações na tela. >>> print "Qual o seu nome?" Qual o seu nome? # Função que soma
Leia maisMAC2166 Introdução à Computação
Departamento de Ciência da Computação - IME - USP MAC2166 Introdução à Computação Escola Politécnica - Primeiro Semestre de 2013 Prova Substitutiva QUESTÃO 1 Um caixa de banco tem somente notas de a e
Leia maisIntrodução à Programação Aula 5 Ciclos e condicionais
Introdução à Programação Aula 5 Ciclos e condicionais Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 5 Ciclos e condicionais 2017 1 / 28 Nesta aula Na aula passada:
Leia maisPRIMEIROS 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 maisAula 4 Estrutura Condicional
Aula 4 Estrutura Condicional Relações e Exp. Booleanas Relações Operadores: >, =,
Leia maisAlgoritmos e Estrutura de Dados Aula 02 Listas em Python
Algoritmos e Estrutura de Dados Aula 02 Listas em Python Profa. Alana Oliveira e Prof. Davi Viana alanaslz@gmail.com e davi.viana@lsdi.ufma.br Se não entender, pergunte! 2 1 Dados e Tipos de Dados Um dado
Leia maisA Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python
A Linguagem Python: Uma visão geral Prof. Alberto Costa Neto Programação em Python Python é a linguagem do interpretador Python e daqueles que são capazes de conversar com ele. Um indivíduo que fala Python
Leia maisHerança (parte 2) Redefinição de métodos AULA 11
Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Herança (parte 2) Redefinição de métodos AULA 11 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares scbs@cin.ufpe.br Na aula passada
Leia maisProgramação I Aula 11 Mais sobre ciclos e iteração
Programação I Aula 11 Mais sobre ciclos e iteração Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 11 Mais sobre ciclos e iteração 2017 1 / 26 Nesta aula Vamos ver a iteração
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisPadrã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 maisRESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO
Leia maisProcessamento 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 maisApêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são:
Apêndice A Classe Vector A classe Vector permite a representação de um vetor de dados de maneira similar à de um array, visto na disciplina Programação Orientada a Objetos I, mas com maior flexibilidade.
Leia maisComputação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23
Computação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23 Permite que o programador especifique que o programa deve repetir um conjunto de comandos enquanto uma dada
Leia maisMAC2166 Introdução à Computação
Departamento de Ciência da Computação - IME - USP MAC2166 Introdução à Computação Escola Politécnica - Primeiro Semestre de 2014 Prova 2 QUESTÃO 1 (str,str,str) -> str que recebe três sequências de caracteres
Leia maisComputaçã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 mais1 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 maisProgramação I Aula 6 Números pseudo-aleatórios
Programação I Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP 2018 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 6 Números pseudo-aleatórios 2018 1 / 28 Nesta aula 1 Números pseudo-aleatórios
Leia maisComputação 1 - Python Aula 12 - Teórica. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 22
Computação 1 - Python Aula 12 - Teórica Modularização 1/ 22 Faça um programa que dado o salário bruto calcula o salário ĺıquido. O salário ĺıquido é calculado a partir do salário bruto, primeiro descontando
Leia maisProgramação I Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP
Programação I Aula 6 Números pseudo-aleatórios DCC/FCUP DCC/FCUP 2019 1/ 28 Nesta aula 1 Números pseudo-aleatórios 2 Jogo Hi-Lo 3 Passeio aleatório DCC/FCUP 2019 2/ 28 Números pseudo-aleatórios Por vezes
Leia maisProgramação I Aula 12 Mais sobre cadeias e listas
Programação I Aula 12 Mais sobre cadeias e listas Pedro Vasconcelos DCC/FCUP 2018 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 12 Mais sobre cadeias e listas 2018 1 / 28 Nesta aula 1 Listas em compreensão
Leia maisLinguagem Python. Inteligência Artificial. Características de Python. Importando módulos. Módulos. Usando Python no modo interativo
Linguagem Python Inteligência Artificial Aula 7 Profª Bianca Zadrozny http://www.ic.uff.br/~bianca/ia Introdução Características de Python Rodando programas Módulos Tipos básicos Números e variáveis Strings
Leia maisLista de Exercícios 2 Condicionais
Introdução à Ciência da Computação - 113913 Lista de Exercícios 2 Condicionais Observações: As listas de exercícios serão corrigidas por um corretor automático, portanto é necessário que as entradas e
Leia maisProf. 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 maisIntrodução à Programação / Programação I
Introdução à Programação / Programação I Aula 13: Mais sobre cadeias e listas Rita P. Ribeiro 2017/2018 Departamento de Ciência de Computadores Nesta aula 1. Formatação de texto 2. Listas em compreensão
Leia maisComputação 1 - Python Aula 9 - Teórica: Interferindo no fluxo de repetição: Break e Continue Laços Aninhados
Computação 1 - Python Aula 9 - Teórica: Interferindo no fluxo de repetição: Break e Continue Laços Aninhados 1/ 14 break e continue : Comandos que permitem alterar o fluxo da estrutura de repetição. #
Leia maisOs 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 mais4 Conceito de Herança
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Leia maisAlgoritmos 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 maisAula 11: Laços e exercícios
Aula 11: Laços e exercícios Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aula Anterior Manipulação de laços Exercício 2 /
Leia maisNas aulas anteriores. Programação orientada a objetos Classes Atributos e métodos
Nas aulas anteriores Classes Atributos e métodos Nesta aula... Nas aulas anteriores 1 2 3 : exemplo com frações Nesta aula vamos desenvolver uma classe para representar frações; Métodos: aquilo que se
Leia maisAula de hoje. Tipos de Dados e Variáveis. Constantes literais. Dados. Variáveis. Tipagem dinâmica. SCC Introdução à Programação para Engenharias
SCC 12 - Introdução à Programação para Engenharias Tipos de Dados e Variáveis Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes
Leia maisMCG126 Programação de Computadores II
MCG126 Programação de Computadores II Turmas: A e B Professor: Isac Mendes Lacerda (Material original cedido gentilmente pela professora Janaína Gomide) 1 Bibliografia 2 Bibliografia Introdução à Programação
Leia maisACH5531 Introdução à Computação Estruturas de repetição
ACH5531 Introdução à Computação Estruturas de repetição Prof. Dr. Grzegorz Kowal grzegorz.kowal@usp.br https://sites.google.com/usp.br/ach5531 1 o sem 2019 sexta-feira, 14h00-15h45 CB, Bloco 3, 2 o andar,
Leia maisPrática 10 - Funções
Programação de Computadores I UFOP DECOM June 9, 2016 Prática 10 - Funções Abstract Nesta aula prática você vai aprender a definir e usar funções em um programa. Contents 1 Funções 1 1.1 Definição e chamada
Leia maisDescritores de atributos em Python
Descritores de atributos em Python outubro/2012 Luciano Ramalho luciano@ramalho.org Ritmo desta palestra Recomendação: manter os olhos abertos Pré-requistos da palestra Para acompanhar os slides a seguir,
Leia maisComputadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004
Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 8 CLASSES E OBJECTOS 8. Objectivos Objectivos
Leia maisINSTRUÇÕES DE REPETIÇÃO
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 6 INSTRUÇÕES DE REPETIÇÃO As instruções de repetição permitem fazer com que a execução de uma
Leia maisArquivos O QUE É, COMO LER E MANIPULAR
Arquivos O QUE É, COMO LER E MANIPULAR Arquivos Variáveis oferecem armazenamento de dados temporariamente Os dados são perdidos quando o escopo da variável é finalizado ou quando o programa termina Arquivos
Leia maisPython: 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 maisComputaçã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 maisLinguagem Python. Processamento Estatístico da Linguagem Natural. Barra invertida em strings. Strings. Aspas triplas. Operações com Strings
Processamento Estatístico da Linguagem Natural Aula 7 Professora Bianca (Sala 302 Bloco E) bianca@ic.uff.br http://www.ic.uff.br/~bianca/peln/ Linguagem Python Introdução Características de Python Rodando
Leia maisProgramação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos
Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo
Leia maisIntroduçã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 maisLaborató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 mais1 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 maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Editor gráfico Vamos fazer um programa simples para desenho e manipulação de figuras geométricas: um nano-sketchpad
Leia maisPython Funções. Introdução à Programação SI1
Python Funções Introdução à Programação SI1 Conteúdo Funções Conceitos Objetivos Modularização Exemplos Exercícios 2 Funções O que são? Qual a função de uma função? 3 Imagine o código 4 Imagine o código
Leia maisComputaçã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 maisProgramação Orientada a Objetos SANTOS, Rafael
Programação Orientada a Objetos SANTOS, Rafael Neste capítulo e nos seguintes serão usados intensamente os conceitos básicos de OO e da linguagem estudados até agora, com ênfase para os de número 1, 2
Leia maisPROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95
PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:
Leia maisEntrada 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 maisComputação 2. Aula 11 Teórica professor: Leonardo Carvalho
Computação 2 Aula 11 Teórica professor: Leonardo Carvalho SciPy 2 SciPy Conjunto de algoritmos matemáticos usados com frequência por cientistas e engenheiros. Alguns submódulos: cluster: algoritmos de
Leia maisProcessamento da Informação Teoria. Coleções: Listas
Processamento da Informação Teoria Coleções: Listas Semana 06 Prof. Jesús P. Mena-Chalco 29/05/2013 Sobre strings... Podemos acessar (obter a informação) um caractere usando um índice (número inteiro).
Leia maisComputação 1. Aula 3 - Prática - Parte 1 Professor: Leonardo Carvalho
Computação 1 Aula 3 - Prática - Parte 1 Professor: Leonardo Carvalho O que sabemos fazer com strings? Concatenação de strings >>> 'a' + 'b' 'ab' >>> a = 'Um milhao de reais ' >>> b = 'em barras de ouro,
Leia mais