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

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

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

Transcrição

1 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 / 28

2 Nesta aula... 1 Definição de procedimentos e funções 2 Retornar resultados 3 Módulo turtle Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

3 Definição de procedimentos e funções Na aula passada vimos como usar as funções matemáticas pré-definidas Nesta aula vamos ver como definir novos procededimentos e funções Programação estruturada Decompor um problema em procedimentos mais simples até chegar às operações elementares. Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

4 Definições def nome(lista de parâmetros): primeira instrução segunda instrução. instrução final A lista de parâmetros pode ser vazia O início e fim do procedimento são marcados pela indentação Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

5 Exemplo def refrao(): print("se um elefante incomoda muita gente") print("dois elefantes incomodam muito mais.") def repete_refrao(): refrao() refrao() Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

6 Exemplo (cont.) Experimentando no interpretador: >>> refrao() Se um elefante incomoda muita gente Dois elefantes incomodam muito mais. >>> repete_refrao() Se um elefante incomoda muita gente Dois elefantes incomodam muito mais. Se um elefante incomoda muita gente Dois elefantes incomodam muito mais. Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

7 Fluxo da execução 1 Começa na primeira instrução do programa 2 As instruções são executadas por ordem sequencial 3 A definição de um procedimento não altera fluxo de execução 4 A invocação de um procedimento: 1 executa as instruções da definição por ordem; 2 no final: continua a execulão do ponto original. 5 Procedimentos podem chamar outras procedimentos Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

8 Parâmetros e argumentos Procedimentos podem necessitar de argumentos: >>> import math >>> math.sin() Traceback (most recent call last): File "<stdin>", line 1, in? TypeError: sin() takes exactly 1 argument (0 given) O valor dos argumentos é associado a variáveis chamadas parâmetros Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

9 Exemplo do livro def print_twice(bruce): print(bruce) print(bruce) >>> print_twice( Spam ) Spam Spam >>> print_twice(5) 5 5 >>> print_twice(math.pi) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

10 Procedimentos que retornam resultados Funções são procedimentos que calculam um resultado O resultado deve ser indicado com a instrução return A instrução return termina o procedimento Exemplo: calcular o volume V de uma esfera de raio r. V = 4 3 πr 3 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

11 Procedimentos que retornam resultados (cont.) import math def volume(r): V = 4/3 * math.pi * r**3 return V >>> volume(1.0) >>> volume(1.5) >>> volume(2.0) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

12 Âmbito das variáveis Os parâmetros são variáveis locais não existem fora do bloco da definição As variáveis definidas dentro do bloco também são locais Exemplo: >>> r = 42 >>> volume(1) >>> r 42 >>> V NameError: name V is not defined Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

13 Âmbito das variáveis (cont.) As variáveis definidas fora das funções (globais) podem ser usadas dentro destas. Exemplo: uma função para acrescentar a taxa de IVA a um preço. taxa_iva = 0.23 def preçofinal(valor): return valor*(1+taxa_iva) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

14 Documentação É boa idea documentar usando comentários e/ou docstrings. taxa_iva = 0.23 # taxa de IVA em percentagem def preçofinal(valor): Acrescenta a taxa de IVA a um valor. Usa a variável global taxa_iva. return valor*(1+taxa_iva) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

15 Documentação (cont.) Os comentários e docstrings são para quem lê o código As docstrings são também usadas pelo sistema de ajuda. >>> help(preçofinal) Help on function preçofinal in module main : preçofinal(valor) Acrescenta a taxa de IVA a um valor. Usa a variável global taxa_iva. Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

