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

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

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

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 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

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

Computaçã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 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

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

Computaçã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 mais

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

Computaçã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 mais

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

Computaçã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 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 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

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

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

Computaçã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 mais

MAC2166 Introdução à Computação

MAC2166 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 mais

Computação II (MAB 225)

Computaçã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 mais

Exercício. ... P = [] Q = [] for v in range(-200, 200, 50): P.append( (v, -100) ) Q.append( (v, 100) )

Exercí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 mais

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

Computaçã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 mais

DURAÇÃO DA PROVA: 2 horas

DURAÇÃ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 mais

Computação II MAB EE2/ET2/ER2. Manipulação de Arquivos. Brunno Goldstein.

Computaçã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 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

Python. Resumo e Exercícios P3

Python. 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 mais

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

Computaçã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 mais

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

Computaçã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 mais

MAC2166 Introdução à Computação

MAC2166 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 mais

Computação II MAB EPT/EP1. Manipulação de Arquivos. Brunno Goldstein.

Computaçã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 mais

Computaçã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 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 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

Curso de Python em 5 Horas

Curso 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 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

Introdução à Programação Aula 19 Programação com objetos

Introduçã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 mais

Computaçã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. 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 mais

Computação II (MAB 225)

Computaçã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 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

Introduçã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 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 mais

MAC2166 Introdução à Computação

MAC2166 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 mais

Trabalhando com Arquivos

Trabalhando 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 mais

INFORMÁTICA PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO

INFORMÁ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 mais

Aula 28: Arquivos de texto

Aula 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 mais

Computaçã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. 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 mais

Processamento da Informação Teoria. Exercícios sobre strings

Processamento 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 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

Introdução à Programação

Introduçã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 mais

Computação 1. Revisão para a P1 professor: Leonardo Carvalho

Computaçã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 mais

Computaçã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. 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 mais

MAC2166 Introdução à Computação

MAC2166 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 mais

Introdução à Programação Aula 5 Ciclos e condicionais

Introduçã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 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

Aula 4 Estrutura Condicional

Aula 4 Estrutura Condicional Aula 4 Estrutura Condicional Relações e Exp. Booleanas Relações Operadores: >, =,

Leia mais

Algoritmos e Estrutura de Dados Aula 02 Listas em Python

Algoritmos 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 mais

A 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 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 mais

Herança (parte 2) Redefinição de métodos AULA 11

Heranç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 mais

Programação I Aula 11 Mais sobre ciclos e iteração

Programaçã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 mais

UNIP - 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 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 mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 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 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

RESULUÇÃ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: 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 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

Apêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são:

Apê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 mais

Computaçã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 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 mais

MAC2166 Introdução à Computação

MAC2166 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 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

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

Programação I Aula 6 Números pseudo-aleatórios

Programaçã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 mais

Computaçã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. 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 mais

Programação I Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP

Programaçã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 mais

Programação I Aula 12 Mais sobre cadeias e listas

Programaçã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 mais

Linguagem Python. Inteligência Artificial. Características de Python. Importando módulos. Módulos. Usando Python no modo interativo

Linguagem 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 mais

Lista de Exercícios 2 Condicionais

Lista 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 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 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 mais

Computaçã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 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 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

4 Conceito de Herança

4 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 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

Aula 11: Laços e exercícios

Aula 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 mais

Nas aulas anteriores. Programação orientada a objetos Classes Atributos e métodos

Nas 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 mais

Aula de hoje. Tipos de Dados e Variáveis. Constantes literais. Dados. Variáveis. Tipagem dinâmica. SCC Introdução à Programação para Engenharias

Aula 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 mais

MCG126 Programação de Computadores II

MCG126 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 mais

ACH5531 Introdução à Computação Estruturas de repetição

ACH5531 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 mais

Prática 10 - Funções

Prá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 mais

Descritores de atributos em Python

Descritores 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 mais

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

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 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 mais

INSTRUÇÕES DE REPETIÇÃO

INSTRUÇÕ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 mais

Arquivos O QUE É, COMO LER E MANIPULAR

Arquivos 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 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

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

Linguagem Python. Processamento Estatístico da Linguagem Natural. Barra invertida em strings. Strings. Aspas triplas. Operações com Strings

Linguagem 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 mais

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

Programaçã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 mais

Programação de Computadores

Programaçã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 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

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 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

Computação II Orientação a Objetos

Computaçã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 mais

Python Funções. Introdução à Programação SI1

Python 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 mais

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 Orientada a Objetos SANTOS, Rafael

Programaçã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 mais

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

PROGRAMAÇÃ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 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

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

Computaçã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 mais

Processamento da Informação Teoria. Coleções: Listas

Processamento 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 mais

Computação 1. Aula 3 - Prática - Parte 1 Professor: Leonardo Carvalho

Computaçã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