4 - Implementação ICE-B. Ludwig Krippahl 3/13/2019 ICE-B-04

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

Download "4 - Implementação ICE-B. Ludwig Krippahl 3/13/2019 ICE-B-04"

Transcrição

1 ICE-B 4 - Implementação Ludwig Krippahl file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 1/37

2 Implementação Resumo Exemplo: cálculo de ph, agora estruturado Testes unitários Ciclo de vida de um programa Erros e precisão numérica 1 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 2/37

3 Implementação Exemplo:Calcular ph 2 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 3/37

4 Calcular ph Solução de ácido benzóico C H COOH Constante de dissociação, H + C H COO Ignorando auto-dissociação da água: [ H + ][ C 6 H 5 CO O ] K a [ C 6 H 5 COOH] Resolvemos equação quadrática, (só precisamos da solução positiva) Depois calculamos o ph: K a = x 10 5 = = + x = 0 x 2 K a C i K a C i x x = b± b 2 4ac 2a ph = lo ([ ]) = lo (x) g 10 H + g 10 3 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 4/37

5 Calcular ph Compreender, generalizar e decompor Generalização: Calcular o ph de um ácido fraco monoprótico Decomposição: Obter a raíz positiva e calcular o ph Criamos ficheiro phcalc.py com o "esqueleto" do programa # -*- coding: utf-8 -*- Computes ph of an acid from concentration def positive_root(a, b, c): "return positive root of quadratic equation" def compute_ph(ka, Ci): return ph value for weak acid from dissociation constant and initial concentration 4 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 5/37