16 Return ou print? return termina a execução e define o resultado da função; print imprime um resultado (no terminal ou janela de texto). Só podemos usar o resultado se a função efetuar return: def f(x): return x*x print(f(f(3))) 81 def g(x): print(x*x) print(g(g(3)) 9 Erro Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

17 Módulo turtle Vamos fazer programas que desenham usando o módulo turtle: o programa controla um robot virtual (tartaruga); desloca-se para frente, para trás e roda sobre si próprio; usa uma caneta para deixar um rasto; muito simples, mas permite fazer desenhos impressionantes. Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

18 Primeiros passos Devemos começar por importar o módulo: >>> import turtle Os comandos têm a forma turtle.comando(...): >>> turtle.clear() # limpar a janela >>> turtle.forward(100) # avançar 100 pixels >>> turtle.left(90) # rodar 90 graus à esquerda >>> turtle.forward(200) # avançar 200 pixels Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

19 Primeiros passos (cont.) Em alternativa, podemos usar >>> from turtle import * e omitir o nome do módulo: >>> clear() >>> forward(100) >>> left(90) >>> forward(200) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

20 Comando principais forward(n) avançar n pixels backward(n) retroceder n pixels left(α) rodar α graus à esquerda right(α) rodar α graus à direita color(c) mudar a cor do traço pensize(n) mudar a largura do traço penup() levantar a caneta pendown() baixar a caneta speed(n) mudar a velocidade da tartaruga clear() limpar a janela reset() limpar a janela e re-inicializar a tartaruga Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

21 Desenhar um quadrado Vamos definir um procedimento para desenhar um quadrado com 100 pixels de lado. Desenhar quatro lados, rodando 90 para a esquerda após cada lado Alternativa: poderiamos rodar para a direita Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

22 Desenhar um quadrado (cont.) def quadrado(): forward(100) # primeiro lado left(90) forward(100) # segundo lado left(90) forward(100) # terceiro lado left(90) forward(100) # quarto lado left(90) # terminar na orientação original Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

23 Evitando repetições Repetimos quatro vezes as instruções: forward(100) left(90) Podemos evitar a repetição usando um ciclo for Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

24 Evitando repetições (cont.) def quadrado(): for lado in [1,2,3,4]: forward(100) left(90) # repetir 4 vezes A variável lado não é usada dentro do ciclo Poderiamos usar qualquer outra lista com 4 valores... Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

25 Alternativas def quadrado(): for i in [1,2,3,4]: forward(100) left(90) def quadrado(): for i in range(4): # 0, 1, 2, 3 forward(100) left(90) def quadrado(): for c in [ red, green, blue, black ]: color(c) forward(100) left(90) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

26 Generalizando Vamos generalizar o procedimento para desenhar um quadrado de lado dado. Basta tomar a medida do lado como um parâmetro. Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

27 Generalizando (cont.) def quadrado(lado): "Desenhar um quadrado dado o comprimento do lado." for i in range(4): forward(lado) left(90) Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

28 Exemplo: uma espiral espiral.py from turtle import * def quadrado(lado): for c in [ red, blue, green, black ]: color(c) forward(lado) left(90) reset() speed(10) for i in range(36): quadrado(50+i*5) left(10) # desenhar 36 quadrados... #...de lado variável # ângulo entre os quadrados Pedro Vasconcelos (DCC/FCUP) Programação I Aula 4 Definição de procedimentos e funções / 28

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

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

Introdução à programação orientada a objetos. Nesta aula... Turtle graphics. Primeiro programa com objetos. Exercício. Métodos.

Introdução à programação orientada a objetos. Nesta aula... Turtle graphics. Primeiro programa com objetos. Exercício. Métodos. Nesta aula Introdução à programação orientada a objetos 1 2 3 Há uma quantidade de módulos disponíveis na biblioteca standard do Python: análise de texto; enviar e-mail; pesquisar informação na Internet;

Leia mais

Nesta aula... 1 Orientação a objetos. 2 Utilização de bibliotecas. 3 Definição de funções/procedimentos

Nesta aula... 1 Orientação a objetos. 2 Utilização de bibliotecas. 3 Definição de funções/procedimentos Nesta aula... Orientação a objetos 1 Orientação a objetos 2 3 Introdução à programação orientada a objetos Há uma quantidade de módulos disponíveis na biblioteca standard do Python: análise de texto; enviar

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

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

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

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

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

Introdução à Programação Aula 16 Mais exemplos de recursão

Introdução à Programação Aula 16 Mais exemplos de recursão Introdução à Programação Aula 16 Mais exemplos de recursão Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 16 Mais exemplos de recursão 2014 1 / 22 Nesta aula

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

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

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

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

Introdução à Programação Aula 13 Manipulação de ficheiros

Introdução à Programação Aula 13 Manipulação de ficheiros Introdução à Programação Aula 13 Manipulação de ficheiros Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 13 Manipulação de ficheiros 2015 1 / 26 Nesta aula 1

Leia mais

Tutorial Klogo Turtle

Tutorial Klogo Turtle Tutorial Klogo Turtle Sumário Introdução...3 Comandos para Tartaruga...4 Movimentar para Frente...4 Movimentar para trás...4 Rotacionar para a Direita...6 Rotacionar para a Esquerda...6 Alterar a Cor do

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

Pedro Vasconcelos DCC/FCUP. Programação Funcional 11 a Aula Gráficos usando Gloss

Pedro Vasconcelos DCC/FCUP. Programação Funcional 11 a Aula Gráficos usando Gloss Programação Funcional 11 a Aula Gráficos usando Gloss Pedro Vasconcelos DCC/FCUP 2014 A biblioteca Gloss Para fazer desenhos, animações, simulações e jogos 2D; Simples: pensada para ensino de programação;

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

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

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Fabio Mascarenhas - 2015.2 http://www.dcc.ufrj.br/~fabiom/lp Introdução Quais das expressões abaixo têm o mesmo significado? (vector-ref a 42) Introdução Quais das expressões

Leia mais

Python: Funções. Claudio Esperança

Python: Funções. Claudio Esperança Python: Funções Claudio Esperança Abstração É uma técnica de programação que nos permite pensar num problema em diversos níveis A idéia é que quando estamos pensando num problema macroscopicamente, não

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 II (MAB 225)

Computação II (MAB 225) Computação II (MAB 225) Fabio Mascarenhas - 2015.1 http://www.dcc.ufrj.br/~fabiom/pythonoo Tratamento de Erros Até agora não nos preocupamos com erros em nosso programa, apenas assumimos que tudo sempre

Leia mais

Exercícios para Fundamentos da Programação

Exercícios para Fundamentos da Programação Exercícios para Fundamentos da Programação Fausto Almeida, Cláudia Antunes, Ana Cardoso-Cachopo, Pedro Amaro de Matos, Francisco Saraiva de Melo Departamento de Engenharia Informática Instituto Superior

Leia mais

Python: Módulos. Claudio Esperança

Python: Módulos. Claudio Esperança Python: Módulos Claudio Esperança Módulos Módulos são programas feitos para serem reaproveitados em outros programas Eles tipicamente contêm funções, variáveis, classes e objetos que provêm alguma funcionalidade

Leia mais

Aula de hoje. Funções. Introdução. Função. Definição de funções. Exemplo. SCC Introdução à Programação para Engenharias

Aula de hoje. Funções. Introdução. Função. Definição de funções. Exemplo. SCC Introdução à Programação para Engenharias SCC 124 - Introdução à Programação para Engenharias Funções Aula de hoje Introdução Passagem de parâmetros Parâmetros X argumentos Retorno de valores Polimorfismo Argumentos com valor default Professor:

Leia mais

Introdução à Programação Aula 10 Processamento de listas

Introdução à Programação Aula 10 Processamento de listas Introdução à Programação Aula 10 Processamento de listas Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 10 Processamento de listas 2015 1 / 28 Nesta aula Vamos

Leia mais

COLÉGIO OBJETIVO JÚNIOR

COLÉGIO OBJETIVO JÚNIOR COLÉGIO OBJETIVO JÚNIOR NOME: N. o : DATA: / /2015 FOLHETO DE INFORMÁTICA (V.C. E R.V.) 6. o ANO Ao longo deste ano, aprendemos a operar os comandos e as funções básicas do SuperLogo e do TurtleArt, por

Leia mais

LINGUAGEM C: COMANDOS DE REPETIÇÃO

LINGUAGEM C: COMANDOS DE REPETIÇÃO LINGUAGEM C: COMANDOS DE REPETIÇÃO Prof. André Backes ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição permite que uma sequência de comandos seja executada repetidamente, enquanto determinadas condições

Leia mais

Subprogramação. Vanessa Braganholo

Subprogramação. Vanessa Braganholo Subprogramação Vanessa Braganholo vanessa@ic.uff.br O que vimos até agora } Programas usam apenas sequência, repetição e decisão } Capacidade de resolver diversos problemas, mas difícil de resolver problemas

