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

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

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

Transcrição

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

2 Sumário Resolução de problemas Metodologia e níveis de abstração. Funções. Testes unitários. Ficheiros com código fonte. Ciclo de vida de um programa. Tipos de erros. Representação de números em binário. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 2

3 Problema da Vedação Na sequência de uma expropriação de terrenos, vai ser colocada uma vedação entre três estacas, cujas coordenadas cartesianas são (x1,y1), (x2,y2) e (x3,y3). Pretende-se calcular o comprimento da vedação. (x3,y3) (x1,y1) (x2,y2) 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 3

4 Resolução Problema [1] 1. Compreender totalmente o problema descrito no enunciado. Não ficar com dúvidas sobre: a informação que se recebe (os dados de entrada); a informação que se produz (os resultados, a saída). Devemos saber resolver o problema à mão. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 4

5 Resolução Problema [2] 2. Caracterizar o problema. Problema: Comprimento de uma vedação. Entrada: estaca (x1,y1), estaca (x2,y2), estaca (x3,y3). Saída: o comprimento da vedação delimitada pelas estacas (x1,y1), (x2,y2) e (x3,y3). 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 5

6 Resolução Problema [3] 3. Generalizar o problema (sempre que for possível). Problema: Perímetro de um triângulo. Entrada: vér(ce (x1,y1), vér(ce (x2,y2), vér(ce (x3,y3). Saída: o perímetro do triângulo definido pelos vér(ces (x1,y1), (x2,y2) e (x3,y3). 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 6

7 Resolução Algoritmo [1] 4. Desenhar o algoritmo para resolver o problema. a) Conceber o algoritmo, decompondo o problema em subproblemas. Como calcular o perímetro de um triângulo? Somam-se os comprimentos dos três lados do triângulo. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 7

8 Resolução Algoritmo [2] b) Iden(ficar, caracterizar e generalizar cada sub-problema. Sub-problema: Comprimento de um segmento de reta. Entrada: ponto (x,y), ponto (x,y ). Saída: o comprimento do segmento de reta definido pelos pontos (x,y) e (x,y ). 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 8

9 Resolução Algoritmo [3] c) Conceber o algoritmo, assumindo que os sub-problemas estão resolvidos. Perímetro triângulo (x1,y1), (x2,y2), (x3,y3) : comprimento segmento (x1,y1) (x2,y2) + comprimento segmento (x2,y2) (x3,y3) + comprimento segmento (x3,y3) (x1,y1) 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 9

10 Resolução Algoritmo [4] 5. Para cada sub-problema, desenhar o algoritmo para o resolver. a) Conceber o algoritmo, decompondo o problema em subproblemas. b) Iden(ficar, caracterizar e generalizar cada sub-problema. c) Conceber o algoritmo, assumindo que os sub-problemas estão resolvidos. Como calcular o comprimento do segmento (x,y) (x,y )? (x x') 2 + (y y') 2 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 10

