Departamento de Informática Universidade Federal do Espírito Santo

Slides:



Advertisements
Apresentações semelhantes
Prof. José Junior Barreto TEORIA DOS DETERMINANTES
Advertisements

Departamento de Informática Universidade Federal do Espírito Santo
Introdução à Programação: uma Abordagem Funcional
Introdução à Programação: uma Abordagem Funcional
Departamento de Informática Universidade Federal do Espírito Santo
Introdução à Programação: uma Abordagem Funcional Programação I Eng. de Computação Prof.ª Claudia Boeres e Prof. Estefhan Dazzi 2010/1.
Departamento de Informática Universidade Federal do Espírito Santo
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Introdução à Programação: uma Abordagem Funcional Programação I Engenharia de Computação Prof.ª Claudia Boeres e Prof. Estefhan Dazzi Wandekoken 2010/1.
Departamento de Informática Universidade Federal do Espírito Santo
A = ( 3 ) , logo | A | = 3 Determinantes
UNIVERSIDADE FEDERAL DE UBERLÂNDIA ENGENHARIA CIVIL INTRODUÇÃO À ALGORITMOS Professora: Fabíola Gonçalves.
INTRODUÇÃO AO ESTUDO DAS MATRIZES
M atrizes C olégio P laneta G oiânia, A gosto d e 2011.
CENTRO EDUCACIONAL NOSSA SENHORA AUXILIADORA
Amintas engenharia.
Matrizes especiais Matriz linha Matriz do tipo 1 x n, ou seja, com uma única linha. Por exemplo, a matriz A =[ ], do tipo 1 x 4. Matriz coluna.
Introdução à Programação: uma Abordagem Funcional PD I – Engenharia Elétrica Prof.ª Claudia Boeres 2008/2.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 32 Departamento de Informática Centro.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Álgebra Linear e Geometria Analítica
Introdução aos Computadores e à Programação DI-FCT-UNL-2005/2006 Variáveis, matrizes e séries 2.1 Octave Variáveis, Matrizes e Séries.
Introdução aos Computadores e Programação DI-FCT-UNL-2003/2004 Variáveis, matrizes e séries 2.1 Octave Variáveis, Matrizes e Séries.
Octave Variáveis, Matrizes e Séries
Determinantes.
Sistemas lineares.
Determinantes Determinante é um número real associado a uma matriz quadrada. Notação: det A ou |A|. Determinante de uma Matriz Quadrada de 1ª Ordem. Seja.
Dados dois números m e n naturais e não nulos, chama-se matriz m por n ( indica-se m x n) toda tabela M formada por números reais distribuídos em m linhas.
Análise de regressão linear simples: abordagem matricial
BCC101 – Matemática Discreta
Iniciação ao MatLab Profa Dra. Rossana Lott Rodrigues
A Teoria dos Determinantes
THOBER CORADI DETOFENO, MSC. Aula 07
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Determinantes SilvanaWBenvenutti Turma:301
Amintas engenharia.
Determinantes.
MATEMÁTICA UNIDADE 2 Conteúdo: Matrizes Duração: 10 40’ 04/04/13
PROPRIEDADES DOS DETERMINANTES
Matriz Conceitos Básicos.
Linguagem Haskell Riocemar S. de Santana.
Matrizes DEFINIÇÃO K corpo p,q números naturais
MATRIZES.
Aula 02 Variáveis, Matrizes, Gráficos
CADEIA DE CARACTERES (Strings)
MATRIZES.
Modularização de um programa em C
Listas: Haskell x Prolog
Programação Funcional
Programação Funcional
Revisão do conceito de matrizes
Instituto de Aplicação Fernando Rodrigues da Silveira (CAp/UERJ)
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery.
Geometria analítica e álgebra linear
Campus de Caraguatatuba
BCC 101 – Matemática Discreta I
Matrizes Colégio Sagrada Familia Campo Largo, Outubro de 2014.
Programação Funcional
Algoritmos e Estruturas de Dados I – Estruturas de Dados
Haskell Programação Funcional Diego Lima Rubem Moreira.
Matrizes Definição Uma matriz.
©Prof. Lineu MialaretAula 4 - 1/27Matemática Discreta I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba.
Prof. Guilherme Alexandre Monteiro Reinaldo Recife
Haskell (é uma função polimorfica) Laboratório Rafael Borges
MATEMÁTICA MATRIZES - 3º ANO PROFESSOR: ALEXSANDRO DE SOUSA E.E. Dona Antônia Valadares
MATRIZES É uma tabela disposta em “m” linhas e “n” colunas. Prof. Tutor Fernando Senna.
Exercícios Crie um algoritmo que leia uma matriz 5x5. Em seguida, conte quantos números pares existem na matriz. Crie um algoritmo que leia uma matriz.
Transcrição da apresentação:

Departamento de Informática Universidade Federal do Espírito Santo Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres boeres@inf.ufes.br CT VII - Sala 34 Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Theme created by Sakari Koivunen and Henrik Omma Released under the LGPL license. 1

Discutindo eficiência... Problema: Dada uma lista, verifique se ela é não decrescente. Versão 1: lms1 xs = [ xs!!i | i ← [0..length xs – 2], j ← [i+1..length xs – 1], xs!!i > xs!!j] ord xs = (lms1 xs) == [ ] Versão 2: lms2 xs = [ xs!!i | i ← [0..length xs – 2], xs!!i > xs!!(i+1)] ord xs = (lms2 xs) == [ ] Versão 3: adjacentes xs = zip (init xs) (tail xs) lms3 xs = [(x,y) | (x,y) ← xs, x > y] ord xs = (lms3 (adjacentes xs)) == [ ] função zip: recebe duas listas como entrada e cria a lista dos pares de elementos de cada posição correspondente nas listas de entrada. Exemplo: zip “teste” [1..10] → [('t',1),('e',2),('s',3),('t',4),('e',5)]

Usando Módulos Um módulo em Haskell é uma coleção de funções relacionadas, tipos e classes de tipos. Um script em Haskell pode utilizar uma coleção de modulos. A biblioteca padrão do Haskell é dividida em módulos: de funções básicas (Prelude) para funções que envolvem caracteres (data.Char) listas (Data.List) entre outros...

Exemplo Problema: Dada uma letra minúscula, convertê-la para maiúscula. converte x = chr (ord x - 32) Avaliação: HUGS> converte 'a' ERROR - Undefined variable "ord" As funções chr e ord não estão em Prelude

a) Carrega o módulo diretamente pelo HUGS usando Usando módulos... De duas formas: a) Carrega o módulo diretamente pelo HUGS usando :load <nome do módulo> Para desabilitar :load b) usa o comando import dentro do seu script da seguinte forma: import <nome do módulo>

Módulos em Haskell http://www.haskell.org/ghc/docs/6.4.1/ht ml/libraries/

Matrizes Listas de listas que representam as linhas da matriz mat = [[10, 31, 45], [41, 21, 30], [15, 20, 50]] mat (i,j) → mat!!i!!j linha i → mat!!i coluna j → [mat!!i!!j | i ← [0..n] ] linha coluna

Exercícios Considere uma matriz quadrada de dimensões nxn: defina a transposta da matriz defina uma lista com os elementos da diagonal principal da matriz calcule o número de elementos não nulos de uma matriz, por linha da matriz verifique se a matriz é diagonal verifique se é triangular superior (todas as entradas da matriz abaixo da diagonal devem ser nulas)

Recursão ‑ Recursão é uma maneira de definir funções na qual uma chamada a própria função sendo definida é utilizada na sua descrição. - Exemplos: - fatorial de um número: O fatorial de um número natural n > 0 é igual ao produto de todos os números naturais de 1 até n. - sequência de Fibonacci, ...

Exeplo

Exercícios 1) somatório dos elementos de uma lista 2) o maior valor de uma lista