Leia mais

Nesta aula... Iteração indefinida. 1 Decisões em Python. 2 Funções lógicas. 3 Recursão. 4 Iteração. 5 Ciclo for ou while?

Nesta aula... Iteração indefinida. 1 Decisões em Python. 2 Funções lógicas. 3 Recursão. 4 Iteração. 5 Ciclo for ou while? Nesta aula... 1 2 3 4 indefinida 5 Valores lógicos: booleanos Tipo do Python para guardar os valores lógicos, verdadeiro e falso: booleano (George Bool, matemático inglês) Valores lógicos podem ter apenas

Leia mais

1. O programa StarLogo

1. O programa StarLogo 1. O programa StarLogo 1.1. O que é o StarLogo? StarLogo é uma ferramenta que permite criar desenhos e animações através de comandos que são dados a uma tartaruga (turtle) no ecrã do computador. Com a

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 Universidade de Brasília UnB Instituto de Ciências Exatas IE Departamento de Ciência da Computação CIC STRINGS Lista de strings

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

Programação I Aula 9 Listas e tuplos

Programação I Aula 9 Listas e tuplos Programação I Aula 9 Listas e tuplos Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 9 Listas e tuplos 2017 1 / 29 Nesta aula 1 Listas 2 Tuplos Pedro Vasconcelos (DCC/FCUP)

