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

3 Problema da Cerâmica Foram analisadas 50 amostras de argila de uma mina com o obje(vo de avaliar a sua qualidade para a indústria cerâmica. Um dos parâmetros estudados foi a absorção de água, tendose ob(do os seguintes valores (em percentagem): v 1, v 2,..., v 50. Faça um programa para calcular a média daqueles valores. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 3

4 Resolução Problema [1] 1. Compreender totalmente o problema descrito no enunciado. 2. Caracterizar o problema. Problema: Cálculo de uma média. Entrada: reais v 1,..., v 50. µ = v i i=1 v = [ v 1 v 2 v 3 v 50 ] Saída: a média de v 1,..., v Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 4

5 Resolução Problema [2] 3. Generalizar o problema (sempre que possível) Problema: Média de n valores. Entrada: reais v 1,..., v n (n > 1). µ = 1 n n v i i=1 v = [ v 1 v 2 v 3 v n ] Saída: a média de v 1,..., v n. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 5

6 Resolução Algoritmo[1] 4. Desenhar o algoritmo para resolver o problema. a) Conceber o algoritmo, decompondo o problema em subproblemas (se necessário). Como calcular a média de v 1,..., v n? «Somando os valores v 1,..., v n e dividindo pelo seu número. b) Iden(ficar, caracterizar e generalizar cada sub-problema. Não há sub-problemas. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 6

7 Resolução Algoritmo [2] c) Conceber o algoritmo, assumindo que os sub-problemas estão resolvidos. Média (v 1,..., v n ) : 1 n n i=1 v i Ideia base: implementa-se uma soma de n parcelas como uma sequência de n somas de duas parcelas, usando-se sempre o resultado anterior. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 7

8 Resolução Algoritmo [3] Cálculo do somatório Exemplo para n = 5: soma = 0 soma = soma + v1 soma = soma + v2 soma = soma + v3 soma = soma + v4 soma = soma + v5 n v i = v 1 + v v n i=1 % soma tem v1 % soma tem (v1) + v2 % soma tem (v1+v2) + v3 % soma tem (v1+v2+v3) + v4 % soma tem (v1+v2+v3+v4) + v5 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 8