11 Resolução Programa 6. Para cada sub-problema (começando pelos mais simples), implementar o respe(vo algoritmo e testar o subprograma. 7. Implementar o algoritmo que resolve o problema e testar o programa pedido. Em ICE, o sub-programa e o programa são funções. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 11

12 Sumário Resolução de problemas Metodologia e níveis de abstração. Funções. «Matemá(ca «Matlab Testes Unitários. Ficheiros com código fonte. Ciclo de vida de um programa. Tipos de erros. Representação de números em binário. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 12

13 Matemá(ca Definição de funções Sintaxe da definição: nomefunção( parâmetros ) = expressão com os parâmetros separados por vírgulas. Exemplos: f(x) = x 2 g(x) = x h(x,y) = max(f(x), g(y)) Há problemas por x ser um parâmetro de f, de g e de h? Não, porque os contextos são diferentes. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 13

14 Matemá(ca Chamada de funções Sintaxe da aplicação (ou chamada): nomefunção( argumentos) com os argumentos separados por vírgulas. Exemplo: Sendo f(x) = x2 ; g(x) = x ; h(x,y) = max(f(x),g(y)) temos, por exemplo f(3) (que vale 9) h(4,-11) (que vale 16) 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 14

15 Matlab Definição de funções [1] Sintaxe da definição: function nomeresultado = nomefunção(parâmetros) instruções end com os parâmetros separados por vírgulas; nomeresultado é uma variável cujo valor no fim da execução das instruções é o resultado da função. À primeira linha da definição (que começa por func%on) chama-se a assinatura da função. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 15

16 Matlab Definição de funções [2] Exemplo: function nomeresultado = nomefunção(parâmetros) instruções end Implementação de f(x) = x2 (1ª versão): function res = f(x) end res = x^2 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 16

17 REGRA DE PROGRAMAÇÃO Todos os iden(ficadores (nomes) devem ser escolhidos de forma a indicar o seu significado. O nome de uma variável diz o que é guardado nessa posição de memória. O nome de uma função diz o que a função calcula. O nome de um parâmetro diz o que o parâmetro vai receber. Nota: Nenhum nome pode ter acentos ou cedilhas. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 17

18 Matlab Definição de funções [3] Implementação de f(x) = x2 (1ª versão): function res = f(x) end res = x^2 Problemas? Neste caso (em que a função vem da Matemá(ca), o iden(ficador x do parâmetro é muito natural. O iden(ficador f da função não dá qualquer informação. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 18

19 Matlab Definição de funções [4] Implementação de f(x) = x2 (1ª versão): function res = f(x) res = x^2 end Implementação de f(x) = x2 (2ª versão): function res = quadrado(x) res = x^2 end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 19

20 REGRA DE PROGRAMAÇÃO Todas as funções devem ser documentadas, indicando-se a sintaxe da chamada, o que a função calcula e o que são os seus parâmetros. Isto é feito escrevendo um comentário antes ou depois da assinatura da função. Em Matlab, o comando help nomefunção escreve esse comentário. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 20

21 Matlab Definição de funções [5] Implementação de f(x) = x2 (3ª versão): function res = f(x) % res = quadrado(x) % Calcula o quadrado do numero x res = x^2 end >> help quadrado 'quadrado' is a function from the file... res = quadrado(x) Calcula o quadrado do numero x Additional help for... >> 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 21

22 Matlab M-files O código de uma função tem de ser guardado num ficheiro com o nome nomefunção.m Conteúdo do ficheiro quadrado.m: Ficheiro quadrado.m function res = f(x) % res = quadrado(x) % Calcula o quadrado do numero x res = x^2 end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 22

23 Matlab Chamada de funções [1] Sintaxe da chamada: nomefunção( argumentos ) com os argumentos separados por vírgulas. Execução da 1ª chamada: 1. Avalia-se o valor da expressão usada como argumento (que é -3). 2. Executa-se o código da função, usando como valor do parâmetro o valor do argumento respe(vo. 3. O valor da chamada é o valor que no fim da execução está no nome do resultado (res neste caso) 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 23

24 Matlab Chamada de funções [1] Execução da 1ª chamada: 1. Avalia-se o valor da expressão usada como argumento (que é -3). 2. Executa-se o código da função, usando como valor do parâmetro o valor do argumento respe(vo. 3. O valor da chamada é o valor que no fim da execução está no nome do resultado (res neste caso) function res = f(x) % res = quadrado(x) % Calcula... res = x^2 end >> quadrado(-1*3) res = 9 ans = 9 >> x = quadrado(-5) - 1 res = 25 x = 24 >> 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 24

25 Problema da Vedação Passo 6 [1] Comprimento do segmento (x,y) (x,y ) Implementação da função: (x x') 2 + (y y') 2 function res = comprsegmento( x1, y1, x2, y2 ) % res = comprsegmento(x1, y1, x2, y2) % Calcula o comprimento do segmento de reta % definido pelos pontos (x1,y1) e (x2,y2).... end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 25

26 REGRA DE PROGRAMAÇÃO Cada linha de código tem de ser muito fácil de entender. A indentação (o número de espaços em branco no início da linha) é fundamental para iden(ficar os blocos de instruções. A linha deve ser curta (80 caracteres, no máximo, contando com os espaços em branco do início). As expressões complicadas devem ser simplificadas, usando variáveis (auxiliares). 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 26

27 Problema da Vedação Passo 6 [2] Comprimento do segmento (x,y) (x,y ) Implementação da função: (x x') 2 + (y y') 2 function res = comprsegmento( x1, y1, x2, y2 ) % res = comprsegmento(x1, y1, x2, y2) % Calcula o comprimento do segmento de reta % definido pelos pontos (x1,y1) e (x2,y2). aux = (x1 x2)^2 + (y1 y2)^2 res = sqrt(aux) end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 27

28 REGRA DE PROGRAMAÇÃO Testes Unitários: cada função deve ser testada isoladamente, antes de ser integrada no programa completo. Representa(vidade: Os casos testados devem ser o mais variados possível: casos gerais, casos par(culares, casos degenerados, casos limite,... Erros É essencial ler e tentar compreender as mensagens de erro. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 28

29 Problema da Vedação Passo 6 [3] Na fase de teste, podem-se ver os valores intermédios: function res = comprsegmento(x1, y1, x2, y2) %... aux = (x1 x2)^2 + (y1 y2)^2 res = sqrt(aux) end Casos de Teste: pontos diferentes pontos iguais >> c = cpomprsegmento(1,1,4,5) aux = 25 res = 25 C = 5 >> 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 29

30 Problema da Vedação Passo 6 [4] Na versão final, os valores intermédios são intrusivos: function res = comprsegmento(x1, y1, x2, y2) %... aux = (x1 x2)^2 + (y1 y2)^2; res = sqrt(aux); end >> c = comprsegmento(1,1,4,5) C = 5 >> 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 30

31 Problema da Vedação Passo 7 [1] Perímetro triângulo (x1,y1) (x2,y2) (x3,y3) Implementação da função: function res = perimetrotriang(x1, y1, x2, y2, x3, y3) % res = perimetrotriang(x1, y1, x2, y2, x3, y3) % Calcula o perimetro do triangulo definido pelos % vertices (x1,y1), (x2,y2) e (x3,y3).... end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 31

32 Problema da Vedação Passo 7 [2] Perímetro triângulo (x1,y1) (x2,y2) (x3,y3) Implementação final da função: function res = perimetrotriang(x1, y1, x2, y2, x3, y3) % res = perimetrotriang(x1, y1, x2, y2, x3, y3) % Calcula o perimetro do triangulo definido pelos % vertices (x1,y1), (x2,y2) e (x3,y3). lado1 = comprsegmento(x1, y1, x2, y2); lado2 = comprsegmento(x2, y2, x3, y3); lado3 = comprsegmento(x3, y3, x1, y1); res = lado1 + lado2 + lado3; end Caso especial de teste: os três pontos são colineares. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 32

33 Matlab Variáveis locais, parâmetros, variável resultado As variáveis criadas no corpo (dentro) de uma função são destruídas quando a execução do código da função termina. Chamam-se variáveis locais da função. Os valores dos parâmetros e a variável onde é guardado o resultado da função também deixam de exis(r quando a execução da função termina. As variáveis criadas diretamente no interpretador nunca são destruídas exceto se for executado o comando clear ou clear(nomevariável). 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 33

34 Matlab Variáveis locais function res = perimetrotriang(x1, y1, x2, y2, x3, y3) %... lado1 = comprsegmento(x1, y1, x2, y2); lado2 = comprsegmento(x2, y2, x3, y3); lado3 = comprsegmento(x3, y3, x1, y1); res = lado1 + lado2 + lado3; end >> perim = perimetrotriang(1, 1, 50, 8, 21, 15) perim = >> lado1??? Undefined function or variable lado1. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 34

35 Matlab Parâmetros function res = perimetrotriang(x1, y1, x2, y2, x3, y3) %... lado1 = comprsegmento(x1, y1, x2, y2); lado2 = comprsegmento(x2, y2, x3, y3); lado3 = comprsegmento(x3, y3, x1, y1); res = lado1 + lado2 + lado3; end >> perim = perimetrotriang(1, 1, 50, 8, 21, 15) perim = >> y3??? Undefined function or variable y3. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 35

36 Matlab Variável resultado function res = perimetrotriang(x1, y1, x2, y2, x3, y3) %... lado1 = comprsegmento(x1, y1, x2, y2); lado2 = comprsegmento(x2, y2, x3, y3); lado3 = comprsegmento(x3, y3, x1, y1); res = lado1 + lado2 + lado3; end >> perim = perimetrotriang(1, 1, 50, 8, 21, 15) perim = >> res??? Undefined function or variable res. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 36

37 Sumário Resolução de problemas Metodologia e níveis de abstração Funções. Testes Unitários. Ficheiros com código fonte. Ciclo de vida de um programa. Tipos de erros. Representação de números em binário. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 37

38 Problema da Vedação Programa [1] Ficheiro comprsegmento.m: Ficheiro comprsegmento.m function res = comprsegmento( x1, y1, x2, y2 ) % res = comprsegmento(x1, y1, x2, y2) % Calcula o comprimento do segmento de reta % definido pelos pontos (x1,y1) e (x2,y2). aux = (x1 x2)^2 + (y1 y2)^2; res = sqrt(aux); end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 38

39 Problema da Vedação Programa [2] Ficheiro perimetrotriang.m: Ficheiro perimetrotriang.m function res = perimetrotriang(x1, y1, x2, y2, x3, y3) % res = perimetrotriang(x1, y1, x2, y2, x3, y3) % Calcula o perimetro do triangulo definido pelos % vertices (x1,y1), (x2,y2) e (x3,y3). lado1 = comprsegmento(x1, y1, x2, y2); lado2 = comprsegmento(x2, y2, x3, y3); lado3 = comprsegmento(x3, y3, x1, y1); res = lado1 + lado2 + lado3; end 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 39

40 Resolução de Problemas Enunciado Problema Algoritmo Programa (guardado em ficheiros) Edição Interpretação Execução Programa 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 40

41 Ficheiro Do ponto de vista lógico, um ficheiro contém uma sequência de bits, que pode representar um texto, números, uma imagem, sons, etc. Um ficheiro é guardado no disco (para que a informação não se perca quando o computador não está a funcionar) e é acessível através de um iden(ficador único (nome). Um ficheiro com código fonte é um ficheiro de texto com código escrito pelo programador. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 41

42 Edição de um ficheiro com código fonte Editor de texto quadrado.m Ficheiro fonte (original) do programa Programador % res = quadrado(x) % Calcula o quadrado do numero x. function res = quadrado( x ) res = x^2; end Programa carregado a partir do disco 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 42

43 Edição do programa CPU Execução das instruções Memória Editor de texto Interligação Teclado Ecrã Disco quadrado.m 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 43

44 Execução do programa A azul o que é escrito pelo interpretador CPU Execução das instruções Memória Interpretador Interligação Teclado Ecrã Disco >> c = comprsegmento(1, 1,4, 5) c = 5 >> A vermelho o que é escrito pelo programador quadrado.m comprsegmento.m perimetrotriang.m 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 44

45 Sumário Resolução de problemas Metodologia e níveis de abstração Funções. Testes Unitários. Ficheiros com código fonte. Ciclo de vida de um programa. Tipos de erros. Representação de números em binário. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 45

46 Erros nos programas Erros! sintá(cos de execução lógicos numéricos Programa (guardado em ficheiros) Edição Interpretação Execução 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 46

47 Tipos de Erros [1] Erros sintá(cos: quando expressões ou instruções não cumprem as regras sintá(cas da linguagem de programação. São os erros mais fáceis de corrigir. Exemplos: 6 + * 2 total +1 = 9 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 47

48 Tipos de Erros [2] Erros de execução: quando a execução do programa não pode con(nuar por qualquer mo(vo, mas nenhuma regra sintá(ca foi violada. Exemplos: Avaliar uma variável que não existe. Escrever o código de uma função num ficheiro cujo nome não é nomefunção.m. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 48

49 Tipos de Erros [3] Erros lógicos: quando a execução do programa termina com sucesso (ou seja, sem ter havido erros sintá(cos ou de execução), mas o resultado não é o que se pretende devido a erros nos algoritmos. Exemplo: trocar os valores das variáveis x e y (que existem), com as duas seguintes instruções: x = y y = x Qual é o erro? 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 49

50 Tipos de Erros [4] Erros numéricos: quando os resultados das operações aritmé(cas não são exatos e os erros (pela falta de precisão) afetam a saída do programa. Exemplos: sqrt(2)^2 2 è e-16 sin(pi) è e Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 50

51 Elementos simples de armazenamento Guardam informação segundo uma lógica de dois valores ou lógica binária, e.g. Passa / não passa corrente elétrica Reflete / não reflete a luz Com um elemento destes podemos armazenar um bit, que é um de dois valores diferentes. Com uma sequência de n bits, podemos armazenar um de quantos valores diferentes? 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 51

52 Representação de informação em binário [1] Quantos valores diferentes podem ser representados com uma sequência de n bits? 2 bits : 2 2 = 4 valores dis(ntos è Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 52

53 Representação de informação em binário [2] Quantos valores diferentes podem ser representados com uma sequência de n bits? 3 bits : 2 3 = 8 valores dis(ntos è Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 53

54 Representação de informação em binário [3] Quantos valores diferentes podem ser representados com uma sequência de n bits? n bits : 2 n valores dis(ntos 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 54

55 Potências de dois = 1* * * * 2 7 = = 5* * * 10 2 = Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 55

56 Representação de informação em binário [4] 1 bit de informação dois valores dis(ntos 1 byte de informação = 8 bits 2 8 = 256 valores dis(ntos 2 bytes de informação = 16 bits 2 16 = valores dis(ntos 4 bytes de informação = 32 bits 2 32 = valores dis(ntos 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 56

57 Representação de inteiros Com n bits, podem-se representar 2 n valores diferentes. Se representarmos números inteiros sem sinal, os valores são: de 0 a 2 n 1. com 32 bits: de 0 a Se representarmos números inteiros com sinal, os valores são: de -2 n-1 a 2 n-1-1. com 32 bits: de a (intmin) (intmax) 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 57 57

58 Operações aritmé(cas com um número fixo de bits Se somarmos (intmax) com 10 deveria dar , que não é representável com 32 bits (com sinal), porque é maior do que intmax ( ). O mesmo problema ocorre quando o resultado de uma operação for menor do que (intmin) A aritmé(ca dos computadores reserva-nos algumas surpresas! 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 58 58

59 Representação de reais [1] Também é feita com um número fixo de bits: 32 bits precisão simples; 64 bits precisão dupla. 32 ou 64 bits S E F 1 bit para o sinal S 8 ou 11 bits para o expoente E 23 ou 52 bits para a fração F O valor representado é (-1) S F 2 E 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 59 59

60 Representação de reais [2] Não se conseguem representar números muito grandes nem números muito pequenos (em valor absoluto). Precisão simples: +/ x a +/- 3.4 x Precisão dupla: +/ x a +/ x (realmin) (realmax) Dois números podem ser tão próximos que a sua representação é igual (falta de precisão (eps)). Precisão simples: cerca de 7 casas decimais Precisão dupla: cerca de 15 casas decimais 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 60

61 Matlab Erros numéricos Em geral, os erros numéricos devem-se à forma como os números são representados. Há problemas com: números muito grandes (em valor absoluto); a falta de precisão (que se verifica na representação quer de racionais quer de irracionais). Em Matlab, os números inteiros são representados como números reais. 13 Março 2017 ICE-c Aula 2: Resolução de Problemas; Funções 61

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 Vetores. Ciclos FOR. Percursos em vetores. Exemplos 20 Março 2017 ICE-c Aula 3: Vetores; ciclos

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 Introdução Esta unidade curricular, é uma variante de outras similares leccionadas a outros cursos da FCT/NOVA,

Leia mais

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

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 8. Pedro Barahona 2016 / 17 Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 8 Pedro Barahona 2016 / 17 Sumário Estruturas. Vetores de estruturas. 8 Maio 2017 8: Estruturas; Vetores de Estruturas 2 Massa

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

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

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007 ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2006/2007 TRABALHO PRÁTICO Nº

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 Instrução IF. Operadores relacionais e lógicos. Avaliação de conjunções e de disjunções. 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

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 (B) 2016/17. Teórica 7

Informática para Ciências e Engenharias (B) 2016/17. Teórica 7 Informática para Ciências e Engenharias (B) 2016/17 Teórica 7 Sumário Ficheiros. Ficheiros de texto e binários. Sistema de ficheiros. Operações sobre ficheiros de texto. 24 Abril 2017 7: Sistemas de Ficheiros;

Leia mais

SEBENTA INTRODUÇÃO Á ALGORITMIA

SEBENTA INTRODUÇÃO Á ALGORITMIA SEBENTA INTRODUÇÃO Á ALGORITMIA O desenvolvimento de programas para computador está sempre baseado na tarefa de programar um computador para seja resolvido um problema ou executada uma função e assim dar

Leia mais

Apresentação. Informação geral + Conceitos iniciais

Apresentação. Informação geral + Conceitos iniciais Apresentação Informação geral + Informação geral Página da cadeira Objectivos principais Compreender a importância dos algoritmos e dos programas de computador para a resolução de problemas em engenharia.

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Aula 7: Estrutura de Decisão

Aula 7: Estrutura de Decisão Aula 7: Estrutura de Decisão Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Estrutura de Decisão Programação de Computadores IV 1 / 27 Agenda 1 Revisão

Leia mais

Engenharia de Software

Engenharia de Software Sumário Engenharia de Software Modelos de desenvolvimento de software Fases de desenvolvimento Programação modular Abordagem top-down e bottom-up Linguagens de programação: Compilação / Interpretação Aplicação

Leia mais

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Apresentação Computação e Programação (CP) 2013/2014 Aula 1 Objetivos Ficar a saber: funcionamento da unidade curricular (UC) Computação

Leia mais

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema Desenvolvimento de programas 1 Análise do problema 2 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Conhecer exatamente o que o problema

Leia mais

Unidade 4: Sistemas de Numeração Representação de Dados em Ponto Fixo Prof. Daniel Caetano

Unidade 4: Sistemas de Numeração Representação de Dados em Ponto Fixo Prof. Daniel Caetano Arquitetura e Organização de Computadores Atualização: 22/8/2 Unidade 4: Sistemas de Numeração Representação de Dados em Ponto Fixo Prof. Daniel Caetano Objetivo: Apresentar as representações mais utilizadas

Leia mais

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema

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

Projeto de Algoritmos

Projeto de Algoritmos Projeto de Algoritmos Introdução aos Sistemas Computacionais Prof. Ernani Viriato de Melo / Reginaldo Costa http://www.ernani.eti.br http://reginaldofazu.blogspot.com 2º Semestre - 2008 Conceitos Básicos

Leia mais

Desenvolvimento de programas

Desenvolvimento de programas 1 Desenvolvimento de programas Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração 2 Análise do problema Conhecer exatamente o que o problema

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

4 O conceito de variável

4 O conceito de variável 4 O conceito de variável Para resolver problemas no computador é necessário manipular dados, sejam números ou caracteres. Se alguém precisa calcular o resultado de uma única conta provavelmente o melhor

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

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

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

Iteração e Pontos Fixos

Iteração e Pontos Fixos Iteração e Pontos Fixos Iteração é um dos pontos chave da programação numérica. Iterar consiste em repetir uma mesma operação diversas vezes levando a uma aproximação cada vez melhor da solução exata.

Leia mais

Informática para Ciências e Engenharias

Informática para Ciências e Engenharias Informática para Ciências e Engenharias Ficha Prática N o 016/17 1 Ambiente de Programação Exercício 1 Crie a diretoria (o diretório ou a pasta) ficha na diretoria: C:\Users\USERNAME\Desktop onde USERNAME

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

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Aula Passada 1º Programa: olamundo.c #include // biblioteca padrão de E/S /* Programa Olá Mundo */ int main(void) { printf( Olá mundo\n ); //exibe Olá mundo

Leia mais

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

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 6. Pedro Barahona 2016 / 17 Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 6 Pedro Barahona 2016 / 17 Sumário Representação de imagens num ecrã. Píxeis. Sistema RGB. Gráficos em Matlab. Gráficos de pontos

Leia mais

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES. Prof. Dr. Daniel Caetano

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES. Prof. Dr. Daniel Caetano INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2018-2 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dispositivos de

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

FUNÇÕES O que são e que servem? Dividir para conquistar! Vantagens.

FUNÇÕES O que são e que servem? Dividir para conquistar! Vantagens. FUNÇÕES para O que são e que servem? Dividir para conquistar! Vantagens. sin; abs; cos; length... FUNÇÕES PRÉ- DEFINIDAS Por exemplo, a função length calcula um único valor e retorna o comprimento do vetor

Leia mais

Representando e Processando Informção

Representando e Processando Informção Representando e Processando Informção Introdução a ECI Aula 6 Daniel R. Figueiredo LAND PESC/COPPE/UFRJ Informação O que é informação? Pergunta bem difícil de responder Definição pragmática: informação

Leia mais

ESTRUTURAS DE CONTROLE

ESTRUTURAS DE CONTROLE ESTRUTURAS DE CONTROLE ESTRUTURA SEQUENCIAL E ESTRUTURAS CONDICIONAIS Introdução à Ciência da Computação Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples

Leia mais

Aula 4: Bases Numéricas

Aula 4: Bases Numéricas Aula 4: Bases Numéricas Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Material baseado nos slides do prof. Diego Passos Fernanda Passos (UFF) Bases Numéricas

Leia mais

Métodos Numéricos - Notas de Aula

Métodos Numéricos - Notas de Aula Métodos Numéricos - Notas de Aula Prof a Olga Regina Bellon Junho 2007 1. Representação de números reais 1.1. Introdução Cálculo Numérico X Método Numérico CI202 - Métodos Numéricos 1 1. Representação

Leia mais

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Este guia irá lhe ajudar a entender o laço de repetição

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se

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

Computação e Programação Exame Época de recurso

Computação e Programação Exame Época de recurso Nome : Número : Computação e Programação 2013-2014 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de recurso 29 de Janeiro de 2014 v

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

CURSO BÁSICO DE PROGRAMAÇÃO AULA 17. Manipulação de arquivos binários.

CURSO BÁSICO DE PROGRAMAÇÃO AULA 17. Manipulação de arquivos binários. CURSO BÁSICO DE PROGRAMAÇÃO AULA 17 Manipulação de arquivos binários. Revisão Abrindo arquivos de texto em C FILE *arquivo = fopen(, ); FILE: Tipo do objeto de arquivo. fopen: Função

Leia mais

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 O Computador A Memória Principal A Linguagem do Computador Os Dados e

Leia mais

Engenharia Civil. Introdução à Programação

Engenharia Civil. Introdução à Programação Engenharia Civil Introdução à Programação Como se faz um algoritmo computacional? Exemplo Exemplo Será que o algoritmo vai funcionar? Questões: Área de uma circunferência programa area AREA, RAIO: real

Leia mais

Introdução à Programação. Vanessa Braganholo

Introdução à Programação. Vanessa Braganholo Introdução à Programação Vanessa Braganholo vanessa@ic.uff.br Processo de resolução de problemas (Princípios de Pólya) Definição dos requisitos do problema (fazer o programa certo) Entradas Cálculos Casos

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

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2013-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos

Leia mais

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio

Leia mais

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

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2018 / 19 Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2018 / 19 Sumário Vetores. Sequências de Números. Ciclos FOR. Percursos em vetores. Resolução de Problemas. Objetos

Leia mais

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula1 - Introdução Programa Algoritmo Aula 2 - Variáveis Tipos de dados Identificadores Aula 3 - Programação

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Leonardo Gresta Paulino Murta leomurta@ic.uff.br Processo de resolução de problemas (Princípios de Pólya) Definição dos requisitos do problema (fazer o programa certo) Entradas

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

Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano

Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos

Leia mais

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701 www.decom.ufop.br/red AULA TEÓRICA 02 1 Prof. Marcelo Luiz Silva Red CONTEÚDOS DA AULA

Leia mais

Introdução ao MatLab Gráficos e manipulação de dados

Introdução ao MatLab Gráficos e manipulação de dados Análise de Sinais (500) Ficha Prática Laboratorial III Curso: Ciências Biomédicas Duração prevista: 2 horas Introdução ao MatLab Gráficos e manipulação de dados I. Introdução No decorrer deste laboratório

Leia mais

Informática para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2017 / 18

Informática para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2017 / 18 Informática para as Ciências e Engenharias Versão : C (Engenharia Civil) Pedro Barahona 2017 / 18 Sumário Instrução IF. Operadores relacionais e lógicos. Avaliação de conjunções e de disjunções. Matrizes.

Leia mais

Variáveis Tipos de Dados

Variáveis Tipos de Dados Variáveis Tipos de Dados APROG () Aula 2 1 Conteúdo Conceito de Variável Declaração de variáveis Tipos de Dados Operação de Atribuição Uso de Constantes 2 2 Variáveis Uma variável é uma localização de

Leia mais

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos Prof. Dr. Bruno Moreno bruno.moreno@ifrn.edu.br Introdução Um algoritmo pode ser definido como uma sequência finita de passos

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program 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 um programa.

Leia mais

Engenharia Civil. Introdução à Programação

Engenharia Civil. Introdução à Programação Engenharia Civil Introdução à Programação Retomada Computador: é uma máquina capaz de coletar, manipular e fornecer os resultados da manipulação de informações para um ou mais objetivos Hardware é a parte

Leia mais

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Primeiro computador a válvulas, o Eletronic Numeric Integrator And

Leia mais

Fundamentos de Programação Introdução

Fundamentos de Programação Introdução Fundamentos de Programação Introdução Arquitetura Genérica de um Computador Máquina de Von Neumann Diagrama conhecido como Máquina de Von Neumann (grande nome da informática) A finalidade de um computador

Leia mais

Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.

Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão. O uso do computador Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão. Exemplos: Modelos meteorológicos. Cálculo estrutural.

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof.

Leia mais

Para cada programa, por mais simples que seja, comece sempre por esboçar a solução desenhando um fluxograma.

Para cada programa, por mais simples que seja, comece sempre por esboçar a solução desenhando um fluxograma. Instruções de Repetição Objetivo A realização deste trabalho deverá permitir ao aluno a familiarização com a utilização de instruções de repetição em C. Para o efeito será proposto um conjunto de exercícios

Leia mais

Nome: Número: Computação e Programação Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas

Nome: Número: Computação e Programação Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas Nome: Número: Computação e Programação 2017-2018 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de Recurso 31 de janeiro de 2018 Exame

Leia mais

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À ORGANIZAÇÃO PARA ENGENHARIA DE COMPUTADORES. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À ORGANIZAÇÃO PARA ENGENHARIA DE COMPUTADORES. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2018-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dispositivos

Leia mais

Introdução à linguagem de programação C. Alexandre Mota

Introdução à linguagem de programação C. Alexandre Mota Introdução à linguagem de programação C Alexandre Mota acm@cin.ufpe.br Do código-fonte ao executável Nossa preocupação maior neste curso está com o código-fonte. Nossa carta de intenções para com o computador!

Leia mais

Desenho e Análise de Algoritmos CC /2018. Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção

Desenho e Análise de Algoritmos CC /2018. Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção Departamento de Ciência de Computadores FCUP Desenho e Análise de Algoritmos CC2001 2017/2018 Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção Descrição da linguagem

Leia mais

Modulo 4: while do while (limites de variáveis)

Modulo 4: while do while (limites de variáveis) PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 4: while do while (limites de variáveis) Aura - Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro Até aqui apreendemos as estruturas: If e If...else Switch

Leia mais

Introdução à Programação Aula 09. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 09. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 09 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação A linguagem C, como qualquer outra linguagem de programação, permite

Leia mais

à situação. à situação.

à situação. à situação. Unidade 1 Números naturais 1. Números naturais 2. Sistemas de numeração 3. Tabela simples Reconhecer os números naturais. Identificar o antecessor e o sucessor numa sequência de números naturais. Identificar

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características

Leia mais

Unidade 4: Introdução à Lógica de Programação - Parte II

Unidade 4: Introdução à Lógica de Programação - Parte II Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação

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

Conceitos Básicos Linguagem C

Conceitos Básicos Linguagem C Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo

Leia mais

Working 03 : Conceitos Básicos I

Working 03 : Conceitos Básicos I Working 03 : Conceitos Básicos I Objetivos: Dominar os conceitos básicos da linguagem de programação C; Aprender a utilizar o compilador, identificando os erros de sintaxe do código fonte; Prazo de Envio:

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes marinagomes@unipampa.edu.br 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1 Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores Aula - Tópico 1 1 Problema 1 Considere o seguinte problema: Determinar o valor de y = seno(1,5). 2 Definições Para

Leia mais

Estruturas de Decisão. APROG (Civil) Aula 6

Estruturas de Decisão. APROG (Civil) Aula 6 Estruturas de Decisão APROG () Aula 6 Conteúdo Estrutura If...Then Estrutura If...Then...Else 2 Conceito As Estruturas de Controlo servem para modificar o fluxo das instruções seguidas por um determinado

Leia mais

Minicurso de MATLAB. Programa de Educação Tutorial de Engenharia Elétrica 28/03/15. lmax Rodrigues. lcaroline Pereira.

Minicurso de MATLAB. Programa de Educação Tutorial de Engenharia Elétrica 28/03/15. lmax Rodrigues. lcaroline Pereira. Minicurso de MATLAB Programa de Educação Tutorial de Engenharia Elétrica lmax Rodrigues lcaroline Pereira lnayara Medeiros Ementa do Curso Primeiros Passos no MATLAB Vetores e Matrizes Resolução de sistemas

Leia mais

Java e sua Sintaxe. Estrutura mínima de um programa em Java: public class Exemplo { }

Java e sua Sintaxe. Estrutura mínima de um programa em Java: public class Exemplo { } Java e sua Sintaxe Java e sua Sintaxe Estrutura mínima de um programa em Java: public class Exemplo { } Como todo programa deve ter um início, convenciona-se que a primeira ação de um programa é a execução

Leia mais

SCS Sistemas de Controle / Servomecanismos. Aula 01 Introdução ao software MATLAB

SCS Sistemas de Controle / Servomecanismos. Aula 01 Introdução ao software MATLAB Aula 01 Introdução ao software MATLAB O MATLAB (Matrix Laboratory) é um ambiente de programação de alto desempenho voltado para a resolução de problemas expressos em notação matemática, projeto e simulação

Leia mais

Linguagem C Princípios Básicos (parte 1)

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

GEO742: Tópicos Especiais em Geologia Exploratória II Métodos semiquantitativos

GEO742: Tópicos Especiais em Geologia Exploratória II Métodos semiquantitativos Universidade Federal do Paraná Programa de Pós-Graduação em Geologia GEO742: Tópicos Especiais em Geologia Exploratória II Métodos semiquantitativos Saulo P. Oliveira Departmento de Matemática, Universidade

Leia mais

Representação da Informação no Computador

Representação da Informação no Computador Escola de Ciências e Tecnologia UFRN Representação da Informação no Computador Prof. Aquiles Burlamaqui Nélio Cacho Luiz Eduardo Eduardo Aranha ECT3 INFORMÁTICA FUNDAMENTAL Manter o telefone celular sempre

Leia mais

Nome: Número: Computação e Programação Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas

Nome: Número: Computação e Programação Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas Nome: Número: Computação e Programação 2017-2018 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de Recurso 31 de janeiro de 2018 Exame

Leia mais

Algoritmos e Estruturas de Dados I

Algoritmos e Estruturas de Dados I Algoritmos e Estruturas de Dados I Conceitos Básicos Profa. Márcia Cristina Moraes Profa.Milene Selbach Silveira Material para estudo: Forbellone, A. e Eberspächer, H. (2005) capítulos 1 e 2 (até atribuição)

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

Estrutura de Dados Conceitos Iniciais

Estrutura de Dados Conceitos Iniciais Engenharia de CONTROLE e AUTOMAÇÃO Estrutura de Dados Conceitos Iniciais Aula 01 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria

Leia mais

LISTA DE EXERCÍCIOS 01 INTRODUÇÃO À INFORMÁTICA

LISTA DE EXERCÍCIOS 01 INTRODUÇÃO À INFORMÁTICA Informática Aplicada 2009.2 Campus Angicos LISTA DE EXERCÍCIOS 01 Professor: Araken de Medeiros Santos INTRODUÇÃO À INFORMÁTICA 1. Cite alguns problemas que o uso de válvulas provocava nos computadores

Leia mais