Leia mais

Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre.googlepages.

Variáveis e Entrada de Dados Marco André Lopes Mendes  marcoandre.googlepages. Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre@ifc-araquari.edu.br marcoandre@gmail.com marcoandre.googlepages.com Algoritmos é a base Primeiro programa Este programa possui apenas uma

Leia mais

Aula de hoje. Expressões. Expressões. Expressões. Exemplos. Programa em Python. SCC Introdução à Programação para Engenharias

Aula de hoje. Expressões. Expressões. Expressões. Exemplos. Programa em Python. SCC Introdução à Programação para Engenharias SCC 124 - Introdução à Programação para Engenharias Expressões Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes Aula de

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

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

Computação 1 - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings 1/ 26 Computação 1 - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings 1/ 26 Variáveis e Atribuição Variáveis são usadas para guardar dados intermedidários nas funções. 2/ 26 Variáveis e Atribuição Variável:

Leia mais

1. O programa StarLogo

1. O programa StarLogo 1. O programa StarLogo 1.1. O que é o StarLogo? StarLogo é uma ferramenta que permite criar desenhos e animações através de comandos que são dados a uma tartaruga (turtle) no ecrã do computador. Com a

Leia mais

Programação I Aula 2 Apresentação da linguagem Python

Programação I Aula 2 Apresentação da linguagem Python Programação I Aula 2 Apresentação da linguagem Python Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 2 Apresentação da linguagem Python 2017 1 / 25 Nesta aula... 1 Porquê

Leia mais

Ambiente de programação

Ambiente de programação EXPLORANDO O O que é o SCRATCH? O software Scratch é um ambiente para a criação de jogos, histórias e animações, usando raciocínio lógico. A partir desta ferramenta é possível exercitar conceitos de lógica

Leia mais

Introdução à Programação Aula 11 Mais sobre ciclos e iteração

Introdução à Programação Aula 11 Mais sobre ciclos e iteração Introdução à Programação Aula 11 Mais sobre ciclos e iteração Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 11 Mais sobre ciclos e iteração 2014 1 / 26 Nesta

Leia mais

Mosaicos com o Superlogo

Mosaicos com o Superlogo Mosaicos com o Superlogo Mauri Cunha do Nascimento Depto de Matemática, FC, UNESP 17033-360, Bauru, SP E-mail: mauri@fc.unesp.br Gabriela Baptistella Peres Aluna do Curso de Licenciatura em Matemática,

Leia mais

Resumo da matéria: - Sintaxe da definição duma função C: - Diagramas sintácticos do if e dos mecanismos de ciclos em C:

