Trabalho 2: Apredizagem em perceptrões multicamada. Discentes: Ricardo Seromenho a23842 Rui Dias a24254

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

Download "Trabalho 2: Apredizagem em perceptrões multicamada. Discentes: Ricardo Seromenho a23842 Rui Dias a24254"

Transcrição

1 Universidade do Algarve Faculdade de Ciências e Tecnologia Departamento de Engª Electrónica e Informática Inteligência Artificial (2005/2006 2º Semestre) Trabalho 2: Apredizagem em perceptrões multicamada Discentes: Ricardo Seromenho a23842 Rui Dias a

2 Índice Introdução... 3 Modelo do perceptrão... 4 Classe Perceptrão variáveis... 4 Classe Perceptrão métodos... 5 Modelo da camada... 6 Classe Camada variáveis... 6 Classe Camada métodos... 7 Modelo da Rede... 9 Classe Rede variáveis... 9 Classe Rede métodos Apresentação de resultados A melhor topologia Manual do utilizador Conclusão Referências Anexo Anexo

3 Introdução Com este trabalho pretende se implementar um perceptrão multicamada, com aprendizagem por retropopagação de erro e com um número de entradas, saídas, camadas e de neurónios a definir pelo utilizador. Neste trabalho específico, cada padrão, é um vector com 9 valores inteiros que corresponde ao caracter a ser classificado. A camada de entrada tem como entrada cada padrão (ver anexo 1), e a camada de saída tem 4 valores. Onde a activação de cada valor corresponde a um caracter codificado internamente (ver anexo 2). Outro dos objectivos do trabalho prático é com o treino da rede, construir um classificador. Classificador esse que não seja apenas capaz de reconhecer padrões utilizados, durante o treino da rede, mas que seja também capaz de generalizar, ou seja, reconhecer entradas com ruído. 3

4 Modelo do perceptrão O perceptrão recebe como entrada um vector de dimensão N, produzindo um valor de saída. Este valor é obtido através da função de custo (f(si)) sobre o somatório dos valores da entrada multiplicado por cada peso dessa entrada. Classe Perceptrão variáveis public double []weight; Array que corresponde aos pesos das entradas no neurónio. Este array terá tantos pesos, quantas as entradas da camada mais um. Este mais um peso, é o peso do thresholder que é guardado na última posição do array. public double []deltas; Array que vai guardar o delta de cada peso. Cada posição neste array corresponde ao delta do peso, na mesma posição do array dos pesos. public double eta = 0.001; Valor do eta a utilizar na actualização dos pesos 4

5 Classe Perceptrão métodos public void InitWeight(int n_entradas) Inicia os pesos dos neurónios aleatóriamente no intervalo de [ 0.5, 0.5], e inicia também o array dos deltas. Os deltas são iniciados a zero. O método recebe como entrada a dimensão do array dos pesos para este neurónio., ou seja, o número total de entradas da camada a que o neuório pertence, ao que depois se acrescente uma unidade para guardar o peso do thresholder. public Perceptrao CreateNewPerceptrao(int n_entradas) Cria um perceptrão novo. Recebe o número de entradas da camada a que o neurónio pertence, pois este método depois invoca o método initweight. Este método retorna o novo perceptrão criado. public void calculadeltas(double []in, double gradiente, int thresholder) Calcula e actualiza os deltas dos pesos do neurónio de acordo com a fórmula: w = entrada * erro gradiente Onde, a entrada é o valor da entrada que entra no caminho que tem o pesso correspondente, e o erro gradiente, é o erro gradiente do neurónio. public void limpadeltas() Depois de uma iteracção, é necessário limpar os valores dos deltas. Este método coloca os valores dos deltas do neurónio a zero. public void actualizapesos() Actualizar os pesos do neurónio, segundo: o valor do peso novo é igual ao valor do peso antigo somado com a multiplicação do valor do eta pelo delta delta desse peso. w_novo = w_antigo + (eta * Delta w) public int numeropesos() Conta e retorna o número de pesos que um neurónio tem. O programa foi desenvolvido em JAVA, devido a ser uma linguagem orientada a objectos, sendo por isso no nosso ver, mais simples de resolver o problema. 5

6 Modelo da camada A nossa rede neuronal é uma rede de feed forward, em que cada neurónio de uma camada está ligado a todos os neurónios da camada seguinte. O que nos levou a concluir que o número de entradas da camada de entrada é o número de entradas do padrão, e o número de entradas das camadas seguinte corresponde ao número de saídas da camada anterior. Classe Camada variáveis // Array que guarda os neurónios que constituem a camada private Perceptrao []neuronios; Array de perceptrões que vão contituir a camada. public double []erro_gradiente; Array que guarda o erro gradiente de cada neurónio. O indice de cada erro deste array é o mesmo indice do array dos perceptrões da camada. public double []in; Uma vez que, e como já foi dito acima, cada neurónio da camada está ligado a todos os neurónios da camaada seguinte, então todos os neurónios vão ter as mesmas entradas. Por isso podemos guardar as entradas em camada em vez de guardar em cada perceptrão. public double []out; Array que guarda as saídas da camada. Este array tem tantas posições como o número de neurónios que a camada tem. public int thresholder = 1; Valor do thresholder. Pode ser outro valor, mas optámos por 1. 6