9 Resolução Programa 5. Para cada sub-problema, desenhar o algoritmo para o resolver. Não há sub-problemas. 6. Para cada sub-problema (começando pelos mais simples), implementar o respe(vo algoritmo e testar o subprograma. Não há sub-problemas. 7. Implementar o algoritmo que resolve o problema e testar o programa pedido. Média (v1,..., vn) 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 9

10 Implementação Que questões? 1. Como é que se guarda um número (finito mas) arbitrário de valores (do mesmo (po)? No problema: os reais v 1,..., v n para qualquer n 2. Como é que se pode executar uma instrução um número arbitrário (mas finito) de vezes? No problema: a atribuição no cálculo de um somatório, para qualquer n. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 10

11 Sumário Vetores. Ciclos FOR. Percursos em vetores. Exemplos 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 11

12 Implementação Que questões? 1. Como é que se guarda um número arbitrário (mas finito) de valores (do mesmo (po)? No problema: os reais v 1,..., v n para qualquer n Resposta: Num vetor : [ v1 v2... vn ] Mais geral: como usar vetores em Matlab? 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 12

13 Vetores em Informá(ca Um vetor é uma estrutura de dados que guarda um número pré-definido de dados do mesmo (po. Um vetor corresponde a uma sequência de posições de memória. A sequência tem um comprimento fixo. Acede-se a uma posição do vetor através de um índice, que é um inteiro posi(vo (1, 2,..., comprimento ). V: Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 13

14 Vetores Criação V: Sintaxe: [ lista de valores ] Os valores na lista podem ser separados por vírgulas [-5, 18, 8, -3.5, -5, 0, 9]... ou por espaços [ ] Normalmente, o vetor é atribuído a uma variável quando é criado (o nome da variável é o nome do vetor) V = [ ] 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 14

15 Vetores Acesso a uma posição Os elementos do vetor podem ser acedidos individualmente Sintaxe: nomevetor( expressão ) O valor da expressão deve ser um inteiro posi(vo, inferior ou igual ao comprimento do vetor. A função length permite obter o comprimento de um vetor Exemplos: >> V = [-5, 18, 8, -3.5, -5, 0, 9]; >> V(3) ans = 8 >> length(v) ans = 7 >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 15

16 Vetores Acesso a uma posição Os acessos podem ser feitos não só para para leitura dos elementos de um vetor, mas também para atribuição de novos valores a esses elementos Exemplos: >> V = [-5, 18, 8, -3.5, -5, 0, 9] >> V(6) = >> p = 1; >> V(p+2) = V( length(v) ) % A posição 3 fica com >> V(p) = V(p+4)^2; % A posição 1 fica com 25. >> V(1) ans = 25 >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 16

17 Vetores Erros Típico de Acesso Quando o índice indicado não é um inteiro posi(vo, inferior ou igual ao comprimento do vetor, o interpretador reporta um erro. >> V(20) % indice maior que o comprimento??? error: A(I): index out of bounds; value 20 out of bound 7 >> V(-4) % indice negativo??? error: subscript indices must be either positive integers less than 2^31 or logicals >> V(sqrt(2)) % indice não inteiro??? error: subscript indices must be either positive integers less than 2^31 or logicals 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 17

18 Vetores Erros Típico de Acesso Em Matlab, apesar de não ser possível ler um elemento de uma posição de um vetor que não esteja definida, é possível fazer crescer um vetor e escrever um elemento numa posição ainda não definida. Em Matlab, são assim válidas as atribuições da forma: V(pos) = valor, com pos > length(v). 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 18

19 Matlab Escrita numa posição Dada uma atribuição V(pos) = valor (pos > length(v)) o Matlab 1. Cria um novo vetor com comprimento pos. 2. Copia os elementos de V para esse novo vetor, preservando as suas posições. 3. Escreve o valor na posição pos. 4. Escreve zero nas posições {length(v)+1,..., pos 1} do novo vetor. 5. O vetor V é destruído. 6. O novo vetor passa a chamar-se V. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 19

20 REGRA DE PROGRAMAÇÃO O código deve ser eficiente. Os vetores devem ser criados com o comprimento máximo necessário, para que não se escreva numa posição inexistente (o que obriga a refazer o vetor) Todas as exceções à regra anterior têm de ser muito bem jus(ficadas. Para esse efeito podem ser usadas funções predefinidas para a criação de vetores com o comprimento desejado. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 20

21 Vetores Funções de criação V = zeros(1, nºposições) V é um vetor com comprimento nºposições, com zero em todas as posições. V = ones(1, nºposições) V é um vetor com comprimento nºposições, com um em todas as posições. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 21

22 Sequências de números [1] Sequências de inteiros podem ser representadas de forma mais compacta: Exemplo: 2, 3, 4, 5 pode ser representada por: 2:5 Em Matlab, uma sequência é um vetor, e pode ser definida compactamente com a seguinte Sintaxe: primeiroelemento : úl(moelempossível; ou primeiroelemento : passo : úl(moelempossível O vetor é cons(tuido por todos os valores da série aritmé(ca, com razão igual ao passo começada pelo primeiroelemento e cujo úl(mo elemento não ultrapasse o úl(moelempossível. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 22

23 Sequências de números [1] Exemplos: >> 1:5 % caso mais comum com passo = 1 ans = >> 1:2:9 % passo maior que 1 ans = >> 1:1.5:7 % passo não inteiro (elementos não inteiros) ans = >> 1:2:6 % ultimo elemento não atinge o limite ans = >> 12:-2:6 % passo negativo ans = >> 12:-2:-3 % igual mas ultimo elemento não atinge o limite ans = >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 23

24 Vetores Acesso & criação Em Matlab, um sub-vetor pode ser ob(do de outro através de um terceiro vetor usado para indexar o anterior. Em par(cular, é muito comum usarem-se sequências para indexação de vetores Nota: O iden(ficador end representa até ao fim >> V = 11:2:24 % criacao de vetor V = >> V(3:5) % indexacao por vetor/sequencia ans = >> V(5:end) % indexacao por vetor/sequencia ans = >> I = [1,4,6]; X = V(I) % vetor de indices >> X = >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 24

25 Questão 1 1. Como é que se guarda um número (finito mas) arbitrário de valores (do mesmo (po)? No problema: os reais v 1,..., v n. Resposta: Os valores v 1,..., v n estão num vetor. A solução do problema será implementada pela função function res = media( valores )! em que o parâmetro valores receberá um vetor como argumento 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 25

26 Sumário Vetores. Ciclos FOR. Percursos em vetores. Exemplos 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 26

27 Implementação Que questões? 2. Como é que se pode executar uma instrução um número (finito mas) arbitrário de vezes? No problema: a atribuição no cálculo de um somatório. n v i = v 1 + v v n i=1 Ideia base: implementa-se uma soma de n parcelas como uma sequência de n somas de duas parcelas, usando-se sempre o resultado anterior. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 27

28 Implementação Que questões? soma = 0 n v i = v 1 + v v n i=1 soma = soma + v1 soma = soma + v2 soma = soma + v3 etc % soma tem v1 % soma tem (v1) + v2 % soma tem (v1+v2) + v3 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 28

29 Ciclo FOR Sintaxe: for variável = sequência... instruções end Operacionalmente: Se a variável não existe, é criada. Para cada elemento E da sequência (pela ordem por que os elementos ocorrem): 1. variável = E; 2. executam-se as instruções. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 29

30 Ciclo FOR Exemplo [1] Exemplos: >> V = [4 9 8, 2, 5] >> for i = 1:4 i end % mostra os indices i = 1 i = 2 i = 3 i = 4 >> for i = [1,4,2] V(i) end % mostra os valores de V ans = 4 ans = 2 ans = 9 >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 30

31 Ciclo FOR Exemplo [2] Exemplos: Cálculo de somas (e produtos) de vetores >> V = [4 9 8, 2, 5] >> soma = 0, for i = 1:3 soma = soma + V(i) end soma = 0 soma = 0 soma = 4 soma = soma + v1 % soma tem v1 soma = 13 soma = soma + v2 % soma tem (v1) + v2 soma = 21 soma = soma + v3 % soma tem (v1+v2) + v3 >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 31

32 Ciclo FOR Exemplo [2] Exemplos: Cálculo de somas (e produtos) de vetores >> V = [4 9 8, 2, 5] >> prod = 1, for i = 1:length(V) prod = prod * V(i) end prod = 1 prod = 1 prod = 4 prod = prod * v1 % prod tem v1 prod = 36 prod = prod * v2 % prod tem (v1) * v2 prod = 288 prod = prod * v3 % prod tem (v1*v2) * v3 prod = 576 etc prod = 2880 >> soma = 0; for i = 1:length(V) soma = soma + V(i); end >> soma soma = Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 32

33 Função Média Exemplo: Definição da função média function res = media( valores )! % res = media(valores)! % Calcula a media dos elementos do vetor valores.! end! soma = 0;! n = length(valores)! for i = 1 : n! end! soma = soma + valores(i);! res = soma / n;! 1 n n v i i=1 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 33

34 Função Média Geométrica Exemplo: Definição da função média geométrica function res = media_geometrica( valores )! % res = media(valores)! % Calcula a media geometrica dos elementos! % do vetor valores.! end! prod = 1;! n = length(valores)! for i = 1 : n! prod = prod * valores(i);! end! res = prod ^ (1/n);! n i=1 V(i) 1 n 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 34

35 % res = media(valores) Função Média % Calcula a media dos elementos do vetor valores. func(on res = media( valores ) end soma = 0; for i = 1 : length(valores) end soma = soma + valores(i); res = soma / length(valores); 1 n i valores(i) soma (antes) n 6 n v i i=1 soma (depois) 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 35

36 % res = media(valores) Função Média % Calcula a media dos elementos do vetor valores. func(on res = media( valores ) end soma = 0; for i = 1 : length(valores) end soma = soma + valores(i); res = soma / length(valores); i valores(i) soma (antes) soma (depois) n 6 1 n n v i i=1 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 36

37 % res = media(valores) Função Média % Calcula a media dos elementos do vetor valores. func(on res = media( valores ) end soma = 0; for i = 1 : length(valores) end soma = soma + valores(i); res = soma / length(valores); i valores(i) soma (antes) soma (depois) n 6 1 n n v i i=1 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 37

38 % res = media(valores) Função Média % Calcula a media dos elementos do vetor valores. func(on res = media( valores ) end soma = 0; for i = 1 : length(valores) end soma = soma + valores(i); res = soma / length(valores); i valores(i) soma (antes) soma (depois) n 6 1 n n v i i=1 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 38

39 % res = media(valores) Função Média % Calcula a media dos elementos do vetor valores. func(on res = media( valores ) end soma = 0; for i = 1 : length(valores) end soma = soma + valores(i); res = soma / length(valores); 1 n i valores(i) soma (antes) n v i i=1 soma (depois) n Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 39

40 Média Exemplos de execução Alguns exemplos de execução da função media O que acontece quando o vetor é vazio??? >> V = [4 9 8, 2, 5] >> m = media(v) m = 5.6 >> X = [4] X = 4 >> m = media(x) m = 4 >> Z = [] >> m = media(z) warning: division by zero m = NaN 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 40

41 Problema da Cerâmica (2) Em geral a média de um conjunto de valores não nos fornece toda a informação ú(l para descrever esse conjunto. Nomeadamente não nos dá ideia da variabilidade dos valores do conjunto A média de 0 e 10 é a mesma de 5 e 5, mas a úl(ma é equilibrada. Para medir a variação é vulgar u(lizar-se o desvio padrão, e portanto pode reformular-se o problema anterior para:... Faça um programa para calcular a média e o desvio padrão daqueles valores. 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 41

42 Problema da Cerâmica (2) Este problema mais complexo é naturalmente decomposto em dois subproblemas: Cálculo da média já feito Cálculo do desvio padrão a implementar tendo em conta a sua definição σ = Nota-se imediatamente que para este cálculo é conveniente dispor da média do vetor V, µ. n (V(i) µ) i=1 n 2 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 42

43 Problema da Cerâmica (2) Vamos pois resolver este problema com 3 funções com assinaturas function res = estatistica(v) function res = media (V)! function res = desviopadrao(v, med)! sendo a primeira função implementada a par(r das duas úl(mas. A função média já foi definida, pelo que podemos passar para a implementação do função desviopadrao, que é muito semelhante 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 43

44 Função Média Geométrica Exemplo: Definição da função desvio padrão function res = desviopadrao(v, med)! % res = desviopadrao(v, med)! % Calcula o desvio padrao de um vetor! % dada a sua media, med.! n num = 0;! n = length(v)! σ = for i = 1 : n! num = num +(V(i)-med)^2;! end! res = sqrt(num / n);! end! (V(i) µ) i=1 n 2 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 44

45 Problema da Cerâmica (2) FIM Uma vez implementadas as funções mais simples, a função esta}s(ca é implementada através da combinação das outras. function res = estatistica(v)! % [med,dvp] = estatistica(v, med)! % Calcula a media e o desvio padrao do vetor V! med = media(v);! dvp = desviopadrao(v,med)! end! res = [med,dvp]! De notar que o resultado desta função é um vetor, já que a função retorna dois valores (a média e o desvio padrão). 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 45

46 Sumário Vetores. Ciclos FOR. Percursos em vetores. Exemplos 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 46

47 Função Quadrado de um Vetor A função que calcula o quadrado de um vetor pode ser implementada percorrendo os seus elementos num ciclo FOR function U = quadrado(v)! % U = quadrado(v)! % U é o vetor como o quadrado dos elementos de V! n = length(v);!!u = zeros(1,n);! for i = 1:length(V)! U(i) = V(i)^2;! end! end! Nota: Para evitar a criação de n vetores U, o vetor deve ser inicializado com a função zeros (ou ones) 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 47

48 Média Exemplos de execução De notar que as variáveis n e U são locais e desaparecem após a execução da função. >> V = [4 9 8] >> quadrado(v) ans = >> U error: 'U' undefined near line 1 column 1 >> Q = quadrado(v) Q = >> V V = >> V = quadrado(v) V = function U = quadrado(v)! n = length(v);!!u = zeros(1,n);! for i = 1:length(V)! U(i) = V(i)^2;! end! end! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 48

49 Vetor Fibonacci Os elementos da série de Fibonacci 0, 1, 1, 2, 3, 5, 8,... são definidos como a soma dos 2 anteriores. Desta forma a construção de um vetor de Fibonacci com n elementos (n 2) pode ser construido a par(r da função function F = fibonaccivetor(n)! % F = fibonaccivetor(n)! % O vetor F contem os primeiros n elementos da! % série de Fibonacci! F = zeros(1,n)! F(2) = 1;! for i = 3:n! F(i) = F(i-2) + F(i-1);! end! end! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 49

50 Fibonacci Exemplos de execução >> Fn = fibonnacivetor(5) F = F = F = F = F = Fn = >> Fn Fn = >> F F = zeros(1,n)! F(2) = 1;! for i = 2:n! F(i) = F(i-2) + F(i-1);! end! error: F' undefined near line 1 column 1 >> 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 50

51 Vetor Fibonacci De notar que uma função semelhante calcular o n-ésimo elemento de Fibonacci sem necessitar do vetor. Mas neste caso, terão de ser usadas variáveis auxiliares que se vão actualizando ao longo do ciclo FOR (como as usadas nas prá(cas) function fn = fibonaccielem(n)! % F = fibonaccielem(n)! % fn é o n-esimo elementos da série de Fibonacci! fantant = 0! fant = 1! for i = 3:n! fn = fant+fantant! fantant = fant! fant = fn! end! end! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 51

52 Fibonacci Exemplos de execução >> f4 = fibonnacielem(4) fantant = 0! fant = 1! fn = 1 fantant = 1! fant = 1! fn = 2 fantant = 1! fant = 2! fn = 3 fantant = 2! fant = 3! f4 = 3! >> fn! fantant = 0! fant = 1! for i = 2:n! fn = fant+fantant! fantant = Fant! fant = fn! end! error: fn' undefined near line 1 column 1 >>!! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 52

53 Inversão de uma String Em Matlab, uma string é implementada através de um vetor de carateres, em que cada carater é representado pelo seu código (ASCII ou UTF). Apesar de haver várias funções pré-definidas para strings que serão abordadas mais à frente, podemos usar a matéria de ciclos FOR e vetores para inverter uma string (escrevê-la de trás para a frente ). Para esse efeito poderemos escrever como anteriormente uma função com assinatura function inv = inverter(str)! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 53

54 Inversão de uma String A sua implementação com um ciclo for é semelhnate à anterior Notar que a string inver(da é inicializada com a função blanks, semelhante às funções zeros e ones, mas que cria um vetor de caracteres espaço. function inv = inverte(str)! % inv = inverte(str)! % A string inv é a inversão da string str! n = length(str);! inv = blanks(n)! for i = 1:n! inv(i) = str(n-i+1) % indice complementar! end % 1<-n; 2<-n-1 ;... ; n<-1! end! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 54

55 Inversão de uma String Tal como anteriormente poderemos testar esta função (de uma forma não exaus(va)! >> inverte( abcd ) inv =! inv = d! inv = dc inv = dcb! inv = dcba! ans = dcba >> inv inv = blanks(n)! for i = 1:n! inv(i) = str(n-i+1)! end! error: inv' undefined near line 1 column 1 >> s = abcd >> s = inverte(s) s = dcba >>!! 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 55

56 Inversão de uma String De notar que a u(lização de indexação apropriada num vetor, neste caso numa string, permite inverter uma string numa só instrução, eleiminando-se a necessidade de usar uma função. >> str = abcd str = abcd >> n = length(str) n = 4 >> inv = str(n:-1:1)! inv = dcba >>!!!?!? 20 Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 56

57 Para Estudar a Aula de Hoje Recomendado Physical Modeling in MATLAB Capítulos 3 e 4 Opcional Manual do Octave Capítulo 4.1 Matrizes «Vetores são matrizes (matéria das próximas aulas) Capítulo 4.2 e Março 2017 ICE-c Aula 3: Vetores; ciclos FOR 57

Informática para Ciências e Engenharias (B) 2016/17. Teórica 3

Informática para Ciências e Engenharias (B) 2016/17. Teórica 3 Informática para Ciências e Engenharias (B) 2016/17 Teórica 3 Na aua de hoje Vetores. Cicos FOR. Percursos em vetores. Exempos 22 Março 2017 Vetores; cicos FOR 2 Probema dos Contaminantes Para avaiar a

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

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

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

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

Informática para Ciências e Engenharias (B) 2016/17. Teórica 4

Informática para Ciências e Engenharias (B) 2016/17. Teórica 4 Informática para Ciências e Engenharias (B) 2016/17 Teórica 4 Sumário Instrução IF. Operadores relacionais e lógicos. Avaliação de conjunções e de disjunções. Matrizes. Criação de matrizes. Relações entre

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

Informática para Ciências e Engenharias (B) 2015/16. Teórica 3

Informática para Ciências e Engenharias (B) 2015/16. Teórica 3 Informática para Ciências e Engenharias (B) 2015/16 Teórica 3 Na aua de hoje Cico for for end Vectores numéricos e strings sequências de números indexação de vectores Percursos em vectores Cico For Instrução

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

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

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

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

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

Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 5. Pedro Barahona 2016 / 17 Informá(ca para as Ciências e Engenharias Versão : C (Engenharia Civil) Aula 5 Pedro Barahona 2016 / 17 Sumário Ciclos WHILE. Introdução às redes de computadores e à Internet. Obtenção de dados da Internet

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

Prática 10 - Funções

Prática 10 - Funções Programação de Computadores I UFOP DECOM June 9, 2016 Prática 10 - Funções Abstract Nesta aula prática você vai aprender a definir e usar funções em um programa. Contents 1 Funções 1 1.1 Definição e chamada

Leia mais

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta? 23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas

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

Funções. Introdução à Computação para a Engenharia Ambiental

Funções. Introdução à Computação para a Engenharia Ambiental Funções Introdução à Computação para a Engenharia Ambiental Função Agrupa um conjunto de comandos e associa a ele um nome (iden>ficador). O emprego deste nome como um comando corresponde a uma chamada

Leia mais

Algoritmos e Programação. AULA 21: Recursividade UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CIÊNCIA DA COMPUTAÇÃO

Algoritmos e Programação. AULA 21: Recursividade UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CIÊNCIA DA COMPUTAÇÃO 1 Algoritmos e Programação AULA 21: Recursividade UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CIÊNCIA DA COMPUTAÇÃO 2 Recursividade A recursão é o processo pelo qual passa um

Leia mais

Subprogramação. Leonardo Gresta Paulino Murta.

Subprogramação. Leonardo Gresta Paulino Murta. Subprogramação Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aula de hoje Estudaremos duas estruturas de encapsulamento Procedimentos Funções Leonardo Murta Subprogramação 2 Retomando: paradigma estruturado

Leia mais

Problema 2 (1 valor) M = [50:2:248 ; 249:-2:51] Problema 3 (1 valor)

Problema 2 (1 valor) M = [50:2:248 ; 249:-2:51] Problema 3 (1 valor) Nome : Número : Computação e Programação 2015-2016 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de Recurso 27 de janeiro de 2015 Exame

Leia mais

Estruturas Indexadas Vetores e Matrizes

Estruturas Indexadas Vetores e Matrizes Estruturas Indexadas Vetores e Matrizes Profa Jacqueline 1 Estruturas Indexadas Vetores e Matrizes Objetivo: Estudar as estruturas de dados estáticas e homogêneas (vetores e matrizes); Estudar as operações

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 Normal 10 de janeiro de 2018 Exame sem

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 Normal 10 de janeiro de 2018 Exame sem

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

Aula 11: Modularização

Aula 11: Modularização Aula 11: Modularização Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Modularização Programação de Computadores IV 1 / 37 Agenda 1 Revisão e Contexto

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

VETORES Motivação AULA 19

VETORES Motivação AULA 19 AULA 19 VETORES 19.1 Motivação Considere o problema de calcular a média aritmética das notas de 5 alunos de uma disciplina e determinar e escrever o número de alunos que obtiveram nota superior à média

Leia mais

FUNÇÕES PARTE 2. Recordando Forma geral: r1, r2,...: lista de argumentos de SAÍDA (retorno) arg1, arg2,...: lista de argumentos de ENTRADA

FUNÇÕES PARTE 2. Recordando Forma geral: r1, r2,...: lista de argumentos de SAÍDA (retorno) arg1, arg2,...: lista de argumentos de ENTRADA Recordando Forma geral: FUNÇÕES PARTE 2 funcfon [r1, r2,...] = nome_fç (arg1, arg2,...) % comentários... Código r1, r2,...: lista de argumentos de SAÍDA (retorno) arg1, arg2,...: lista de argumentos de

Leia mais

Computação e Programação. Exame Época Normal

Computação e Programação. Exame Época Normal Nome : Número : Computação e Programação 2015-2016 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época Normal 6 de janeiro de 2016 Exame sem

Leia mais

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução Métodos de Programação I 2. 20 2.2.8 ESTRUTURAS DE CONTROLO Estruturas de controlo são instruções especiais em Pascal que permitem controlar o fluxo de sequência de instruções, alterando a ordem sequencial

Leia mais

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho Gilson de Souza Carvalho gaucho.gilson@hotmail.com 4.3 Comandos de repetição encadeados Apesar de seguir o mesmo padrão de encadeamento de outros comandos já vistos, a utilização de comandos de repetição

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

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática Programação 1 Prof. Osório Aula 09 Pag.: 1 UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática PROGRAMAÇÃO I AULA 09 Disciplina: Linguagem

Leia mais

Programação em MATLAB

Programação em MATLAB Programação em MATLAB Estruturas de Repetição Ciclo WHILE As instruções BREAK e RETURN A função ERROR Vectorização Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Estruturas de repetição

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

12 - Dados Estruturados Vetores, Matrizes e Strings

12 - Dados Estruturados Vetores, Matrizes e Strings 12 - Dados Estruturados Vetores, Matrizes e Strings Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro Ministrado por: Prof. André Amarante Vetores,

Leia mais

LINGUAGEM C: ARRAY: VETORES E MATRIZES

LINGUAGEM C: ARRAY: VETORES E MATRIZES LINGUAGEM C: ARRAY: VETORES E MATRIZES Prof. André Backes POR QUE USAR ARRAY? As variáveis declaradas até agora são capazes de armazenar um único valor por vez. Sempre que tentamos armazenar um novo valor

Leia mais

Introdução aos algoritmos computacionais

Introdução aos algoritmos computacionais CAPíTULO 1 Introdução aos algoritmos computacionais é um procedimento que descreve, sem ambiguidade, uma sequência nita de passos a serem seguidos em uma ordem especíca para resolver um problema ou aproximar

Leia mais

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

Pedro Vasconcelos DCC/FCUP. Programação Funcional 8 a Aula Listas infinitas Programação Funcional 8 a Aula Listas infinitas Pedro Vasconcelos DCC/FCUP 2014 Listas infinitas Podemos usar listas para sequências finitas, por ex.: [1,2,3,4] = 1:2:3:4:[] Nesta aula vamos ver que podemos

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

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos

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

Informática para Ciências e Engenharias (B) 2016/17. Teórica 5

Informática para Ciências e Engenharias (B) 2016/17. Teórica 5 Informática para Ciências e Engenharias (B) 2016/17 Teórica 5 Sumário Ciclos WHILE. Introdução às redes de computadores e à Internet. Obtenção de dados da Internet usando Matlab. Strings Relação com os

Leia mais

Paradigmas de Programação

Paradigmas de Programação Paradigmas de Programação Fabrício Olivetti de França 14 de Junho de 2018 1 λ-cálculo 2 Computabilidade Computabilidade é uma área de estudo central da Ciência da Computação. Ela estuda a possibilidade

Leia mais

Informática para Ciências e Engenharias - 2º semestre 2016/2017

Informática para Ciências e Engenharias - 2º semestre 2016/2017 Informática para Ciências e Engenharias - 2º semestre 2016/2017 2º Teste, 5 de Junho de 2016, 1h:45m versão B ICE: ; Nome: ; Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade

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

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 7 Vetores Profa. Marina Gomes marinagomes@unipampa.edu.br 19/05/2017 Engenharia de Computação - Unipampa 1 Motivação Problema: Leia as notas de uma turma de cinco estudantes

Leia mais

Métodos de Programação I Ana Maria de Almeida

Métodos de Programação I Ana Maria de Almeida Métodos de Programação I 2. 35 2.10 O TIPO ESTRUTURADO TABELA (ARRAY) A estruturação de informação introduz uma nova dimensão no poder e complexidade dos nossos programas que, ao mesmo tempo que amplia

Leia mais

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016 MC102 Aula 26 Recursão Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Indução 2 Recursão 3 Fatorial 4 O que acontece na memória 5 Recursão Iteração 6 Soma em um Vetor 7 Números

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

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 2014-2015 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de Recurso 28 de janeiro de 2015 Exame

Leia mais

Informática para Ciências e Engenharias - 2º semestre 2016/2017

Informática para Ciências e Engenharias - 2º semestre 2016/2017 Informática para Ciências e Engenharias - 2º semestre 2016/2017 2º Teste, 5 de Junho de 2016, 1h:45m versão A ICE: ; Nome: ; Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade

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

ALGORITMOS E APLICAÇÕES. FATEC IPIRANGA ADS Noturno 1º semestre de 2012 Prof. Luiz Carlos de Jesus Junior

ALGORITMOS E APLICAÇÕES. FATEC IPIRANGA ADS Noturno 1º semestre de 2012 Prof. Luiz Carlos de Jesus Junior ALGORITMOS E APLICAÇÕES FATEC IPIRANGA ADS Noturno 1º semestre de 2012 Prof. Luiz Carlos de Jesus Junior Formato Básico do Pseudocódigo Tipos de dados O VisuAlg prevê quatro tipos de dados: inteiro, real,

Leia mais

Aula prática 5. Funções Recursivas

Aula prática 5. Funções Recursivas Programação Funcional UFOP DECOM 2014.1 Aula prática 5 Funções Recursivas Resumo Definições recursivas são comuns na programação funcional. Nesta aula vamos aprender a definir funções recursivas. Sumário

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

Informática para Ciências e Engenharias - 2º semestre 2017/2018

Informática para Ciências e Engenharias - 2º semestre 2017/2018 Informática para Ciências e Engenharias - 2º semestre 2017/2018 2º Teste, 6 de Junho de 2018, 1h:45m versão A ICE: ; Nome: ; Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade

Leia mais

2. Complexidade de Algoritmos

2. Complexidade de Algoritmos Introdução à Computação II 5952011 2. Complexidade de Algoritmos Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 2.1. Introdução 2.1.1. Revisão de Pseudo-Código 2.1.2.

Leia mais

Programação em Matlab. Apenas Âmbito e Erros de programação

Programação em Matlab. Apenas Âmbito e Erros de programação Programação em Matlab Apenas Âmbito e Erros de programação Âmbito O âmbito de um identificador é o conjunto das regiões de código dentro das quais esse identificador pode ser usado. Uma variável definida

Leia mais

Estruturas de Dados em Python

Estruturas de Dados em Python Estruturas de Dados em Python Carlos Camarão de Março de 7 Introdução Na segunda parte do curso vamos aprender a programar com estruturas (ou coleções) de dados, em Python. Python é uma linguagem orientada

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

Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas

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

Leia mais

Introdução ao MatLab Princípios de Programação

Introdução ao MatLab Princípios de Programação Análise de Sinais (5001) Ficha Prática Laboratorial II Curso: Ciências Biomédicas Duração prevista: 4 horas Introdução ao MatLab Princípios de Programação I. Introdução O trabalho realizado na última ficha

Leia mais

1.a) Qual a diferença entre uma linguagem de programação de alto nível e uma linguagem de programação de baixo nível?

1.a) Qual a diferença entre uma linguagem de programação de alto nível e uma linguagem de programação de baixo nível? P1 Conceitos (2,4 valores) 1.a) Qual a diferença entre uma linguagem de programação de alto nível e uma linguagem de programação de baixo nível? (0.8v) 1.b) Indique três vantagens de criar um programa

Leia mais

Lista de exercícios sobre contagem de operações Prof. João B. Oliveira

Lista de exercícios sobre contagem de operações Prof. João B. Oliveira Lista de exercícios sobre contagem de operações Prof. João B. Oliveira 1. metodo m ( Vetor V ) int i, res = 0; para i de 1 a V.size res = res + V[i]; return res; Soma de elementos de um vetor, O( ). 2.

Leia mais

Exercícios: Recursão

Exercícios: Recursão Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Recursão 1. Faça uma função recursiva que calcule e retorne o fatorial

Leia mais

É interessante comparar algoritmos para valores grandes de n. Para valores pequenos de n, mesmo um algoritmo ineficiente não custa muito para ser

É interessante comparar algoritmos para valores grandes de n. Para valores pequenos de n, mesmo um algoritmo ineficiente não custa muito para ser É interessante comparar algoritmos para valores grandes de n. Para valores pequenos de n, mesmo um algoritmo ineficiente não custa muito para ser executado 1 Fazendo estimativas e simplificações... O número

Leia mais

INE Fundamentos de Matemática Discreta para a Computação

INE Fundamentos de Matemática Discreta para a Computação INE5403 - Fundamentos de Matemática Discreta para a Computação ) Fundamentos.1) Conjuntos e Sub-conjuntos.) Números Inteiros.3) Funções.4) Seqüências e Somas.5) Crescimento de Funções Seqüências Uma seqüência

Leia mais

Fixação de conteúdo teórico

Fixação de conteúdo teórico BCC701 Programação de Computadores (2019-01) Universidade Federal de Ouro Preto - MG Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 [Aula 12] Estruturas de Repetição (prática 2) Fixaçã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

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26 AULA 26 MATRIZES - PARTE 2 26. Mais exemplos Nesta aula, veremos mais dois algoritmos envolvendo matrizes. O primeiro deles calcula a matriz resultante da multiplicação de duas matrizes e utiliza três

Leia mais

Informática para Ciências e Engenharias - 2º semestre 2017/2018

Informática para Ciências e Engenharias - 2º semestre 2017/2018 Informática para Ciências e Engenharias - 2º semestre 2017/2018 2º Teste, 6 de Junho de 2018, 1h:45m versão B ICE: ; Nome: ; Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade

Leia mais

Informática para Ciências e Engenharias (B) 2015/16. Teórica 9

Informática para Ciências e Engenharias (B) 2015/16. Teórica 9 Informática para Ciências e Engenharias (B) 2015/16 Teórica 9 Na aua de hoje Estruturas e vectores de estruturas. Cácuo da massa moecuar Cácuo da fracção de um resíduo em sequências de proteínas Estruturas

Leia mais

Informática para as Ciências e Engenharias - 2º semestre 2016/2017

Informática para as Ciências e Engenharias - 2º semestre 2016/2017 Informática para as Ciências e Engenharias - 2º semestre 2016/2017 1º Teste, 29 de Abril de 2017, 1h45m versão A ICE: Nome: Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade do

Leia mais

Interpolação polinomial

Interpolação polinomial Quarto roteiro de exercícios no Scilab Cálculo Numérico Rodrigo Fresneda 8 de abril de 0 Guia para respostas: Entregue suas respostas às tarefas contidas no roteiro de cada uma das quatro atividades, incluindo

Leia mais

Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função.

Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função. Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função. Funções e estruturas básicas 1. Faça uma função que recebe a idade de uma

Leia mais

CCM0128 Computação II

CCM0128 Computação II CCM0128 Computação II Departamento de Ciência da Computação IME-USP Curso de Ciências Moleculares Turma 22 Primeiro Semestre de 2013 Primeiro Exercício-Programa Data de entrega: até 2 de abril de 2013.

Leia mais

Variáveis, Tipos de Dados e Operadores

Variáveis, Tipos de Dados e Operadores ! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória

Leia mais

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 3 (12/08/15) Saídas Entradas Operadores Atribuição Aritméticos Expressões Aritméticas Saída Permite

Leia mais

Vetores, Matrizes e Gráficos

Vetores, Matrizes e Gráficos Programação de Computadores I UFOP DECOM 2013 2 Aula prática 3 Vetores, Matrizes e Gráficos Resumo Nesta aula você irá utilizar vetores para resolver diversos tipos de problemas. Para expressar a solução

Leia mais

Informática para as Ciências e Engenharias - 2º semestre 2016/2017

Informática para as Ciências e Engenharias - 2º semestre 2016/2017 Informática para as Ciências e Engenharias - 2º semestre 2016/2017 1º Teste, 29 de Abril de 2017, 1h45m versão B ICE: Nome: Nº Avisos: Sem consulta; a interpretação do enunciado é da responsabilidade do

Leia mais

Universidade de São Paulo

Universidade de São Paulo Universidade de São Paulo Instituto de Ciências Matemáticas e Computação SCE5763 - Tipos e Estrutura de Dados - Luis Gustavo Nonato 2 a Lista de Exercícios 1. Seja A um array de inteiros. Escreva algoritmos

Leia mais

Computação e Programação Exame Resolvido 1ª Época

Computação e Programação Exame Resolvido 1ª Época Computação e Programação 2012-2013 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Resolvido 1ª Época 9 de janeiro de 2012 Exame sem consulta

Leia mais

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

RESOLUÇÃO. Computação e Programação (2009/2010-1º Semestre) 1º Teste (11/11/2009) Nome. Número. Leia com atenção os pontos que se seguem:

RESOLUÇÃO. Computação e Programação (2009/2010-1º Semestre) 1º Teste (11/11/2009) Nome. Número. Leia com atenção os pontos que se seguem: Computação e Programação (2009/2010-1º Semestre) 1º Teste MEMec - LEAN (11/11/2009) DURAÇÃO: 1h30m RESOLUÇÃO Leia com atenção os pontos que se seguem: Comece por escrever o seu nome e número nesta folha,

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

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

Aula 10: Introdução a Vetores e Matrizes

Aula 10: Introdução a Vetores e Matrizes Aula 10: Introdução a Vetores e Matrizes Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Vetores e Matrizes Programação de Computadores IV 1 / 50 Agenda

Leia mais

Aula 02. Algoritmos e Pseudocódigo

Aula 02. Algoritmos e Pseudocódigo Aula 02 Algoritmos e Pseudocódigo Tópicos Principais Definição de Algoritmo Formas de representação Condicionais Repetições Definição de Algoritmo Um algoritmo é uma sequência de ações que resolve um problema.

Leia mais

Informática para Ciências e Engenharias (C) Trabalho Prático /18

Informática para Ciências e Engenharias (C) Trabalho Prático /18 Informática para Ciências e Engenharias (C) Trabalho Prático - 2017/18 1. Contexto O módulo de Young ou módulo de elasticidade é um parâmetro mecânico que proporciona uma medida da rigidez de um material

Leia mais

Recursividade. Prof. Jesus José de Oliveira Neto

Recursividade. Prof. Jesus José de Oliveira Neto Recursividade Prof. Jesus José de Oliveira Neto Algoritmos podem ser definidos de duas formas: Forma iterativa ou não recursiva: utiliza laços de repetição (while, for, do/while) Forma recursiva: métodos

Leia mais