Resumo da matéria: - Sintaxe da definição duma função C: - Diagramas sintácticos do if e dos mecanismos de ciclos em C: Aula de PGI 15.4.2014 Exercícios que envolvem ciclos e funções Resumo da matéria: - Sintaxe da definição duma função C: tipovalorretorno nomedafuncao( tipo nomevar, tipo nomevar1 ){ int v; // Aqui consta

Leia mais

DESENHAR COM PRECISÃO - O SISTEMA DE COORDENADAS

DESENHAR COM PRECISÃO - O SISTEMA DE COORDENADAS DESENHAR COM PRECISÃO - O SISTEMA DE COORDENADAS Para criar linhas, polígonos, sólidos ou outros objetos, sempre teremos que informar o Rhino o ponto de partida e o ponto final. Tais pontos podem ser criados

Leia mais

Programação I Aula 10 Processamento de listas

Programação I Aula 10 Processamento de listas Programação I Aula 10 Processamento de listas Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 10 Processamento de listas 2017 1 / 30 Nesta aula Vamos ver alguns exemplos

Leia mais

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa:

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa: Algoritmos Algoritmos Leandro Tonietto Unisinos ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto/inf/pg1/algoritmosi_java.pdf Mar-2008 Possuem sintaxe flexível e são mais úteis para descrição

Leia mais

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

Introdução à Programação Aula 6 Números pseudo-aleatórios Introdução à Programação Aula 6 Números pseudo-aleatórios Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 6 Números pseudo-aleatórios 2015 1 / 28 Nesta aula 1

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

INF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1

INF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1 INF1005: Programação 1 Condicionais 08/03/10 (c) Rogério Rodrigues 1 Tópicos Principais Tomada de Decisão Expressões Booleanas Blocos de Comandos Exemplos 08/03/10 (c) Paula Rodrigues 2 Tomada de decisão

Leia mais

Manipulação de Strings. Vanessa Braganholo

Manipulação de Strings. Vanessa Braganholo Manipulação de Strings Vanessa Braganholo vanessa@ic.uff.br Strings } Representam informação textual nome = Maria Silva nacionalidade = brasileira nome_mae = Ana Santos Silva nome_pai = Jonas Nunes Silva

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

Introdução à Programação Aula 18 Método de eliminação de Gauss

Introdução à Programação Aula 18 Método de eliminação de Gauss Introdução à Programação Aula 18 Método de eliminação de Gauss Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 18 Método de eliminação de Gauss 2015 1 / 23 Nesta

Leia mais

Programação para GI. Subprogramas

Programação para GI. Subprogramas nível 05/05/2015 Programação para GI Aula 08 Java é uma linguagem de programação orientada a objetos (POO). O objetivo desta aula é escrever programas em Java organizando o código em subprogramas (funções)

Leia mais

Nas aulas anteriores Strings. Ciclos

Nas aulas anteriores Strings. Ciclos Ciclos Ciclos for e while Saída e continuação num ciclo: break interromper o ciclo (sem verificar condição de paragem) continue passar à próxima iteração Podem tornar mais claros alguns programas. Condições:

Leia mais

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO Fabio Augusto Oliveira Guilherme da Cunha Fonseca FEPI Centro Universitário de Itajubá Curso de Engenharia de Produção 1 INTRODUÇÃO Em vários momentos, na programação,

Leia mais

Aula 4 ESTRUTURAS DE REPETIÇÃO (FOR)

Aula 4 ESTRUTURAS DE REPETIÇÃO (FOR) Aula 4 ESTRUTURAS DE REPETIÇÃO (FOR) Profa. Dra. Elisa Yumi Nakagawa 1o semestre/2017 Estruturas de Controle l ESTRUTURA SEQUENCIAL l ESTRUTURAS CONDICIONAIS l l l Estrutura Condicional Simples Estrutura

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

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 05 Introdução ao Löve Edirlei Soares de Lima Hello World em Löve function love.draw() love.graphics.print("hello World", 360, 300) end O comando

Leia mais

Introdução à Linguagem Lua Variáveis e Expressões

Introdução à Linguagem Lua Variáveis e Expressões Introdução a Programação em Lua Introdução à Linguagem Lua Variáveis e Expressões 1 Tópicos Principais Programando em Lua Funções Variáveis Operadores e Expressões Entrada e Saída Exemplos 2 Programando

Leia mais

Introdução ao Python. Programa Computacional

Introdução ao Python. Programa Computacional Programa Computacional É um algoritmo escrito em uma linguagem computacional (C, Fortran, Pascal, MATLAB, Python, etc.). É a tradução do algoritmo para uma linguagem que será interpretada pelo computador.

Leia mais

Conceitos básicos de programação