7 Classe Camada métodos public void InitEntradas(int []entradas ) Inicia as entradas da camada de entrada. Recebe um array de inteiros, que corresponde ao array das entradas do padrão que entra na rede. public void InitEntradas(double[]out ) Inicia as entradas das camadas escondidas e da camada de saída. O parâmetro deste método é um array de doubles, que corresponde ao array das saídas da camada anterior à que está a ser inicializada o array. O que este método faz, é igualar cada posição da instância []in desta camada a cada posição da instância []out da camada anterior. public Camada NewCamada(int numero_neuronios,int n_entradas) Este método é como se fosse um construtor da classe camada. Faz o que um construtor faz, cria a camada com o numero de neurónios iagual ao parâmetro numero_neuronios, e inicializa o tamanho do array das entradas da camada. Este método devolve a camada criada. public void somatorio () Preenche o array das saídas da camada. Em cada posição do array coloca no indice correspondente ao índice do neurónio o valor da saída de um. Esse valor é a tangente hiperbólica do somatório da multiplicação dos pesos pelas entradas. public void calculaerrogradiente(double[] erros) Como a fórmula do erro gradiente é diferente da camada de saída e das restantes camadas. Existem dois métodos para calcular o erro gradiente. Este calcula os erros gradientes para a camada de saída. A fórmula para calcular o erro gradiente é: Erro gradiente(i) = ( 1 yi 2 ) * erro(i) Aonde i é a posição do neurónio ao qual está a ser calculado o erro gradiente. public void calculaerrogradiente(camada x){ Calcular os erros gradientes dos neurónios das camadas escondidas e camada de entrada. 7

8 Tem como parâmetro dde entrada a camada a seguir à qual se está a calcular os erros gradientes. Pois a fórmula é: Erro gradiente = ( 1 yi 2 ) * ( erro gradiente(k) * w(k) ) Ou seja, o erro gradiente de um neurónio que esteja numa camada escondida ou na camada de entrada é igual a 1 a saída desse neurónio ao quadrado, vezes o somatório do erro gradiente pelo peso das ligações que esse neurónio tem com os neurónios da camada seguinte. public void calculadeltas() Calcular os deltas da camada. Este método chama o método de calcular os deltas do perceptrão. Ou seja, para cada perceptrão, vão ser calculados os seus deltas. public void limpadeltas() Após cada iteracção é necessário reiniciar os deltas a zero. Este método reinicializa os deltas de uma camda a zero. Para isso, em cada perceptrão, chama o método de limpadeltas. public void actualizapesos() Actualiza os pesos da camada. Como os pesos estão na classe do perceptrão, para cada neurónio da camada é chamado o método de actualizapesos. public int numeropesos() Conta e retorna o número de pesos da camada. 8

9 Modelo da Rede O modelo da nossa rede é o do tipo da que é pedida no trabalho prático que é uma rede de perceptrões multimcamada. Classe Rede variáveis public Camada []camadas; Uma rede multicamada é constiuída por um conjunto de camadas. Assim sendo esta instância da classe rede é exactamente isso: o conjunto de camadas da rede. public int N = 0; Número de padrões do conjunto de treino. Inicado a zero, e posteriormente colocado no seu valor correcto. public int n_camadas = 0; Número de camadas da rede. public double []erros; Array dos erros de cada saída da rede. Cada valor deste array corresponde ao erro produzido na camada de saída pelo nurónio que está no mesmo índice na camada. public double erro_global = 500; Erro global da rede. Calculado pela fórmula que está no enunciado do trabalho prático. É iniciado num valor maior que para que se posso entrar no ciclo da retropopagação. public int [][] desejado Está explicada no anexo 2. 9

10 Classe Rede métodos public Rede(ReadTopologia reader,int n_entradas) throws IOException tem. Construtor da classe. Recebe a topologia da rede e o número de entradas que esta É neste construtor em que é chamado o método da criação de uma camada e consequentemente a criação dos perceptrões. public void propagacao(int []entrada) throws IOException{ Recebe um vector com as entradas a propagar pela rede. Depois, faz a propagação deas mesmas. public void initerro(){ De iteracção em iteracção é necessário reiniciar os valores do erros das saídas da rede a zero. É isso que este método faz. public void calculaerro(int padrao) Calcular e actualizar os erros nas saídas da rede. Cada padrão tem um valor desejado de saída e a fórmula do erro na saída é a subtracção entre o desejado e o que saiu na rede. Daí o parâmetro de entrada deste método ser o padrão que se propagou. Pois o valor do padrão corresponde ao índice da instância das saídas desejadas. public void calculaerroglobal() Calcular o erro global da rede de acordo com a fórmula do enunciado do trabalho prático. public void calculadeltas() Calcular os deltas da rede. Uma vez que os deltas são guardados nos perceptrões, e estes são guardados nas camadas, para cada camada da rede é chamado public void limpadeltas() Desce tal como o método de calcular os deltas até à classe dos perceptrões. Coloca os deltas a zero. Este método é chamdo a cada iteracção do algoritmo da retropopagação. 10

11 public void actualizapesos() Actualizar os deltas da rede. Utiliza a mesma ideia de descer até à classe dos perceptrões para, lá sim, actualizar os pesos. public void retropropagacao(int [][]entrada) throws IOException Este método contém quase todo o algoritmo da retropopagação que se encontra na página 261 da referência [6]. É esse algorimto a partir do ponto 2.1, pois os pontos 1 e 2 desse algoritmo estão no método main do programa. public int numeropesos() Este método calcula e retorna o número total de pesos da rede. 11

12 Apresentação de resultados As várias topologias testadas cada uma teve 7 reinicializações aleatórias dos pesos. Designação da Topologia Descrição da Topologia* Número de pesos Média de iteracções** A A A A A A *Ordem do número de neurónios por camada **Valores arredondados para inteiros A melhor topologia Designação da Topologia Descrição da Topologia* Número de pesos Média de iteracções** A Escolhemos esta topologia porque foi uma topologia que sempre que era inicializada reconhecia todos os caractéres que temos no conjunto de testes. Os pesos iniciais e finais deta topologia são muitos, como tal existe uma função para imprimir os pesos. Se se pretender imprimir os pesos. Basta chamar o método no inicio quando a rede é criada e no fim, depois da rede estar treinada. 12

13 O gráfico do erro global ao longo de um treino da rede. De uma análise feita a este gráfico podemos concluir que supostamente alguma coisa está mal, ou então está menos bem, pois o valor do erro global deveria de decrescer monotonamente. Quando isto acontece e de acordo com o professor ou revela ou eta elevado ou existe algum erro de implementação. Mas o que é certo é que depois de introduzido o conjunto de teste, a rede classifica o bem. 13

14 Manual do utilizador 1. O programa deve ser chamado com dois argumentos. O primeiro de conter a topologia da rede e o segundo deve conter o conjunto de treino da rede. Exemplo de um ficheiro da topologia da rede: O número de neurónios na camada de saída deve ser 4. Obrigatoriamente. Exemplo de um ficheiro de conjunto de treino: Ver anexo 2 2. Depois da rede estar treinada, é pedido ao utilizador o ficheiro que contém o caracter a ser classificado. Já se encontram na directoria dos ficheiros da aplicação os 8 ficheiros com os caracteres do conjunto de treino, mais três com ruído. Exemplo de um ficheiro: Ao que a rede responderia que é um o. 3. O ponto 2 é repetido até que seja inserida a string vazia. 4. O programa vai de maneira que os pontos 1,2 e 3 sejam corridos. Para verfificar outras coisas, como correr a mesma topologia várias vezes, e verificar o erro, ou numero médio de interacções. É necessário alterar o código. 5. O output do programa é a classificação correcta da entrada. 14

15 Conclusão Da análise da apresentação de resultados podemos concluir que as topologias de rede que têm muitos neurónios escondidos, ou seja, as topologias que têm mais neurónios na ou nas camadas escondidas são as topologias que têm um número médio de iteracções até chegar à condição de paragem mais pequeno. Verifica se também que com poucos neurónios (menos que as entradas) na camada de entrada a média de iteracções até chegar à condição de paragem é maior. O número de neurónios da camada de entrada deve ser igual ao número de entradas e o número de nuerónios da camada de saída deve ser igual à quantidade de saídas pretendidas. Já o número de neurónios da camada escondida de ve ser e o número de camadas escondidas, é um caso a estudar para cada problema. Não deve ser um número nem muito grande nem muito pequeno. 15

16 Referências [1] [2] [3] [4] Maria Isabel de Almeida Milho, Redes neuronais e reconhecimento de caracteres (2000), IPL ISEL, Lisboa [5] Michael Negnevitsky, Artificial Intelligence: A guide to Intelligent Systems, Addison Wesley, Pearson Education, 2002 [6] Ernesto Costa e Anabela Simões, Inteligência Artificial: Fundamentos e Aplicações, FCA, Fev

17 i i o o h h t t Anexo 1 17

18 Codificação das saídas desejadas. Anexo 2 Onde cada linha deste array corresponde ao caracter da que está na mesma linha no array dos caracteres (que foi lido do ficheiro de entradas). public int [][] desejado = { }; {1,0,0,0}, {1,0,0,0}, {0,1,0,0}, {0,1,0,0}, {0,0,1,0}, {0,0,1,0}, {0,0,0,1}, {0,0,0,1} Esta instância foi criada porque não foi criado um método que codificasse internamente as saídas desejadas. Logicamente que achamos que o trabalho ficava mais completo se o tivessemos feito, mas também o tempo apertou e também achámos que o objectivo principal do trabalho prático está conseguido. 18

Universidade do Algarve Faculdade de Ciências e Tecnologia

Universidade do Algarve Faculdade de Ciências e Tecnologia Universidade do Algarve Faculdade de Ciências e Tecnologia Inteligência Artificial (2006-2007 2º Semestre) Trabalho prático 2: Uma rede neuronal para o quebra-cabeças da AMI Discentes: Filipe Silva Pereira

Leia mais

Trabalho 1: Caminho mais curto entre duas cidades. Discentes: Ricardo Seromenho a23842 Rui Dias a24254

Trabalho 1: Caminho mais curto entre duas cidades. Discentes: Ricardo Seromenho a23842 Rui Dias a24254 Universidade do Algarve Faculdade de Ciências e Tecnologia Departamento de Engª Electrónica e Informática Inteligência Artificial (2005/2006 2º Semestre) Trabalho 1: Caminho mais curto entre duas cidades

Leia mais

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular INTELIGÊNCIA ARTIFICIAL Ano Lectivo 2017/2018

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular INTELIGÊNCIA ARTIFICIAL Ano Lectivo 2017/2018 Programa da Unidade Curricular INTELIGÊNCIA ARTIFICIAL Ano Lectivo 2017/2018 1. Unidade Orgânica Ciências da Economia e da Empresa (1º Ciclo) 2. Curso Engenharia Informática 3. Ciclo de Estudos 1º 4. Unidade

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Funções e Vectores http://tele1.dee.fct.unl.pt

Leia mais

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga Algoritmos e Programação II Aula 3 Sobrecarga *Adaptado do material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, com nomes

Leia mais

Apresentação da Unidade Curricular 2012/13

Apresentação da Unidade Curricular 2012/13 Inteligência Artificial Apresentação da Unidade Curricular 2012/13 Objectivos, Programa,, Bibliografia,... Paulo Fazendeiro Universidade da Beira Interior 1 Conteúdo Objectivos Programa Bibliografia Atendimento

Leia mais

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2 Grupo 6 Pretende-se fazer um programa para adivinhar o tipo de um ponto qualquer do plano. O tipo de um ponto pode ser GOOD, FAIR e POOR (pretende traduzir alguma medida de qualidade). Considere as classes

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Aplicação de Redes Neuronais Artificiais no Comportamento da Precipitação em Portugal Continental.

Aplicação de Redes Neuronais Artificiais no Comportamento da Precipitação em Portugal Continental. 2º ENCONTRO DE PÓS-GRADUAÇÃO EM INVESTIGAÇÃO E ENSINO DAS CIÊNCIAS FÍSICAS E DA TERRA DA UNIVERSIDADE DE ÉVORA Aplicação de Redes Neuronais Artificiais no Comportamento da Precipitação em Portugal Continental.

Leia mais

Exame de 1ª Época Introdução à Programação IGE e ETI 2003/02/25-1º semestre de 2002/2003 ISCTE

Exame de 1ª Época Introdução à Programação IGE e ETI 2003/02/25-1º semestre de 2002/2003 ISCTE Recibo do Exame de 1ª Época de Introdução à Programação (IGE e ETI), 2003/02/25 1º semestre de 2002/2003, ISCTE Nome do aluno:... Número do aluno:... Assinatura do docente:... Notas: Exame de 1ª Época

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Programação Orientada aos Objectos I

Programação Orientada aos Objectos I Programação Orientada aos Objectos I UEM Fevereiro 2014 Docente: eng a Tatiana Kovalenko AULA TEÓRICA 1 Tema 1. Introdução à POO Ø Revisão: POO. Classes e Objectos. Elaborado por eng.tatiana Kovalenko,

Leia mais

3 Redes Neurais Artificiais

3 Redes Neurais Artificiais 3 Redes Neurais Artificiais 3.1. Introdução A capacidade de implementar computacionalmente versões simplificadas de neurônios biológicos deu origem a uma subespecialidade da inteligência artificial, conhecida

Leia mais

Redes Neuronais (outras redes)

Redes Neuronais (outras redes) Redes Neuronais (outras redes) Victor Lobo Principais arquitecturas de redes Aprendizagem Supervisionada MLP com BP Multi-Layer Perceptron (perceptrão multicamada) Treinado com Backpropagation (retropropagação

Leia mais

Computação e Programação (2007/2008-1º Semestre)

Computação e Programação (2007/2008-1º Semestre) Computação e Programação (2007/2008-1º Semestre) Exame Tipo: 2008-01-14 MEMec - LEAN DURAÇÃO: 3 horas Leia com atenção os pontos que se seguem: Comece por escrever o seu nome e número nesta folha, e número

Leia mais

Relatório Trabalho Final Reservas de Viagens de Avião

Relatório Trabalho Final Reservas de Viagens de Avião Programação de Microprocessadores 2011/12 Sem. Par Aluno: 34086 Relatório Trabalho Final Reservas de Viagens de Avião Este relatório tem por base o trabalho realizado nesta disciplina sobre Reservas de

Leia mais

Melhor caminho entre duas estações de metro

Melhor caminho entre duas estações de metro Melhor caminho entre duas estações de metro Concepção e Análise de Algoritmos Turma Nuno Machado Matos Tiago Daniel Sá Cunha Data: 11 de Junho de 2010 Introdução No âmbito da realização do projecto da

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

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Proposta de trabalho

Proposta de trabalho Proposta de trabalho 1º semestre 2004/2005 No âmbito das disciplinas de: Algoritmos e Estruturas de Dados I José Braga de Vasconcelos jvasco@ufp.pt Linguagens de Programação I Rui Silva Moreira rmoreira@ufp.pt

Leia mais

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Introdução à Lógica de Programação

Introdução à Lógica de Programação Introdução à Lógica de Programação Não estamos aqui para sobreviver e sim para explorar a oportunidade de vencer adquirindo o saber! (Autor Desconhecido) A lógica é a arte de pensar correctamente e, visto

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Variáveis e Métodos de Classe Em Java, quer as classes quer as instâncias das classes são objectos. Onde está o estado da classe? Com que operações é manipulado? UBI, Departamento de Informática T04-1

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Aula de Hoje Abstração de Dados Classes e Objetos Definição de Métodos Métodos com parâmetro Abstração de Dados Processo mental através do qual

Leia mais

Exame de 2ª Época. Introdução à Programação (IGE e ETI), 2004/3/11, 1º semestre de 2003/2004, ISCTE

Exame de 2ª Época. Introdução à Programação (IGE e ETI), 2004/3/11, 1º semestre de 2003/2004, ISCTE Recibo do Exame de 2ª Época Introdução à Programação (IGE e ETI), 2004/3/11, 1º semestre de 2003/2004, ISCTE Nome do aluno:... Número do aluno:... Assinatura do docente:... Notas: Exame de 2ª Época Introdução

Leia mais

Teoria da Computação. 2006/2007 Trabalho prático nº 1. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1

Teoria da Computação. 2006/2007 Trabalho prático nº 1. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1 2006/2007 Trabalho prático nº 1 Trabalho realizado por: Pedro Oliveira (501062444) Rui Costa (501062452) Turma: TP1 1 - Introdução O objectivo deste trabalho era implementar um simulador de Autómatos Finitos

Leia mais

Linguagem de Programação C. Vetores

Linguagem de Programação C. Vetores Vetores Cristiano Lehrer Declaração de Vetores (1/5) Um vetor pode conter elementos de qualquer tipo de dados. No entanto, os elementos do vetor são todos do mesmo tipo, o qual é definido na declaração

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

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2 Grupo 5 Pretende-se escrever um programa em C++, denominado Biblioteca, para gerir uma biblioteca particular. O programa deve conter as seguintes classes: class CLivro string author; string title; string

Leia mais

2 Vectores de objectos

2 Vectores de objectos 2 Vectores de objectos Agenda de contactos 3 Objectivo Manipular uma agenda de contactos. Descrição e Funcionalides Cada contacto na agenda caracteriza-se por um nome, um telefone e um e-mail. Na agenda,

Leia mais

[Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999.

[Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999. Cap. IV - Programação Concorrente [Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999. [Gosling] The Java Language Specification James Gosling, Bill Joy and

Leia mais

Instituto de Informática Estrutura de Dados II

Instituto de Informática Estrutura de Dados II Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O

Leia mais

LP II / 1ª Lista de Exercícios

LP II / 1ª Lista de Exercícios LP II - 2013.2 / 1ª Lista de Exercícios Em todos os exercícios a aluno deve atender aos requisitos enunciados. Métodos e variáveis auxiliares podem ser criadas e usadas, desde que pertinentes. O aluno

Leia mais

Redes Neurais Artificial. Prática. Inteligência Artificial

Redes Neurais Artificial. Prática. Inteligência Artificial Redes Neurais Artificial Prática Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução a MLP 2. Base de dados e Pré-Processamento 3. Prática MLP - Introdução Redes

Leia mais

Familiarização com a ferramenta JavaCC

Familiarização com a ferramenta JavaCC Ficha nº 2 Familiarização com a ferramenta JavaCC Estrutura do ficheiro JavaCC O JavaCC utiliza um ficheiro com a extensão.jj, onde são descritos, pelo utilizador, o léxico e a sintaxe da linguagem e gera

Leia mais

AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação

AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação AULA TEÓRICA 7 Tema 7. Colecções (cont.) Vector Ø Criação Ø Manipulação 1 Vector Os vectores são semelhantes aos arrays, pois também podem conter um conjunto de objectos aos quais é atribuído um índice.

Leia mais

Programação 2. Trabalho Prático P4A. Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em ambiente Linux.

Programação 2. Trabalho Prático P4A. Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em ambiente Linux. Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007 Programação 2 2º Semestre Trabalho Prático P4A Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em

Leia mais

Teoria da Computação. 2006/2007 Trabalho prático nº 2. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1

Teoria da Computação. 2006/2007 Trabalho prático nº 2. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1 2006/2007 Trabalho prático nº 2 Trabalho realizado por: Pedro Oliveira (501062444) Rui Costa (501062452) Turma: TP1 1 - Introdução O objectivo deste trabalho foi desenvolver um Simplificador de Gramáticas

Leia mais

Redes Neuronais. Apontamentos Aulas TP de Inteligência Artificial LEI/ISEP Introdução às Redes Neuronais. Friday, April 5, 13

Redes Neuronais. Apontamentos Aulas TP de Inteligência Artificial LEI/ISEP Introdução às Redes Neuronais. Friday, April 5, 13 Redes Neuronais 1 Modelo do Perceptrão Cada neurónio é composto por dois elementos: o primeiro adiciona os produtos entre os sinais de entrada e respectivos pesos este produto, representado por a representa

Leia mais

Programação I Ponteiros e alocação dinâmica de memória. Prof. Carlos Alberto

Programação I Ponteiros e alocação dinâmica de memória. Prof. Carlos Alberto Programação I Ponteiros e alocação dinâmica de memória Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Ponteiros O ponteiro é um tipo de dado como int, char ou float; Variáveis

Leia mais

Redes Neurais Artificiais - Introdução. Visão Computacional

Redes Neurais Artificiais - Introdução. Visão Computacional Redes Neurais Artificiais - Introdução Visão Computacional Inspiração 2 Inspiração 3 Inspiração Atividade seletivanas conexões Soma os impulsos e passa a diante 4 Inspiração As conexões entre os dendritos

Leia mais

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2. Trabalho Prático P2B

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2. Trabalho Prático P2B Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007 Programação 2 2º Semestre Trabalho Prático P2B Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em

Leia mais

Escreva em Java a classe NumeroComplexo que represente um número complexo. A classe deverá ter os seguintes construtores:

Escreva em Java a classe NumeroComplexo que represente um número complexo. A classe deverá ter os seguintes construtores: Lista 2 1 - Números Complexos Números complexos são os que são escritos da forma: a + b*i onde a é a parte real e b a parte imaginária. Escreva em Java a classe NumeroComplexo que represente um número

Leia mais

Lição 7 Array em Java

Lição 7 Array em Java Lição 7 Array em Java Introdução à Programação I 1 Objetivos Ao final desta lição, o estudante será capaz de: Declarar e criar arrays Acessar elementos de um array Determinar o número de elementos em um

Leia mais

Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais.

Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais. Capítulo 3 Implementação de classes Familiarização com o processo de implementação de classes. Comentários. Métodos simples, construtores e acesso a membros de dados. Variáveis locais. Identificação de

Leia mais

Rui Carneiro, Rui Pereira, Tiago Orfão

Rui Carneiro, Rui Pereira, Tiago Orfão Geração de Gráficos SVG através de PHP Rui Carneiro, Rui Pereira, Tiago Orfão Faculdade de Engenharia da Universidade do Porto, R. Dr. Roberto Frias, 4200-465 Porto. {ei04073,ei04077,ei03102}@fe.up.pt

Leia mais

Programação Orientada por Objectos 2007/2008

Programação Orientada por Objectos 2007/2008 Programação Orientada por Objectos 2007/2008 Segundo Teste, 30/6/2008, Duração 1h30 (20 valores) 1 [2v] Considere que pretende desenvolver uma função num jogo que trata uma colisão entre dois objectos

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2009 / 2010

PROGRAMAÇÃO DE MICROPROCESSADORES 2009 / 2010 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2009 / 2010 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 2º semestre Trabalho nº 5 Funções e Vectores

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Java Collections Framework (JCF) Uma coleção (collection) é um objeto que agrupa vários elementos. A JCF consiste numa arquitetura para representação e manipulação de coleções. Contém: - Um conjunto de

Leia mais

Common Object Request Broker Architecture

Common Object Request Broker Architecture Common Object Request Broker Architecture OMG: Object Management Group. Organização internacional, sem fins lucrativos, fundada em 1989. Mais de 800 membros (incluindo fabricantes de sistemas, produtores

Leia mais

Concepção e Fabrico Assistido por Computador

Concepção e Fabrico Assistido por Computador Concepção e Fabrico Assistido por Computador João Pedro Amorim Lobato: gei00017@fe.up.pt Turma: LGEI Trabalho sobre Regressões em Visual Basic Licenciatura em Gestão e Engenharia Industrial

Leia mais

PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C

PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C 1 Implementações básicas: a) Implementar o procedimento LerMatriz que preenche uma matriz de L linhas por C colunas de inteiros (L, C 1); b) Implementar o procedimento

Leia mais

Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul Professor: Ricardo Luis dos Santos IFSUL 2015 Arrays ou vetores são estruturas de dados que armazenam usualmente uma quantidade fixa de dados de um determinado tipo Também são conhecidos como estruturas

Leia mais

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro.

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. Ficheiros de texto 1 Ficheiros de texto 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. 2. Implementar um programa que procure num ficheiro uma palavra lida do teclado.

Leia mais

UNIVERSIDADE DE AVEIRO PROGRAMAÇÃO I EXAME PRÁTICO

UNIVERSIDADE DE AVEIRO PROGRAMAÇÃO I EXAME PRÁTICO UNIVERSIDADE DE AVEIRO PROGRAMAÇÃO I EXAME PRÁTICO Nome: N.º Mec.: Curso: Sala: Data: 2007-01-03 9h30 Exame: E1.1 A B Total: Informações prévias 1. No seu computador, existe a pasta C:\EXAME. Só os ficheiros

Leia mais

Introdução às Redes Neurais Artificiais

Introdução às Redes Neurais Artificiais Introdução às Redes Neurais Artificiais Perceptrons de Múltiplas Camadas I Prof. João Marcos Meirelles da Silva www.professores.uff.br/jmarcos Departamento de Engenharia de Telecomunicações Escola de Engenharia

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica PERCEPTRON MULTICAMADAS: TÉCNICAS DE VALIDAÇÃO Prof. Dr. André A. P. Biscaro 2º Semestre de 2016 UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT Aspectos de seleção topológica de redes PMC A especificação

Leia mais

AULA TEÓRICA 4. Tema 2. Introdução a programação em Java (Continuação) Tema 3. Instruções básicas de entrada e saída

AULA TEÓRICA 4. Tema 2. Introdução a programação em Java (Continuação) Tema 3. Instruções básicas de entrada e saída AULA TEÓRICA 4 Tema 2. Introdução a programação em Java (Continuação) Ø Expressões. Ø Operadores de incrementação e de decrementação unária de variáveis. Ø Classe Math. Ø Conversões de tipo. Ø Expressões

Leia mais

AULA TEÓRICA 5 Tema 3. Instruções básicas de entrada e saída (continuação)

AULA TEÓRICA 5 Tema 3. Instruções básicas de entrada e saída (continuação) AULA TEÓRICA 5 Tema 3. Instruções básicas de entrada e saída (continuação) Ø Um primeiro programa em Java. Elaborado por eng.tatiana Kovalenko, UEM Um primeiro programa em Java Nossa tarefa não só aprender

Leia mais

Instituto Politécnico de Setúbal. Escola Superior de Tecnologia. Departamento de Sistemas e Informática. Guia para codificação em JAVA

Instituto Politécnico de Setúbal. Escola Superior de Tecnologia. Departamento de Sistemas e Informática. Guia para codificação em JAVA Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Guia para codificação em JAVA Disciplina de Introdução à Programação Ano Lectivo 2003/2004 CONTEÚDO

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 2 A tecnologia Java Uma ideia base da linguagem JAVA é a de que, um programa em JAVA deve poder ser executado em qualquer tipo de computador sem ter que ser alterado ou compilado novamente. Em Java o 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

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano Linguagem de Programação Atualização: // Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano Objetivo: Uso de sobrecarga de funções para criação de código intuitivo e uso

Leia mais

Algoritmos e Estruturas de Dados. Grupo 1

Algoritmos e Estruturas de Dados. Grupo 1 Licenciatura em Engenharia Electrotécnica e de Computadores Algoritmos e Estruturas de Dados Trabalho prático P1B 2003/04 2 o semestre Efectue as tarefas de programação descritas abaixo, usando a linguagem

Leia mais

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação Programação I (2010/2011) 2 o Trabalho de Programação Introdução As progressões aritméticas e geométricas são exemplos de sucessões numéricas onde o elemento n + 1 depende do elemento n e de uma constante.

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Trabalho nº 5 Funções http://tele1.dee.fct.unl.pt/pm

Leia mais

1 - Ambiente de desenvolvimento

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

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa

Leia mais

Apêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são:

Apêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são: Apêndice A Classe Vector A classe Vector permite a representação de um vetor de dados de maneira similar à de um array, visto na disciplina Programação Orientada a Objetos I, mas com maior flexibilidade.

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

Ficha 1 Noções de sequência e decisão em algoritmia

Ficha 1 Noções de sequência e decisão em algoritmia Ficha 1 Noções de sequência e decisão em algoritmia 1. Ler uma temperatura em Celsius e converter para Fahrenheit. Elabore o algoritmo e especifique as estruturas de dados necessárias para a resolução

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido

Leia mais

Linguagem C Introdução. Contexto Histórico Principais diferenças do Java Funções em C Compilar programas em C no Linux

Linguagem C Introdução. Contexto Histórico Principais diferenças do Java Funções em C Compilar programas em C no Linux Linguagem C Introdução Contexto Histórico Principais diferenças do Java Funções em C Compilar programas em C no Linux Porquê C em AC? A linguagem C fornece um modelo de programação próximo da máquina física

Leia mais

Exercícios de Excel com Programação em VBA. Luís Vieira Lobo

Exercícios de Excel com Programação em VBA. Luís Vieira Lobo Exercícios de Excel com Programação em VBA Luís Vieira Lobo Enunciados 1) Considere o seguinte livro Excel constituído pelas folhas de cálculo Pauta e Exame (ver Fig. 1 e Fig. 2). Fig. 1 Folha de cálculo

Leia mais

Módulo 2 Gestão de Base

Módulo 2 Gestão de Base Didáxis - Escola Cooperativa de Vale S. Cosme Módulo 2 Gestão de Base de Dados Aula Nº 59/60 16-01-2008 Sumário: Revisões da matéria Dada. Propriedades dos Campos. Elaboração e correcção de uma ficha de

Leia mais

9 Classes Abstractas e Interfaces

9 Classes Abstractas e Interfaces 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Trabalho Prático Data de Entrega : 30 de Maio

Trabalho Prático Data de Entrega : 30 de Maio Escola Superior de Tecnologia / Instituto Politécnico de Setúbal Algoritmos e Tipos Abstractos de Informação 2005/2006 Trabalho Prático Data de Entrega : 30 de Maio O problema Pretende-se realizar um jogo

Leia mais

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved.

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved. Programação Folha Prática 5 Lab. 5 Departamento de Informática Universidade da Beira Interior Portugal 2015 Copyright 2010 All rights reserved. 1. Revisão. 2. Objectivos. 3. Exercícios LAB. 5 5ª semana

Leia mais

LEIC-A / MEIC-A 2007/2008 (1º

LEIC-A / MEIC-A 2007/2008 (1º 1/11 LEIC-A / MEIC-A 2007/2008 (1º Semestre) Teste (versão A) 08 de Janeiro de 2008, 09:00 (120 minutos) Nome: Primeira Parte (5 valores) PERGUNTA RESPOSTA 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 Segunda

Leia mais

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno Programação Orientada a Objetos Aula 1.9 this e static Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Relembre: Clase RoboSimples Os métodos move() e move(int passos) podem ser reescrito sem redundância de

Leia mais

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO FOZ DO IGUAÇU 2013 LISTA

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 DE MICROPROCESSADORES 2007 / 2008

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre TRABALHO FINAL DE AVALIAÇÃO Gestão

Leia mais

Procalc v1.0. Versão Utilizador (Manual de Utilizador)

Procalc v1.0. Versão Utilizador (Manual de Utilizador) Procalc v1.0 Versão Utilizador (Manual de Utilizador) Conteúdo Procalc... 4 Botões Numéricos... 5 Funções Básicas... 6 Funções avançadas... 7 Logaritmo... 7 Logaritmo Natural... 7 Expoente... 7 Factorial...

Leia mais

Estrutura de Dados Funções e Procedimentos

Estrutura de Dados Funções e Procedimentos Estrutura de Dados Funções e Procedimentos Prof. Salustiano Rodrigues de Oliveira saluorodrigues@gmail.com www.profsalu.wordpress.com Java A linguagem Java utiliza o paradigma de programação orientada

Leia mais

Reconhecimento de Padrões/Objetos

Reconhecimento de Padrões/Objetos Reconhecimento de Padrões/Objetos André Tavares da Silva andre.silva@udesc.br Capítulo 2 de Gonzales Classificação Linear Introdução Para utilizar uma função discriminante linear (Linear Discriminant Function)

Leia mais

Previsão de consumos a curto prazo

Previsão de consumos a curto prazo Previsão de consumos a curto prazo Cláudio Monteiro Distribuição de Energia II 5º ano da LEEC - ramo de Energia (FEUP) O que são? são técnicas computacionais que apresentam um modelo matemático inspirado

Leia mais

FUNDAMENTOS DA PROGRAMAÇÃO 2º Teste, 1 de junho de 2013, 1h30m

FUNDAMENTOS DA PROGRAMAÇÃO 2º Teste, 1 de junho de 2013, 1h30m FUNDAMENTOS DA PROGRAMAÇÃO 2º Teste, 1 de junho de 2013, 1h30m 1. (3.25) Escreva um programa que pede o nome (mais de 2 caracteres) e o sobrenome (mais de 4 caracteres) a um utilizador e gera um username

Leia mais

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Introdução Além de utilizar as classes presentes na biblioteca padrão, programadores podem definir suas próprias

Leia mais

Instruções de repetição

Instruções de repetição Folha Prática Instruções de repetição 1 Instruções de repetição Repetição (e componentes associadas a qualquer repetição: inicialização, teste da condição de paragem e actualização) Repetição com teste

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS PERCEPTRON MULTICAMADAS Prof. Dr. André A. P. Biscaro 1º Semestre de 2018 Arquitetura Redes Perceptron de Múltiplas Camadas (PMC), também conhecidas como redes MLP (Multiple Layer

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

UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS C1105 INTRODUÇÃO À PROGRAMAÇÃO EM C

UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS C1105 INTRODUÇÃO À PROGRAMAÇÃO EM C UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS C1105 INTRODUÇÃO À PROGRAMAÇÃO EM C 1º Semestre 2006/2007 27/02/2007 (D) Leia com atenção as perguntas e justifique todas as suas respostas. 1. Explique

Leia mais

Programação Orientada a Objetos Introdução a POO

Programação Orientada a Objetos Introdução a POO Introdução a POO Implementação Técnico em Informática, M.Sc. Objetos 12/04/2012 20:17 Redes de Computadores 2 Domínio e Aplicação Domínio Composto pelas entidades, informações e processos relacionados

Leia mais

Aula teórica 10 Tema 10. Selecção Instruções de selecção:

Aula teórica 10 Tema 10. Selecção Instruções de selecção: Aula teórica 10 Tema 10. Selecção Instruções de selecção: Selecção simples. Instrução if Selecção em alternativa. Instrução if Testes múltiplos Selecção múltipla. Instrução switch - case Objectivos da

Leia mais