6 Calcular ph "Esqueleto" do programa É uma boa ideia fazer primeiro um esboço do programa Permite ver se encaixa tudo e se é preciso decompor mais Estas funções ainda não fazem nada mas este código já cria os objectos. def positive_root(a, b, c): "return positive root of quadratic equation" A string logo a seguir à assinatura é a documentação Podem usar ''' ou se o texto ocupar várias linhas In : help(positive_root) Help on function positive_root in module main : positive_root(a, b, c) return positive root of quadratic equation 5 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 6/37

7 Calcular ph Documentação do módulo A string no início do módulo é útil como documentação # -*- coding: utf-8 -*- Computes ph of an acid from concentration Depois de executar com F5, podemos importá-lo e pedir ajuda (F5 para gravar e mudar de pasta) In : import phcalc In : help(phcalc) Help on module phcalc: NAME phcalc - Computes ph of an acid from concentration FUNCTIONS compute_ph(ka, Ci) return ph value for weak acid from dissociation constant and initial concentration file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 7/37 6

8 Calcular ph Implementar as funções Depois de perceber os objectivos e o algoritmo e de decompor em tarefas podemos implementar cada função Devemos começar pelas "pontas", aquelas que não dependem de nenhuma outra que tenhamos de implementar def positive_root(a, b, c): "return positive root of quadratic equation" root = (-b + (b**2-4*a*c)**0.5)/(2*a) return root Depois devemos testar: In : positive_root(1,0,-1) #x**2 + 0x - 1 Out: 1.0 In : positive_root(1,-2,0) #x**2-2x + 0 Out: file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 8/37

9 Calcular ph Implementar as funções Depois de implementar e testar uma função podemos passar a outra que dependa desta Como o cálculo do ph precisa do logaritmo, temos de importar log10 É melhor fazer todos os import no início do módulo # -*- coding: utf-8 -*- Computes ph of an acid from concentration from numpy import log10 def positive_root(a, b, c):... def compute_ph(ka, Ci):... 8 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 9/37

10 Calcular ph Implementar as funções Agora implementamos e testamos esta também def compute_ph(ka, Ci): return ph value for weak acid from dissociation constant and initial concentration H = positive_root(1, Ka, -Ka*Ci) return -log10(h) Testar com valores que permitam confirmar o resultado: In : compute_ph(6.5e-5,0.01) Out: file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 10/37

11 Testes Unitários Testar sempre cada função Decompomos um problema complexo em problemas mais simples. Mas depois vai ser preciso juntar tudo. Um erro descoberto só no final é mais difícil de encontrar e corrigir. É preciso testar: Sempre que implementamos algo de novo. Sempre que corrigimos um erro, para confirmar. Sempre que alteramos alguma função. 10 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 11/37

12 Testes Unitários Sugestão: automatizar os testes todos Opção 1: uma função no final do nosso módulo Numa função para não correr os testes sempre que usamos o módulo... def tests(): run unit tests on all functions print("positive_root, 1.0:", positive_root(1,0,-1)) print("positive_root, 2.0:",positive_root(1,-2,0)) print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) É importante que se possa verificar o resultado também In : tests() positive_root, 1.0: 1.0 positive_root, 2.0: 2.0 compute_ph, 3.111: file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 12/37

13 Testes Unitários Sugestão: automatizar os testes todos Opção 2: um módulo só para testes (phtests.py) # -*- coding: utf-8 -*- run unit tests on all functions in phcalc from phcalc import positive_root, compute_ph print("positive_root, 1.0:", positive_root(1,0,-1)) print("positive_root, 2.0:",positive_root(1,-2,0)) print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) Basta correr com F5 Neste caso não é preciso função porque o módulo é só para testes In : runfile('/pasta/phtests.py', wdir='/pasta') positive_root, 1.0: 1.0 positive_root, 2.0: 2.0 compute_ph, 3.111: file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 13/37

14 Testes Unitários Atenção: funções são criadas na execução do def... def tests(): run unit tests on all functions print("positive_root, 1.0:", positive_root(1,0,-1)) print("positive_root, 2.0:",positive_root(1,-2,0)) print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) Sempre que alterarem alguma coisa no vosso programa precisam de criar novamente os objectos das funções alteradas Para isso o interpretador tem de reler a assinatura da função e toda a "receita" no corpo da função A forma mais prática de fazer isso no Spyder é F5 (Grava e corre todo o ficheiro) O Spyder automaticamente recarrega outros módulos 13 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 14/37

15 Testes Unitários Atenção: funções são executadas só em nome(... ) In : tests() positive_root, 1.0: 1.0 positive_root, 2.0: 2.0 compute_ph, 3.111: Quando se corre módulo as funções são criadas mas não usadas A menos que o módulo inclua também chamadas às funções # -*- coding: utf-8 -*-... def tests(): print("positive_root, 1.0:", positive_root(1,0,-1)) print("positive_root, 2.0:",positive_root(1,-2,0)) print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) tests() 14 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 15/37

16 Testes Unitários Atenção: função só devolve valor em return # -*- coding: utf-8 -*-... def tests(): print("positive_root, 1.0:", positive_root(1,0,-1)) print("positive_root, 2.0:",positive_root(1,-2,0)) print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) In : tests() positive_root, 1.0: 1.0 positive_root, 2.0: 2.0 compute_ph, 3.111: O print escreve na consola mas a função tests() não devolveu valor (devolveu None). 15 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 16/37

17 Programação Estruturada Erros 16 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 17/37

18 Erros Erro de sintaxe Erro na escrita do código que impede o interpretador de o executar Este é o mais fácil de corrigir, porque sabemos logo que o cometemos In : 6 * * 2 6 * * 2 ^ SyntaxError: invalid syntax In : ^ SyntaxError: invalid syntax Spyder analisa o código conforme o escrevemos e assinala a linha com o erro 17 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 18/37

19 Erros Erro de execução (Exception) O interpretador sabe o que deve fazer mas não consegue fazê-lo Estes erros só ocorrem durante a execução e podem ser mais difíceis de diagnosticar porque o erro pode estar noutra parte do código In : y = z*2 y = z*2 NameError: name 'z' is not defined In : y = 0 In : z = 1 / y z = 1 / y ZeroDivisionError: division by zero 18 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 19/37

20 Erros Erro lógico O programa corre sem problemas mas não dá o resultado certo Estes erros tendem a ser os mais difíceis de corrigir Exemplo: ph negativo? def positive_root(a, b, c): root = (-b + (b**2-4*a*c)**0.5)/(2*a) return root def compute_ph(ka, Ci): H = positive_root(1, Ka, -Ka*Ci) return log10(h) In : compute_ph(6.5e-5,0.01) Out: (Falta o sinal negativo no cálculo do logaritmo) 19 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 20/37

21 Erros Erro numérico Devido à representação finita de números fraccionários, em 64 bits (Inteiros em Python 3.x usam o número de bits que for necessário) Obriga a arredondamentos e pode ser importante se o cálculo for iterado In : (2**0.5)**2 Out: Representação de números fraccionários em 64 bits: 1 bit para sinal, 11 para expoente (base 2) e 52 para fracção Equivale a cerca de 17 algarismos significativos em decimal 20 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 21/37

22 Erros Erro numérico Informação sobre a representação em 64 bits In : import numpy In : info = numpy.finfo(float) In : info.bits Out: 64 In : info.eps Out: e-16 In : info.tiny Out: e-308 In : info.min Out: e+308 In : info.max Out: e+308 Informação: Número de bits na representação Menor valor que somado a 1 dá >1 In : 1+info.eps-1 Out: e-16 In : 1+0.5*info.eps-1 Out: 0.0 Mais pequeno com plena precisão Menor valor representável Maior valor representável 21 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 22/37

23 Programação Estruturada Código Fonte 22 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 23/37

24 Ciclo de vida Ciclo de vida de um programa Edição do código fonte Escrito, guardado em ficheiros.py Interpretação do código fonte O interpretador traduz as instruções em instruções para o CPU Execução O CPU executa o programa Testar e avaliar o resultado e voltar à edição as vezes que for preciso file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 24/37

25 Ciclo de vida Ciclo de vida de um programa, exemplo Concebemos, implementámos e testámos o cálculo do ph A partir da concentração inicial e da constante de dissociação Agora temos um novo problema 3 Qual o ph de 0.01g de ácido benzóico em dm? Calcular ph a partir da massa, volume e massa molecular Basta calcular a concentração e usar o que já temos Solução: acrescentamos uma nova função Pensamos no algoritmo: calcular concentração Decompomos se necessário (não é; é simples) Implementamos e testamos 24 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 25/37

26 Ciclo de vida Novo problema: Qual o ph de 0.01g de ácido benzóico em dm 3? Solução: Já temos praticamente tudo feito Basta uma função que calcule a concentração Precisa da massa, massa molar e volume E depois chamar a anterior com concentração e K a def compute_ph_mass(mass, mol_mass, volume, Ka): return ph value of a weak acid solution from mass of solute and volume of solution Ci = mass / mol_mass / volume return compute_ph(ka,ci) 25 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 26/37

27 Ciclo de vida Uma maneira prática é acrescentar ao módulo phcalc # -*- coding: utf-8 -*- Computes ph of an acid from concentration from numpy import log10 def positive_root(a, b, c):... def compute_ph(ka, Ci):... def compute_ph_mass(mass, mol_mass, volume, Ka): return ph value of a weak acid solution from mass of solute and volume of solution Ci = mass / mol_mass / volume return compute_ph(ka,ci) def tests(): file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 27/37

28 Ciclo de vida Ciclo de vida de um programa, exemplo Calcular o ph a partir da massa, volume e massa molecular: def compute_ph_mass(mass, mol_mass, volume, Ka): return ph value of a weak acid solution from mass of solute and volume of solution Ci = mass / mol_mass / volume return compute_ph(ka,ci) Testes: def tests():... print("compute_ph, 3.111:",compute_pH(6.5e-5,0.01)) print("compute_ph_mass, ",compute_pH_mass(1.221, 122.1, 1, 6.5e-5)) print("compute_ph_mass, 3.000",compute_pH_mass(0.5, 122.1, 0.25, 6.5e-5)) 27 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 28/37

29 Implementação Estilo de Código 28 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 29/37

30 Estilo de Código É importante escrever código legivel Porque o código fonte serve: Para o interpretador executar Para humanos lerem Código difícil de compreender É mais propenso a erros É mais difícil de corrigir, adaptar e melhorar (prejudica a avaliação em ICE) 29 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 30/37

31 Estilo de Código Nomes de variáveis As variáveis devem ter nomes descritivos E.g. mass, mol_mass, volume def compute_ph_mass(mass, mol_mass, volume, Ka): Ci = mass / mol_mass / volume return compute_ph(ka,ci) Excepto quando têm nomes convencionais E.g. a, b, c, Ci, ph, Ka def positive_root(a, b, c): root = (-b + (b**2-4*a*c)**0.5)/(2*a) return root Importante: que seja fácil perceber o que representa 30 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 31/37

32 Estilo de Código Nomes de funções Devem descrever o que a função faz Nomes compostos por várias palavras Convenção 1: usar letras maiúsculas e minúsculas phmassvol Convenção 2: (mais usado em Python) usar underscore compute_ph_mass def compute_ph_mass(mass, mol_mass, volume, Ka): Ci = mass / mol_mass / volume return compute_ph(ka,ci) 31 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 32/37

33 Estilo de Código Inteligibilidade Cada linha de código deve corresponder a um passo simples Evitar linhas demasiado longas ou complexas Decompor em vários passos para ser mais inteligivel Exemplo: menos claro def compute_ph_mass(mass, mol_mass, volume, Ka): return compute_ph(ka, mass / mol_mass / volume) Exemplo: mais claro def compute_ph_mass(mass, mol_mass, volume, Ka): Ci = mass / mol_mass / volume return compute_ph(ka, Ci) 32 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 33/37

34 Estilo de Código Documentação e comentários Devemos documentar funções (e módulos) Podemos também acrescentar comentários se for preciso Notas para o programador def positive_root(a, b, c): "return positive root of quadratic equation" root = (-b + (b**2-4*a*c)**0.5)/(2*a) #This assumes a is greater than zero return root Mais informação: "PEP 8 -- Style Guide for Python Code" 33 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 34/37

35 Programação Estruturada Resumo 34 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 35/37

36 Implementação Resumo Programação estruturada: funções Testes unitários Tipos de erro: sintaxe, exception, lógicos e numéricos Ciclo de vida e reutilização de código Estilo de código Leitura adicional: Recomendada: Capítulo 4 dos apontamentos Opcional: Capítulo 3 do livro "Thinking Python" 35 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 36/37

37 file:///media/ludi/gaveta/my%20documents/aulas/ice-b /lectures/04-implementa.html?print-pdf#/ 37/37

ICE-B. 4 - Implementação. Ludwig Krippahl

ICE-B. 4 - Implementação. Ludwig Krippahl ICE-B 4 - Implementação Ludwig Krippahl Implementação Resumo Exemplo: cálculo de ph, agora estruturado Testes unitários Ciclo de vida de um programa Erros e precisão numérica 1 Implementação Exemplo:Calcular

Leia mais

3 - Programação Estruturada

3 - Programação Estruturada ICE-B 3 - Programação Estruturada Ludwig Krippahl Programação Estruturada Resumo Exemplo: cálculo de ph Nomes: contexto e importação Programação estruturada Criar funções 1 Programação Estruturada Exemplo:Calcular

Leia mais

Informática para Ciências e Engenharias 2013/14. Teórica 2

Informática para Ciências e Engenharias 2013/14. Teórica 2 Informática para Ciências e Engenharias 2013/14 Teórica 2 Na aula de hoje... Decomposição de problemas Abstracção, generalização e algoritmos Ficheiros e código fonte scripts, funções e como escrever código

Leia mais

2 - Variáveis ICE-B. Ludwig Krippahl 3/6/2019 ICE-B-02

2 - Variáveis ICE-B. Ludwig Krippahl 3/6/2019 ICE-B-02 ICE-B 2 - Ludwig Krippahl file:///media/ludi/gaveta/my%20documents/aulas/ice-b-1819-2/lectures/02-vars.html?print-pdf#/ 1/28 Resumo Objectos e tipos de valores em Python : criação e utilização Operações

Leia mais

ICE-B. 2 - Variáveis. Ludwig Krippahl

ICE-B. 2 - Variáveis. Ludwig Krippahl ICE-B 2 - Variáveis Ludwig Krippahl Variáveis Resumo Objectos e tipos de valores em Python Variáveis: criação e utilização Operações com valores e variáveis Exemplos: cálculos usando variáveis 1 Variáveis

Leia mais

Informática para Ciências e Engenharias 2013/14. Teórica 3

Informática para Ciências e Engenharias 2013/14. Teórica 3 Informática para Ciências e Engenharias 2013/14 Teórica 3 Na aula de hoje... Ciclo for for end Vectores numéricos e strings sequências de números indexação de vectores Percursos em vectores 2 Ciclo for

Leia mais

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

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

Leia mais

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

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

Leia mais

Informática para Ciências e Engenharias 2014/15. Teórica 7

Informática para Ciências e Engenharias 2014/15. Teórica 7 Informática para Ciências e Engenharias 2014/15 Teórica 7 Na aula de hoje... Controlo de execução ciclos condicionais while end Exemplos raiz quadrada histograma fórmula química while while e matrizes

Leia mais

Informática para Ciências e Engenharias 2013/14. Teórica 7

Informática para Ciências e Engenharias 2013/14. Teórica 7 Informática para Ciências e Engenharias 2013/14 Teórica 7 Na aula de hoje... Controlo de execução ciclos condicionais while end Exemplos raiz quadrada histograma fórmula química while while e matrizes

Leia mais

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

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

Leia mais

ICE-B. 6 - Iteração. Ludwig Krippahl

ICE-B. 6 - Iteração. Ludwig Krippahl ICE-B 6 - Iteração Ludwig Krippahl Iteração Resumo O ciclo for Exemplo: enzimas de restrição Função range e iteração pelos índices Exemplos: média e outras estatísticas Devolver mais de um valor Criar

Leia mais

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

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

Leia mais

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2016 / 17

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2016 / 17 Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2016 / 17 Sumário Resolução de problemas Metodologia e níveis de abstração. Funções. Testes unitários. Ficheiros com

Leia mais

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

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

Leia mais

Fundamentos de Lógica e Algoritmos. Aula 3.2 IDLE, Variáveis e Tipos. Prof. Dr. Bruno Moreno

Fundamentos de Lógica e Algoritmos. Aula 3.2 IDLE, Variáveis e Tipos. Prof. Dr. Bruno Moreno Fundamentos de Lógica e Algoritmos Aula 3.2 IDLE, Variáveis e Tipos Prof. Dr. Bruno Moreno bruno.moreno@ifrn.edu.br IDLE O IDLE é um ambiente de desenvolvimento integrado para Python; O IDLE permite: Escrever

Leia mais

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

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

Leia mais

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

ICE-B Sqlite e Python. Ludwig Krippahl

ICE-B Sqlite e Python. Ludwig Krippahl ICE-B 16 - Sqlite e Python Ludwig Krippahl Sqlite + Python Resumo Usar Sqlite a partir de Python Módulo sqlite3 Ligação à base de dados Cursor para executar comandos SQL Exemplo prático: criar uma tabela

Leia mais

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

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

Leia mais

Informática para Ciências e Engenharias 2014/15. Teórica 8

Informática para Ciências e Engenharias 2014/15. Teórica 8 Informática para Ciências e Engenharias 2014/15 Teórica 8 Na aula de hoje... Organização de um disco. Sistema de ficheiros. Ficheiros de texto e binários. Operações sobre ficheiros de texto. 2 Ficheiros

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

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

AMBIENTE DE PROGRAMAÇÃO PYTHON II

AMBIENTE DE PROGRAMAÇÃO PYTHON II 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 2 AMBIENTE DE PROGRAMAÇÃO PYTHON II 2.1. Objectivos

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

ICE-B. 1 - Introdução. Ludwig Krippahl

ICE-B. 1 - Introdução. Ludwig Krippahl ICE-B 1 - Introdução Ludwig Krippahl Introdução Resumo Informações sobre o funcionamento de ICE-B Objectivos de ICE-B Informática e sistemas computacionais Porquê aprender a programar? Sistemas computacionais

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

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

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

Leia mais

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

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

Leia mais

Computação I - Python

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

Leia mais

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

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

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

Leia mais

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

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

Leia mais

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

Informática para Ciências e Engenharias 2014/15. Teórica 4

Informática para Ciências e Engenharias 2014/15. Teórica 4 Informática para Ciências e Engenharias 2014/15 Teórica 4 Na aula de hoje... Controlo de execução condições if elseif else end operadores relacionais e lógicos Matrizes criação e percursos em matrizes

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

ICE-B Ficheiros. Ludwig Krippahl

ICE-B Ficheiros. Ludwig Krippahl ICE-B 13 - Ficheiros Ludwig Krippahl Ficheiros Resumo Organização de um disco. Sistema de ficheiros. Ficheiros de texto e binários. Operações sobre ficheiros de texto. Simulação de digestão enzimática

Leia mais

Programação I Aula 3 Primeiros programas

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

Leia mais

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

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

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

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Processamento da Informação 2. Conceitos de Programação 3. Funções e Programas de Computador 1 Processamento da

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157

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

1 - Ambiente de desenvolvimento

1 - Ambiente de desenvolvimento Neste documento começa-se por apresentar o ambiente de desenvolvimento integrado do Visual Basic (menu bar, toolbars, toolbox, project explorer window, properties window, form designer e code editor window).

Leia mais

Informática para Ciências e Engenharias-B 2018/19

Informática para Ciências e Engenharias-B 2018/19 Informática para Ciências e Engenharias-B 2018/19 Trabalho Prático N o 2 2018/19 1 Objectivo do Trabalho Um grupo de historiadores está a estudar uma série de experiências antigas de química e precisa

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Hugo de Oliveira Barbalho hbarbalho@ic.uff.br Material produzido pelo professor: Leandro Augusto Frata Fernandes (laffernandes@ic.uff.br)

Leia mais

14 - Dados Estruturados

14 - Dados Estruturados ICE-B 14 - Dados Estruturados Ludwig Krippahl Dados Estruturados Resumo Organizar os dados de forma estruturada Dicionários: Estruturas de dados associando chave e valor Exemplo: calcular massa molecular

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução ao FORTRAN Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Introdução ao FORTRAN Cinco aspectos

Leia mais

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

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

Leia mais

PROGRAMAÇÃO EM JOGOS DIGITAIS

PROGRAMAÇÃO EM JOGOS DIGITAIS PROGRAMAÇÃO EM JOGOS DIGITAIS Frutuoso Silva Paradigmas de Programação Linguagem de programação Paradigmas de programação 1 Linguagem de programação! Para ser útil e confiável, uma linguagem deve ter uma

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

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

Objectivos. Observar os tipos fornecidos pelo C++ Explicar as regras sintácticas para nomes de identificadores Estudar variáveis e constantes

Objectivos. Observar os tipos fornecidos pelo C++ Explicar as regras sintácticas para nomes de identificadores Estudar variáveis e constantes Tipos de Dados Objectivos Observar os tipos fornecidos pelo C++ São dados alguns exemplos Explicar as regras sintácticas para nomes de identificadores Estudar variáveis e constantes O que são Como se distinguem

Leia mais

Uma introdução ao GAP

Uma introdução ao GAP Uma introdução ao GAP O nome GAP, advém de Groups, Algorithms and Programming. Trata-se de um sistema computacional inicialmente concebido para trabalhar na área da álgebra. Álgebra (Curso de CC) Ano lectivo

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

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador Prof. Araken Medeiros araken@ufersa.edu.br O processo de resolução de um problema com um computador leva à escrita de um algoritmo ou programa e à sua execução. Mas o que é um algoritmo? Angicos, RN 15/9/2009

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

Fundamentos de Programação em Python

Fundamentos de Programação em Python Fundamentos de Programação em Python Diego Silveira Costa Nascimento Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte diego.nascimento@ifrn.edu.br 23 de junho de 2017 Ementa do

Leia mais

CONCEITOS BÁSICOS DE PROGRAMAÇÃO PYTHON

CONCEITOS BÁSICOS DE PROGRAMAÇÃO PYTHON Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2005/2006 FICHA 2 CONCEITOS BÁSICOS DE PROGRAMAÇÃO PYTHON 2.1.

Leia mais

Informática para Ciências e Engenharias B

Informática para Ciências e Engenharias B Informática para Ciências e Engenharias B Trabalho Prático N o 1 2017/18 1 Objectivo do Trabalho Cansados das aulas de ICE, um grupo de alunos decidiu fazer um passeio pela Europa para desanuviar. Infelizmente,

Leia mais

Python 3.x Estrutura de Repetição while

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

Leia mais

Variáveis e instruções de repetição

Variáveis e instruções de repetição Variáveis e instruções de repetiçã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

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

MCG126 Programação de Computadores II

MCG126 Programação de Computadores II MCG126 Programação de Computadores II Turma: B Professor: Isac Mendes Lacerda (Material original cedido gentilmente pela professora Janaína Gomide) 1 Outro Teste... Escreva um programa que receba um texto

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Linguagem de programação C 3.1. Conceitos

Leia mais

Informática para Ciências e Engenharias 2014/15. Teórica 9

Informática para Ciências e Engenharias 2014/15. Teórica 9 Informática para Ciências e Engenharias 2014/15 Teórica 9 Na aula de hoje... Estruturas e vectores de estruturas. Cálculo da massa molecular Cálculo da fracção de um resíduo em sequências de proteínas

Leia mais

ICE-B Ciclo while. Ludwig Krippahl

ICE-B Ciclo while. Ludwig Krippahl ICE-B 10 - Ciclo while Ludwig Krippahl while Resumo Ciclo while Iterar enquanto uma condição for verdadeira Exemplo: diâmetro de uma proteína Obter coordenadas do servidor Encontrar átomos mais afastados

Leia mais

17 - Consultas em SQL

17 - Consultas em SQL ICE-B 17 - Consultas em SQL Ludwig Krippahl Consultas em SQL Resumo Cruzar informação entre várias tabelas SQL: JOIN Funções de agregação Juntar strings e parâmetros em Python: format e join Trabalho prático

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

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

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

Leia mais

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

Introdução ao SciLab. SciLab O que é? Onde obter o programa: Introdução ao SciLab SciLab O que é? SciLab é uma plataforma interativa para computação numérica composta de uma rica coleção de algoritmos numéricos e de uma linguagem de programação associada. CN04 2010

Leia mais

Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO

Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO Introdução Resolução de problemas Encontrar uma maneira de descrever este problema de uma forma clara e precisa. Encontremos uma seqüência

Leia mais

Informática para Ciências e Engenharias 2012/13. Teórica 9

Informática para Ciências e Engenharias 2012/13. Teórica 9 Informática para Ciências e Engenharias 2012/13 Teórica 9 Na aula de hoje... Estruturas e vectores de estruturas. Cálculo da massa molecular Cálculo da fracção de um resíduo em sequências de proteínas

Leia mais

Introdução à Programação de Computadores Fabricação Mecânica

Introdução à Programação de Computadores Fabricação Mecânica Introdução à Programação de Computadores Fabricação Mecânica Edilson Hipolito da Silva edilson.hipolito@ifsc.edu.br - http://www.hipolito.info Aula 04 - Linguagens de Programação, Interpretador, compilador

Leia mais

x n+1 = x n f(x n) f (x n ), n 0. Sob certas condições muitas vezes satisfeitas, o método converge, isto é, temos que o limite lim x n

x n+1 = x n f(x n) f (x n ), n 0. Sob certas condições muitas vezes satisfeitas, o método converge, isto é, temos que o limite lim x n EP3: COMPORTAMENTO DINÂMICO DO MÉTODO DE NEWTON 1. Método de Newton O método de Newton é um método numérico, muito simples, para calcular aproximações de raízes de uma função real da qual podemos calcular

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

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

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

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação

Leia mais

18 - Consultas em SQL

18 - Consultas em SQL ICE-B 18 - Consultas em SQL Ludwig Krippahl Consultas em SQL Resumo Cruzar informação entre várias tabelas SQL: JOIN Funções de agregação Juntar strings e parâmetros em Python: format e join 1 Consultas

Leia mais

Engenharia Elétrica AAM. Professor: Marco Shawn Meireles Machado

Engenharia Elétrica AAM. Professor: Marco Shawn Meireles Machado Engenharia Elétrica AAM Professor: Marco Shawn Meireles Machado Objetivos da Aula: Definir linguagem de alto nível e baixo nível; Descrever a linguagem assembler; Descrever a linguagem C; Revisão linguagem

Leia mais

Introdução à Computação

Introdução à Computação Universidade Federal do Maranhão Curso de Química Departamento de Informática Introdução à Computação Linguagem Fortran Profa. Msc. Maria Auxiliadora Freire maria@deinf.ufma.br 1 Lógica de Programação

Leia mais

Informática para Ciências e Engenharias (B) 2013/14. Teórica 1

Informática para Ciências e Engenharias (B) 2013/14. Teórica 1 Informática para Ciências e Engenharias (B) 2013/14 Teórica 1 Informação Docente (teóricas) Ludwig Krippahl (ludi@fct.unl.pt) Terças, 15:00-16:00 Gab. 252 Ed. II Página de ICE: http://ssdi.di.fct.unl.pt/ice/

Leia mais

Python - Variáveis e expressões

Python - Variáveis e expressões Python - e expressões Prof. Paulo H R Gabriel (com base no material do Prof. André Backes) Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador

Leia mais

Introdução à Programação em C Input / Output

Introdução à Programação em C Input / Output Introdução à Programação em C Input / Output Resumo Aula Anterior Programa começa com função main() Sintaxe para definição de funções Definição de variáveis e atribuições Estruturas de controlo if-then

Leia mais

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha Conceitos Lógica de Programação técnica de encadear pensamentos

Leia mais

Ficheiros de Valores Separados por Vírgulas (CSV)

Ficheiros de Valores Separados por Vírgulas (CSV) Ficheiros de Valores Separados por Vírgulas (CSV) Programação II Universidade de Lisboa Faculdade de Ciências Departamento de Informática Licenciatura em Tecnologias da Informação Vasco Thudichum Vasconcelos

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 Ementa do Curso Conceitos básicos de programação Orientação a objetos Linguagem Python Simulação com o NS-3 Programação

Leia mais

TCC 00308: Programação de Computadores I Introdução

TCC 00308: Programação de Computadores I Introdução TCC 00308: Programação de Computadores I 2017.1 Introdução Processo de resolução de problemas Definição dos requisitos do problema (fazer o programa certo) Entradas Cálculos Casos especiais Saídas Desenvolvimento

Leia mais

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM Curso de C Introdução 1 Introdução Roteiro: Recordando Algoritmos Linguagem de Programação O computador Instruções de Máquina Níveis de Abstração Compilação 2 Algoritmos Recordando: Algoritmo: conjunto

Leia mais

Programação Introdução

Programação Introdução PROGRAMAÇÃO Programação Introdução Prof. Dr. Adriano Mauro Cansian 1 Introdução Para armazenar um algoritmo na memória de um computador e para que ele possa, em seguida, comandar as operações a serem executadas,

Leia mais

Computadores e Programação

Computadores e Programação Computadores e Programação Engenharia Física Engenharia Biomédica 2008 2009 2 o semestre Helmut Wolters, Jorge Landeck, Miguel Oliveira helmut@coimbra.lip.pt 2009-04-01 H.Wolters, J.Landeck, M.Oliveira

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introdução à Programação. João Manuel R. S. Tavares Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de

Leia mais

Nesta aula... 1 Variáveis, Expressões, Instruções. 2 Desvio: códigos de carateres. 3 Módulos

Nesta aula... 1 Variáveis, Expressões, Instruções. 2 Desvio: códigos de carateres. 3 Módulos Nesta aula... Variáveis, Expressões, Instruções 1 Variáveis, Expressões, Instruções 2 3 Operadores e Operandos Ordem das operações P parêntesis E exponenciação MD multiplicação, divisão AS adição, subtracção

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 2 a Aula Tipos e classes

Pedro Vasconcelos DCC/FCUP. Programação Funcional 2 a Aula Tipos e classes Programação Funcional 2 a Aula Tipos e classes Pedro Vasconcelos DCC/FCUP 2012 Tipos Um tipo é um nome para uma coleção de valores relacionados. Por exemplo, o tipo Bool True contém dois valores lógicos:

Leia mais

GABARITO Questão a b c d e

GABARITO Questão a b c d e Documento gerado por Contato: smarttest@smarttest.com.br Instituto Federal Catarinense Curso: Engenharia Mecânica Turma: 2016/Turma Extra Disciplina: Informática para Engenharia Docente: Ricardo Antonello

Leia mais

Um algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos.

Um algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos. Programação Um programa é uma sequência de instruções de uma linguagem de programação (VB no nosso caso). Cada instrução representa uma qualquer acção que nós pretendemos ver executada. Programar consiste

Leia mais

Ambiente de Programação, rastreamento e entrada de dados. MCG114 Programação de Computadores I. Interpretador de Comandos. Interpretador de Comandos

Ambiente de Programação, rastreamento e entrada de dados. MCG114 Programação de Computadores I. Interpretador de Comandos. Interpretador de Comandos MCG114 Programação de Computadores I Profa. Ambiente de Programação, rastreamento e entrada de dados 1 2 Ambiente Python para Programação Ambiente Python para Programação Até agora... Comandos e funções

Leia mais