Conceitos básicos de programação Para aprender uma linguagem de programação podemos começar por conhecer os vocábulos ou símbolos que formam o seu léxico e depois aprender como esses vocábulos integram as instruções (frases) que compõe

Leia mais

Manipulação de Strings. Vanessa Braganholo

Manipulação de Strings. Vanessa Braganholo Manipulação de Strings Vanessa Braganholo vanessa@ic.uff.br Strings } Representam informação textual nome = Maria Silva nacionalidade = brasileira nome_mae = Ana Santos Silva nome_pai = Jonas Nunes Silva

Leia mais

Capítulo 4: Condicionais

Capítulo 4: Condicionais Capítulo 4: Condicionais INF1004 e INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra.

Leia mais

Aula de hoje. Comandos. Comandos simples. Comandos. Comandos de controle. Bloco de comandos. SCC Introdução à Programação para Engenharias

Aula de hoje. Comandos. Comandos simples. Comandos. Comandos de controle. Bloco de comandos. SCC Introdução à Programação para Engenharias SCC 124 - Introdução à Programação para Engenharias Comandos Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes 1 Aula de

Leia mais

Fundamentos de Programação. revisão e adendos

Fundamentos de Programação. revisão e adendos Fundamentos de Programação revisão e adendos Tipos de dados Programas manipulam valores/dados (textos, números,...) de tipos distintos int 2017 O tipo de dado define o conjunto de valores válidos e disponibiliza

Leia mais

Inteligência Computacional Aula 2 - Introdução ao MatLab Graduação /2

Inteligência Computacional Aula 2 - Introdução ao MatLab Graduação /2 Universidade Federal do Rio de Janeiro Instituto de Matemática / DCC Inteligência Computacional Aula 2 - Introdução ao MatLab Graduação - 2003/2 Prof. A. C. G. Thomé, PhD thome@nce.ufrj.br Airam C. P.

Leia mais

Python: Comandos Básicos. Claudio Esperança

Python: Comandos Básicos. Claudio Esperança Python: Comandos Básicos Claudio Esperança Primeiros passos em programação Até agora só vimos como computar algumas expressões simples Expressões são escritas e computadas imediatamente Variáveis podem

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 4 a Aula Listas

Pedro Vasconcelos DCC/FCUP. Programação Funcional 4 a Aula Listas Programação Funcional 4 a Aula Listas Pedro Vasconcelos DCC/FCUP 2014 Listas Listas são coleções de elementos: em que a ordem é significativa; possivelmente com elementos repetidos. Listas em Haskell Uma

Leia mais

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado

Leia mais

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios.

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios. 3636363636363636363636363636363636363636363636363636 5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios. 5.1 - Comandos

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

Lógica de Programação

Lógica de Programação Resolução de problemas utilizando computador Módulo II Prof. RANILDO LOPES Computador: ferramenta para processamento automático de dados Processamento de dados: atividade que transforme dados de entrada

Leia mais

Laboratório de Programação de Computadores para Engenharia - Notas de aula - Teoria - 12/12/2013. Funções

Laboratório de Programação de Computadores para Engenharia - Notas de aula - Teoria - 12/12/2013. Funções Laboratório de Programação de Computadores para Engenharia - Notas de aula - Teoria - 12/12/2013 Prof. Pietrobon Funções 1) Introdução Alguns programas podem possuir milhares de linhas de código. Neste

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

Projeto e Desenvolvimento de Algoritmos

Projeto e Desenvolvimento de Algoritmos Projeto e Desenvolvimento de Algoritmos O que são algoritmos? Índice Objetivos Introdução Representação de Algoritmos Linguagem Natural Fluxogramas Pseudo-Linguagem Técnicas de Projeto de Algoritmos Objetivos

Leia mais

Python: Listas. Claudio Esperança

Python: Listas. Claudio Esperança Python: Listas Claudio Esperança Estruturas de dados Maneira de organizar dados de maneira a facilitar seu acesso Algumas formas são clássicas: Listas Arrays (vetores e matrizes) Tuplas (registros) Árvores

Leia mais

Experimento 1 - Movimento Uniforme: Simulação em Logo / SAM

Experimento 1 - Movimento Uniforme: Simulação em Logo / SAM Experimento 1 - Movimento Uniforme: Simulação em Logo / SAM Dietrich Schiel/Luis Antonio Godoy/Iria Müller Guerrini Antes de fazer o programa em Logo do movimento, ainda no programa SAM, faça: Salve a

Leia mais

1) Operadores de auto incremento ++ e auto decremento --

1) Operadores de auto incremento ++ e auto decremento -- Aula 09 - Operadores de auto incremento e auto decremento, atribuição múltipla, atribuição na declaração, atribuição resumida e algumas regras de boa programação. 1) Operadores de auto incremento ++ e

Leia mais

Programação WEB I Funções

Programação WEB I Funções Programação WEB I Funções Funções As funções podem ser definidas como um conjunto de instruções, agrupadas para executar uma determinada tarefa. Dentro de uma função pode existir uma chamada a outra função.

Leia mais

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática Capítulo 2: Condicionais Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra. No capítulo 3, vimos que a

Leia mais

Aula 01. Prof. Diemesleno Souza Carvalho /

Aula 01. Prof. Diemesleno Souza Carvalho / Programação Estruturada Aula 01 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br / http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... 00 Apresentação da disciplina; Na

Leia mais

Programas Interativos

Programas Interativos Programação Funcional DECOM UFOP 2012-1 Aula prática Capítulo 8 Prof. José Romildo Malaquias Programas Interativos Resumo Nesta aula pretende-se explorar construção de programas interativos usando ações

Leia mais

Controle de Fluxo. Laços e Desvios incondicionais

Controle de Fluxo. Laços e Desvios incondicionais Controle de Fluxo Laços e Desvios incondicionais Laços Em C, há três comandos de ITERAÇÃO ou LAÇOS: for while do... while Estes permitem que um conjunto de instruções seja executado até que ocorra uma

Leia mais

Linguagem e Ambiente Scratch. Introdução à Laboratório Prof.Alfredo Parteli Gomes

Linguagem e Ambiente Scratch. Introdução à Laboratório Prof.Alfredo Parteli Gomes Linguagem e Ambiente Scratch Introdução à Laboratório Prof.Alfredo Parteli Gomes Scratch Linguagem de programação que visa facilitar a criação de histórias interativas, jogos e animações Informações e

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

Introdução à Programação Aula 20 Definição de classes

Introdução à Programação Aula 20 Definição de classes Introdução à Programação Aula 20 Definição de classes Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes 2014 1 / 23 Nesta aula 1 Definição

Leia mais

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35 BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma

Leia mais

Pilotagem Squeak no computador Magalhães. Projecto: Geometria Básica

Pilotagem Squeak no computador Magalhães. Projecto: Geometria Básica Pilotagem Squeak no computador Magalhães Projecto: Geometria Básica (versão 1.0) Autor: Luís Valente (CC Universidade do Minho) Criar um Projecto 1 Clique no menu Projecto 2 Clique em criar um projecto

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

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

Compiladores Ambiente de Execução

Compiladores Ambiente de Execução Compiladores Ambiente de Execução Fabio Mascarenhas 2015.2 http://www.dcc.ufrj.br/~fabiom/comp O Back-end Até agora vimos as fases do front-end do compilador: Análise Léxica Análise Sintática Análise Semântica

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 10 04/2014 Scilab Métodos para zeros reais de funções Algoritmo do Método da Bissecção Seja f (x) contínua em [a, b] e tal

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

k 1 ENQUANTO A[k] $ E k 512 FAÇA SE A[k] = a ENTÃO contaa contaa + 1 SENÃO SE A[k] = i ENTÃO contai contai + 1 FIM-SE

k 1 ENQUANTO A[k] $ E k 512 FAÇA SE A[k] = a ENTÃO contaa contaa + 1 SENÃO SE A[k] = i ENTÃO contai contai + 1 FIM-SE UNIVERSIDADE FEDERAL DE ITAJUBÁ PROGRAMAÇÃO PROVA DE TRANSFERÊNCIA INTERNA, EXTERNA E PARA PORTADOR DE DIPLOMA DE CURSO SUPERIOR 19/06/2016 CANDIDATO: CURSO PRETENDIDO: OBSERVAÇÕES: 01 Prova sem consulta.

Leia mais