PROF. DR. JACQUES FACON MORFOLOGIA MATEMÁTICA FUZZY : ESTUDO COMPARATIVO

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

Download "PROF. DR. JACQUES FACON MORFOLOGIA MATEMÁTICA FUZZY : ESTUDO COMPARATIVO"

Transcrição

1 PUCPR- Pontifícia Universidade Católica Do Paraná PPGIa- Programa de Pós-Graduação Em Informática aplicada PROF. DR. JACQUES FACON MORFOLOGIA MATEMÁTICA FUZZY : ESTUDO COMPARATIVO Resumo: A teoria dos conjuntos Fuzzy tem uma promissora aplicação no processamento de imagens. A tecnologia na área de imagens está sempre em crescimento e possui infinitas aplicações. Este trabalho mostra um estudo feito sobre a Morfologia Fuzzy, algumas abordagens Fuzzy e como estas abordagens foram implementadas e aplicadas no processamento de imagens. As definições Fuzzy utilizadas estão descritas assim como também é tratado sobre o Elemento Estruturante e apresentado os tipos utilizados. Palavras-chave: Morfologia Matemática, Morfologia Fuzzy, Elemento Estruturante, níveis de cinza, Erosão, Dilatação. Abstract: Fuzzy set theory has a promising application in the image processing. The technology in this area of images is always in increase and this area has infinite applications. This paper shows a study about Fuzzy Morphology, some Fuzzy definitions and how them were implemented and applyed in the image processing. The fuzzy definitions and the Structuring Element used are described. Key-words: Mathematical Morphology, Fuzzy Morphology, Structuring Element, greyvalues, Erosion, Dilation. 1. Introdução O objetivo deste trabalho é estudar a Morfologia Fuzzy e implementar algumas abordagens fuzzy e aplicar no processamento de imagens. Atualmente cada vez mais manipulação, tratamento e armazenamento de informações diversas e complexas são necessárias. Um tipo de informação muito usado e muito significante é a imagem, basta lembrar que uma imagem traz uma quantidade enorme de informações, podemos citar como exemplo um gráfico de custos, uma imagem médica sobre uma área doente de algum órgão e outras. Esta área de processamento de imagens está em constante evolução tecnologia e possui inúmeras aplicações.

2 Na seção 2 teremos uma visão geral do sistema falando sobre a teoria fuzzy e a descrição funcional do sistema, na 3 serão discutidos alguns tópicos da implementação, e na seção 4 temos as conclusões. 2. Visão Geral do Sistema Conceitos da Teoria Fuzzy Na teoria dos conjuntos fuzzy a intersecção e a união são definidos por uma família de operadores chamados de t-normas e t-conormas respectivamente. As definições de erosão e dilatação usam a intersecção e a união para definir erosão e dilatação fuzzy, e se encontram definidas na literatura várias definições para esses conceitos, as t- normas e as t-conormas. A seguir serão apresentadas algumas definições encontradas na literatura para dilatação e erosão fuzzy e nas quais foram baseados os algoritmos desenvolvidos neste projeto. Definição 1: D1 v (µ)(x) = sup min[µ(y), v(y x)], E1 v (µ)(x) = inf max[µ(y), 1 - v(y x)]. Definição 2: D2 v (µ)(x) = sup [µ(y)*v(y x)], E2 v (µ)(x) = inf[µ(y)*v(y x) v(y x)]. Definição 3: D3 v (µ)(x) = sup max[0, µ(y) + v(y x) - 1], E3 v (µ)(x) = inf min [1, 1 + µ(y) - v(y x)]. Definição 4: D4 v (µ)(x) = sup max[0, 1 - λ(µ(y)) - λ(v(y x))], E4 v (µ)(x) = inf min[1, λ(1 - µ(y)) + λ(v(y x))], sendo que λ é uma função definida de [0,1] 3 [0,1] e que obedece a algumas propriedades. E o valor de λ é calculado por: λ = 1 x. Descrição geral do Sistema

3 O usuário escolhe uma das imagens disponíveis no banco de imagens e entra com as informações necessárias para a execução do algoritmo. As informações necessárias são escolhidas pelo usuário, e são elas: se será uma operação de erosão ou dilatação, a definição que será utilizada, o elemento estruturante, o tamanho do elemento estruturante e o valor do corte alfa. O sistema verifica a imagem e as informações escolhidas. Caso ocorra algum problema uma mensagem é emitida e se estiver tudo correto os dados são passados para a execução do algoritmo. A nova imagem produzida é exibida na tela para o usuário e caso ocorra algum erro uma mensagem é emitida. Software utilizado Este projeto foi desenvolvido no compilador Visual C da Microsoft utilizando a linguagem de programação C++. Utilizando no desenvolvimento o ambiente Windows 98 que é o mesmo ambiente de utilização da ferramenta a ser desenvolvida. 3. Pontos Importantes da Implementação Cada definição possui uma regra para a erosão e uma para a dilatação, estas regras são denominadas T-conorma no caso da erosão e T-norma no caso da dilatação. Antes da execução do algoritmo fuzzy o Elemento Estruturante é calculado. O cálculo do Elemento Estruturante é feito em função do seu tipo, tamanho e valor do corte alfa. O corte alfa é um valor de nível de cinza que varia de 0 a 255, sendo que o 0 corresponde a cor preta e o 255 corresponde a cor branca. Quando o usuário define o valor do corte alfa ele limita qual será o maior valor de nível de cinza utilizado no Elemento Estruturante. O Elemento Estruturante é representado em uma matriz. Os Elementos Estruturantes disponíveis no sistema são: Gaussiano, é calculado sobre a equação de Gauss. Os maiores níveis de cinza ficam na borda e vão diminuindo em direção do centro, o menor nível de cinza fica o centro da matriz. Parabólico, é calculado sobre a equação da parábola. O maior nível de cinza fica no centro e os valores vão diminuindo em direção à borda. Trapezoidal tem o formato de um trapézio. Retangular é como se fosse um plano e todas as posições da matriz possuem o mesmo nível de cinza. Depois que o Elemento Estruturante é calculado a imagem é varrida e um novo valor de nível de cinza é calculado para cada posição de pixel da imagem. O cálculo é feito utilizando os valores da matriz do Elemento Estruturante, o nível de cinza do pixels da imagem original e uma t-norma ou t-conorma (figura 1).

4 figura 1: Janela de escolha do do Elemento Estruturante 4. Conclusão Quanto ao desempenho do sistema obteve-se um bom resultado na utilização da Morfologia Fuzzy no tratamento de imagens. 5. Referências Bibliográficas [FACO-96] Facon J., "A Morfologia Matemática: Teoria e Exemplos", outubro [BLOC-95] Bloch I. and Maître H., "Fuzzy Mathematical Morphologies: A Comparative Study", Pattern Recognition vol 28, No 9, pp , [GROS-96] Grossert S. and Köppen M. and Nickolay B.,"A new Approach to Fuzzy Mathematical Morphology based on Fuzzy Integral and Its Application in Image Processing", Proceedings of ICPR 96, pp , [POPO-96] Popov A. T., "Fuzzy Morphology and Fuzzy Conexity Measures", Proceedings of ICPR 96, pp , 1996.

5 ////////////////////////////////////////////////////////////////////////////// /// ////////////////////////////////////////////////////////////////////////////// /// //FUNÇÕES PARA MORFOLOGIA FUZZY ////////////////////////////////////////////////////////////////////////////// /// ////////////////////////////////////////////////////////////////////////////// /// CPdimagemDoc* CPdiBase::ErosaoFuzzy(CPdimagemDoc* m_pdo_aux, CPdimagemDoc* m_pdo,int tamanhoee, BYTE cortealfa, WORD tipo_t_conorm, WORD tipo_elemento_estruturante) SetMatrizEE(tamanhoEE,tipo_elemento_estruturante, cortealfa); BYTE n_cinzateste = 0; BYTE n_cinzaee = 0; BYTE n_cinzaimg = 0; int xx, yy,k; COLORREF p1, p2; BYTE valor_pixel, valor; COLORREF val_pixel; DWORD lin, col; int s = NULL; if(tamanhoee == 9) s = 1; else if(tamanhoee == 25) s = 2; else if(tamanhoee = 49) s = 3; else if(tamanhoee = 81) s = 4; int linhas = (int) GetHeight(); int colunas = (int) GetWidth(); for(lin = s; lin < linhas-1-s; lin ++)//pega o comprimento da imagem retirando as bordas for(col = s; col < colunas-1-s; col ++)//pega a largura da imagem retirando as bordas valor_pixel = 255;

6 for(k = 0; k < tamanhoee ; k++) xx = suporte_x[k]; yy = suporte_y[k]; GetBValue(p1)) / 3; p1 = m_pdo_aux->imagem.getpixel(col+xx,lin+yy); n_cinzaimg = (GetRValue(p1) + GetGValue(p1) + n_cinzaee = m_arrayee[xx+s][yy+s]; n_cinzaee = n_cinzaee; tipo_t_conorm); valor = T_Conorma(n_cinzaImg, n_cinzaee, valor_pixel = minimo(valor_pixel, valor); val_pixel = RGB(valor_pixel,valor_pixel,valor_pixel); m_pdo->imagem.setpixel(col, lin, val_pixel); m_pdo_aux->imagem.hdib = m_pdo->imagem.copyhandle(); return m_pdo; CPdimagemDoc* CPdiBase::DilatacaoFuzzy(CPdimagemDoc* m_pdo_aux, CPdimagemDoc* m_pdo, int tamanhoee, BYTE cortealfa, WORD tipo_t_norm, WORD tipo_elemento_estruturante) SetMatrizEE(tamanhoEE,tipo_elemento_estruturante, cortealfa); BYTE n_cinzaee = 0; BYTE n_cinzaimg = 0; int xx, yy, k; COLORREF p1; BYTE valor_pixel, valor; COLORREF val_pixel; DWORD lin, col; int s = NULL; if(tamanhoee == 9) s = 1; else if(tamanhoee == 25) s = 2; else if(tamanhoee = 49) s = 3; else if(tamanhoee = 81)

7 s = 4; int linhas = (int) GetHeight(); int colunas = (int) GetWidth(); for(lin = s; lin < linhas-1-s; lin ++)//pega o comprimento da imagem retirando as bordas for(col = s; col < colunas-1-s; col ++)//pega a largura da imagem retirando as bordas valor_pixel = 0; for(k=0; k<tamanhoee; k++) xx = suporte_x[k]; yy = suporte_y[k]; GetBValue(p1)) / 3; p1 = m_pdo_aux->imagem.getpixel(col+xx,lin+yy); n_cinzaimg = (GetRValue(p1) + GetGValue(p1) + n_cinzaee = m_arrayee[xx+s][yy+s]; valor = T_Norma(n_cinzaImg, n_cinzaee, tipo_t_norm); valor_pixel = maximo(valor_pixel, valor); val_pixel = RGB(valor_pixel,valor_pixel,valor_pixel); m_pdo->imagem.setpixel(col, lin, val_pixel); m_pdo_aux->imagem.hdib = m_pdo->imagem.copyhandle(); return m_pdo; void CPdiBase::SetMatrizEE(int& tamanhoee, WORD& tipo_elemento_estruturante, BYTE& cortealfa) float div = NULL; float p1 = NULL; float tmp = NULL; int x = 0; int y = 0; int n = 0; int raiz = 0; if(tamanhoee == 9) p1 = 1; else if(tamanhoee == 25)

8 p1 = 2; else if(tamanhoee = 49) p1 = 3; else if(tamanhoee = 81) p1 = 4; for(x=0; x < 81; x++) suporte_x[x] = 0; suporte_y[x] = 0; for(x = 0; x < 9; x++) for(y = 0; y < 9; y++) m_arrayee[x][y] = 0; raiz = (int)(sqrt((double)(tamanhoee))); for(int i = 0; i < raiz; i++) for(int j = 0; j < raiz; j++) suporte_x[n] = (int)(j-p1); suporte_y[n] = (int)(i-p1); n++; if(tipo_elemento_estruturante == PARABOLOIDE) int aux = 0; for(y = 0; y < raiz; y++) for(x = 0; x < raiz; x++) tmp = (float)((suporte_x[aux]*suporte_x[aux]) + (suporte_y[aux]*suporte_y[aux])); div = (float)((tmp)/(p1*p1)); if(div <= 2.0) m_arrayee[x][y] = (BYTE)(cortealfa * div/2.0); aux++;

9 else if(tipo_elemento_estruturante == GAUSSIANO) int aux = 0; float n_cinza = NULL; float maior_geral = 0.0; float menor_geral = ; float sigma_x = p1; float sigma_y = p1; float sigma = NULL; float expoente = NULL; float X = NULL; float Y = NULL; for(y = 0; y < raiz; y++) for(x = 0; x < raiz; x++) X = (float)(abs(suporte_x[aux])); Y = (float)(abs(suporte_y[aux])); sigma = (float)(sqrt(pow(sigma_x,2) + pow(sigma_y,2))); expoente = ((-1.0/2.0) * (X/p1)) - ((1.0/2.0) * (Y/p1)); tmp = (float)(1.0/sigma*((float)(sqrt(2*pi)))) * (float)(pow(e,expoente)); maior_geral = maximo(maior_geral,tmp); menor_geral = minimo(menor_geral,tmp); aux++; //calcula maior valor entre os elementos do EE. aux = 0; for(y = 0; y < raiz; y++) for(x = 0; x < raiz; x++) X = (float)(abs(suporte_x[aux])); Y = (float)(abs(suporte_y[aux])); sigma = (float)(sqrt((float)(pow(sigma_x,2)) + (float)(pow(sigma_y,2)))); expoente = ((-1.0/2.0) * (X/p1)) - ((1.0/2.0) * (Y/p1)); tmp = (float)(1.0/sigma*((float)(sqrt(2*numpi)))) * (float)(pow(e,expoente)); n_cinza = (tmp-menor_geral)/(maior_geral-menor_geral); m_arrayee[x][y] = (BYTE)((cortealfa*n_cinza)); aux++; else if(tipo_elemento_estruturante == RETANGULAR)

10 int aux = 0; for(y = 0; y < raiz; y++) for(x = 0; x < raiz; x++) m_arrayee[x][y] = (BYTE)(cortealfa); else if(tipo_elemento_estruturante == TRAPEZOIDAL) int aux = 0; float p2 = p1; p1 = p1/2; for(y = 0; y < raiz; y++) for(x = 0; x < raiz; x++) tmp = (float)(abs(suporte_x[aux])); tmp = (float)((abs(suporte_y[aux]) > (tmp))? (abs(suporte_y[aux])) : (tmp)); if(tmp < p1) m_arrayee[x][y] = (BYTE)(cortealfa); else tmp = tmp - p2/p1; if(tmp < 1.0) tmp = cortealfa * tmp; m_arrayee[x][y] = (BYTE)((tmp > cortealfa? cortealfa : tmp)); aux++; BYTE CPdiBase::T_Conorma(BYTE x, BYTE y, WORD tipo) BYTE z; double zz, xx, yy; xx = (double)(x); yy = (double)(y); switch(tipo) case ZADEH: z = (BYTE)(maximo(xx, yy));

11 case PROBABILISTICA: z = (BYTE)((xx)+(yy)-(xx)*(yy)/255); case LUKASIEWICZ: zz = xx + yy; z = (BYTE)(minimo(zz, 255.0)); case DEFINICAO5: xx = xx/255.0; yy = yy/255.0; zz = (((3.0 * xx) - (3.0 * xx*xx) + (xx*xx*xx)) + ((3.0 * yy) - (3.0 * yy*yy) + (yy*yy*yy))) * 255.0; z = (BYTE)(minimo(zz, 255)); case BLOCHMAITRE: return z; BYTE CPdiBase::T_Norma(BYTE x, BYTE y, WORD tipo) BYTE z; double zz, xx, yy; xx = (double)(x); yy = (double)(y); switch(tipo) case ZADEH: z = (BYTE)(minimo(xx, yy)); case PROBABILISTICA: z = (BYTE)((xx)*(yy)/255.0); case LUKASIEWICZ: zz = xx + yy - 255; z = (BYTE)(maximo(zz, 0)); case DEFINICAO5: xx = xx/255.0; yy = yy/255.0; zz = (pow(xx,3) + pow(yy, 3) ) * 255.0; z = (BYTE)(maximo(zz, 0));

12 case BLOCHMAITRE: return(z);

Processo de Afinamento de Stentiford

Processo de Afinamento de Stentiford PUCPR- Pontifícia Universidade Católica Do Paraná PPGIA- Programa de Pós-Graduação Em Informática Aplicada PROF. DR. JACQUES FACON Processo de Afinamento de Stentiford Resumo O algoritmo estudado para

Leia mais

Morfologia Matemática? Mathematical morphology (MM) : what is it?

Morfologia Matemática? Mathematical morphology (MM) : what is it? Morfologia Matemática? Mathematical morphology (MM) : what is it? Que qué isso? Combining methods from set theory, topology, and discrete mathematics, mathematical morphology provides a powerful approach

Leia mais

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

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

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Roberto de M. F. Filho (aluno PAE) - rmdff@icmc.usp.br>

Leia mais

Processamento de Imagens

Processamento de Imagens Processamento de Imagens Introdução Prof. Dr. Márcio Sarroglia Pinho Histogramas Histogramas w Equalização alpha = 255 / numpixels for each pixel g(x,y) = cumulativefrequency[f(x,y)] * alpha end for http://www.generation5.org/content/24/histogramequalization.asp

Leia mais

ponteiros INF Programação I Prof. Roberto Azevedo

ponteiros INF Programação I Prof. Roberto Azevedo ponteiros INF1005 -- Programação I -- 2016.1 Prof. Roberto Azevedo razevedo@inf.puc-rio.br ponteiros tópicos o que são ponteiros operadores usados com ponteiros passagem de ponteiros para funções referência

Leia mais

PROF. DR. JACQUES FACON

PROF. DR. JACQUES FACON 1 PUCPR- Pontiícia Universidade Católica Do Paraná PPGIA- Programa de Pós-Graduação Em Inormática Aplicada PROF. DR. JACQUES FACON LIMIARIZAÇÃO PELA DERIVADA 2ª DE PAVLIDIS Resumo: Este artigo descreve

Leia mais

Aplicação de técnicas de Morfologia Matemática e PDI na detecção semi-automática de feições cartográficas em imagens digitais

Aplicação de técnicas de Morfologia Matemática e PDI na detecção semi-automática de feições cartográficas em imagens digitais Aplicação de técnicas de Morfologia Matemática e PDI na detecção semi-automática de feições cartográficas em imagens digitais Prof. Dr. Erivaldo Antônio da Silva 1 Fernanda Puga Santos 2 Fernando Leonardi

Leia mais

Aula 4: Morfologia de Imagens

Aula 4: Morfologia de Imagens SEL 5886 - VISÃO COMPUTACIONAL Aula 4: Morfologia de Imagens Prof. Dr. Marcelo Andrade da Costa Vieira Colaboração: Dr. Bruno R. N. Matheus Morfologia Morfologia matemática: Ferramenta para extração de

Leia mais

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática Capítulo 1: Introdução à Linguagem C Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso caso, a linguagem C.

Leia mais

Matrizes Esparsas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.

Matrizes Esparsas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Luiz Henrique Kiehn (aluno PAE) - lhkiehn@icmc.usp.br

Leia mais

Universidade Federal de Pernambuco Graduação em Engenharia da Computação Centro de Informática

Universidade Federal de Pernambuco Graduação em Engenharia da Computação Centro de Informática Universidade Federal de Pernambuco Graduação em Engenharia da Computação Centro de Informática DETECÇÃO DE BORDAS DE IMAGENS UTILIZANDO ELEMENTOS DE MORFOLOGIA MATEMÁTICA PROPOSTA DE TRABALHO DE GRADUAÇÃO

Leia mais

Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes

Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes Árvores Fabrício J. Barth BandTec - Faculdade de Tecnologia Bandeirantes Setembro de 2011 Tópicos Introdução Árvores binárias Implementação em Java Ordens de percurso em árvores binárias Altura de uma

Leia mais

Capítulo 4: Condicionais

Capítulo 4: Condicionais Capítulo 4: Condicionais INF1004 e INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra.

Leia mais

Carlos Eduardo Batista. Centro de Informática - UFPB

Carlos Eduardo Batista. Centro de Informática - UFPB Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação para o uso da linguagem C Entendendo Estrutura de Dados Revisão da Linguagem C Tipos primitivos Vetores

Leia mais

Operadores Morfológicos

Operadores Morfológicos Capítulo 2 Operadores Morfológicos Uma forma elegante de resolver problemas de processamento de imagens é através da utilização de uma base teórica consistente. Uma destas teorias é a morfologia matemática

Leia mais

Construção de uma ferramenta de localização da região da placa de veículos

Construção de uma ferramenta de localização da região da placa de veículos Construção de uma ferramenta de localização da região da placa de veículos Jonathan Damásio Medeiros Acadêmico Dalton Solano dos Reis - Orientador Roteiro Introdução Objetivos do trabalho Fundamentação

Leia mais

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação Entender o problema Encontrar um algoritmo para resolvê-lo Implementar o algoritmo numa linguagem de programação Permitem implementar um algoritmo Expressar o algoritmo numa forma que o computador entenda

Leia mais

Algoritmos e Estruturas de dados

Algoritmos e Estruturas de dados Algoritmos e Estruturas de dados Listas Encadeadas Prof. Dr. Fábio Rodrigues de la Rocha (Listas Encadeadas) 1 / 21 Definição: Anteriormente estudamos listas encadeadas que foram implementadas como vetores

Leia mais

CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA.

CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA. CONSTRUÇÃO AUTOMÁTICA DE OPERADORES MORFOLÓGICOS UTILIZANDO PROGRAMAÇÃO GENÉTICA. Emerson Carlos Pedrino * e-mail: ecpedrin@sel.eesc.sc.usp.br Valentin Obac Roda ** e-mail: valentin@sel.eesc.sc.usp.br

Leia mais

Introdução à Linguagem de Programação Java 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA

Introdução à Linguagem de Programação Java 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA 2 INDICE 1. COMENTÁRIOS... 4 1.1. Comentário de uma linha... 4 1.2. Comentário de múltiplas linhas... 4 2. IMPRESSÃO DE TEXTOS... 5 2.1. Imprimindo um texto

Leia mais

Slide 01 16/03/2017. Estruturas de Dados. Prof. Cleziel Franzoni da /Cleziel.

Slide 01 16/03/2017. Estruturas de Dados. Prof. Cleziel Franzoni da /Cleziel. Slide 01 16/03/2017 Estruturas de Dados Prof. Cleziel Franzoni da Costa 1 @Cleziel /Cleziel cleziel@hotmail.com 42 3 EMENTA Listas lineares e suas variações. Filas e pilhas. Árvores binárias e suas variações.

Leia mais

Memorias. La Geoinformación al Servicio de la Sociedad

Memorias. La Geoinformación al Servicio de la Sociedad La Geoinformación al Servicio de la Sociedad Memorias Sociedad Latinoamericana en Percepción Remota y Sistemas de Información Espacial Capítulo Colombia Medellín, Colombia 29 de Septiembre al 3 de Octubre

Leia mais

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática Capítulo 2: Condicionais Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra. No capítulo 3, vimos que a

Leia mais

Revisão C++ - Parte 1

Revisão C++ - Parte 1 Revisão C++ - Parte 1 Prof. Gustavo Leitão Campus Natal Central Disciplina Programação para Ambiente de Redes 5/3/2010 Objetivo da Aula 5/3/2010 5/3/2010 OBJETIVO DA AULA Revisar os principais comandos

Leia mais

Introdução à Linguagem C Variáveis e Expressões

Introdução à Linguagem C Variáveis e Expressões INF1005: Programação 1 Introdução à Linguagem C Variáveis e Expressões 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Programando em C Funções Variáveis Define Operadores e Expressões Entrada e Saída

Leia mais

Geração de um programa para processamento morfológico de imagens visando auxiliar o processo de extração de feições cartográficas de imagens orbitais.

Geração de um programa para processamento morfológico de imagens visando auxiliar o processo de extração de feições cartográficas de imagens orbitais. Geração de um programa para processamento morfológico de imagens visando auxiliar o processo de extração de feições cartográficas de imagens orbitais. Giovana Araujo Alberti 1 Erivaldo Antonio da Silva

Leia mais

AULA 14 ESTRUTURA DE DADOS

AULA 14 ESTRUTURA DE DADOS AULA 14 ESTRUTURA DE DADOS Matriz esparsa Norton T. Roman & Luciano A. Digiampietri Matriz Uma matriz bidimensional é um conjunto de elementos (ou tabela) composta por m linhas e n colunas. Matriz Uma

Leia mais

7 a Lista de Exercícios Assunto: Funções e passagem por referência com vetor e matriz (Tópico 7)

7 a Lista de Exercícios Assunto: Funções e passagem por referência com vetor e matriz (Tópico 7) 7 a Lista de Exercícios Assunto: Funções e passagem por referência com vetor e matriz (Tópico 7) Essa lista de exercícios tem como objetivo principal desenvolver algoritmos a partir dos conteúdos abordados

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Modularização em C Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c

Leia mais

Estudo sobre decodificação iterativa usando códigos de treliça

Estudo sobre decodificação iterativa usando códigos de treliça Revista de Engenharia e Pesquisa Aplicada, Volume 2, Número 1, 2016 Estudo sobre decodificação iterativa usando códigos de treliça Souza, I. M. M. Escola Politécnica de Pernambuco Universidade de Pernambuco

Leia mais

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@gmail.com

Leia mais

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes CI208 - Programação de Computadores Aula 24: Arrays Prof. MSc. Diego Roberto Antunes diegor@inf.ufpr.br www.inf.ufpr.br/diegor Universidade Federal do Paraná Setor de Ciências Exatas Departamento de Informática

Leia mais

Reconhecimento de texturas utilizando padrão binário local e classificador knn.

Reconhecimento de texturas utilizando padrão binário local e classificador knn. Reconhecimento de texturas utilizando padrão binário local e classificador knn. Vinicius Santos Andrade 1 Resumo. Através de uma imagem é possível obter inúmeras informações. Portanto, é cada vez mais

Leia mais

Tipos de Dados Simples (Continuação)

Tipos de Dados Simples (Continuação) SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Tipos de Dados Simples (Continuação) Prof. Vanderlei Bonato: vbonato@icmc.usp.br Prof. Claudio Fabiano Motta Toledo: claudio@icmc.usp.br Sumário

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0502 Algoritmos e Estruturas de Dados I Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c Denominados de módulos Cada módulo deve

Leia mais

INF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1

INF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1 INF1005: Programação 1 Condicionais 08/03/10 (c) Rogério Rodrigues 1 Tópicos Principais Tomada de Decisão Expressões Booleanas Blocos de Comandos Exemplos 08/03/10 (c) Paula Rodrigues 2 Tomada de decisão

Leia mais

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professor: Jó Ueyama Estagiário PAE: Bruno S. Faiçal 1 Sumário Estrutura de programas (sequenciais) Tipos de dados simples

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof. UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA ECT1203 Linguagem de Programação Turma 03 2015.1 Prof. Einstein Santos Aula 07/08: Comandos de repetição Pontos da aula O laço

Leia mais

Desenvolvendo aplicações Java

Desenvolvendo aplicações Java José Roberto Madureira Junior Adaní Cusin Sacilotti Adriana Rodrigues Reginaldo Sacilotti Desenvolvendo aplicações Java Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO JAVA... 1 1.1 A PLATAFORMA

Leia mais

PROF. DR. JACQUES FACON

PROF. DR. JACQUES FACON PUCPR - Pontifícia Universidade Católica Do Paraná PPGIA - Programa de Pós-Graduação Em Informática Aplicada PROF. DR. JACQUES FACON LIMIARIZAÇÃO PELO OPERADOR LAPLACIANO: MÉTODO DE CHEHIKIAN Resumo: Este

Leia mais

Linguagem C ponteiros

Linguagem C ponteiros Linguagem C ponteiros IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C... Vetores Matrizes Funções Recursão Registros Aula

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece

Leia mais

Orientação de Bordas em Imagens Digitais: Abordagem por Análise de Vizinhança Local

Orientação de Bordas em Imagens Digitais: Abordagem por Análise de Vizinhança Local Orientação de Bordas em Imagens Digitais: Abordagem por Análise de Vizinhança Local Inês Aparecida Gasparotto Boaventura DCCE-IBILCE-UNESP Rua Cristovão Colombo, 2265 15054-000, São José do Rio Preto,

Leia mais

INTERPOLAÇÃO LINEAR E BILINEAR: APLICAÇÃO EM TRANSFORMAÇÕES GEOMÉTRICAS DE IMAGEM INTRODUÇÃO

INTERPOLAÇÃO LINEAR E BILINEAR: APLICAÇÃO EM TRANSFORMAÇÕES GEOMÉTRICAS DE IMAGEM INTRODUÇÃO INTERPOLAÇÃO LINEAR E BILINEAR: APLICAÇÃO EM TRANSFORMAÇÕES GEOMÉTRICAS DE IMAGEM Autores: Giulia Denise Kujat VIEIRA; Milene Karine GUBETTI. Identificação autores: Estudantes do Curso Técnico em Informática

Leia mais

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C#

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C# Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO -2017 Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C# http://www1.univap.br/~wagner Prof.

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação

Leia mais

Aula 8 Comandos de Seleção

Aula 8 Comandos de Seleção Aula 8 Comandos de Seleção Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira ronaldo.co@ufu.br Anilton Joaquim da Silva anilton@ufu.br 1 Introdução Até agora não aprendemos a dizer

Leia mais

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Este documento explica como transformar um algoritmo escrito na forma pseudocódigo

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 1o. Semestre de 2017 Prof.

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 1o. Semestre de 2017 Prof. Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 1o. Semestre de 2017 Prof. Renato Pimentel Prática 02 Java básico Atividade individual. Crie um novo projeto

Leia mais

LINGUAGEM DE PROGRAMAÇÃO C AULA 2. Professor: Rodrigo Rocha

LINGUAGEM DE PROGRAMAÇÃO C AULA 2. Professor: Rodrigo Rocha LINGUAGEM DE PROGRAMAÇÃO C AULA 2 Professor: Rodrigo Rocha TIPOS, VARIÁVEIS E CONSTANTES Tipos de Dados Variáveis Constantes Introdução a entrada e saída Printf Scanf Ferramentas: Dev-C++ Code::Blocks

Leia mais

PROF. DR. JACQUES FACON

PROF. DR. JACQUES FACON PUCPR- Pontiícia Universidade Católica Do Paraná PPGIA- Programa de Pós-Graduação Em Inormática Aplicada PROF. DR. JACQUES FACO LIMIARIZAÇÃO DE IMAGES POR ETROPIA BIDIMESIOAL Resumo: Ee artigo apresenta

Leia mais

Arrays em Java. Prof. Renato Pimentel. GGI030 Programação Orientada a Objetos. Universidade Federal de Uberlândia Faculdade de Computação

Arrays em Java. Prof. Renato Pimentel. GGI030 Programação Orientada a Objetos. Universidade Federal de Uberlândia Faculdade de Computação Universidade Federal de Uberlândia Faculdade de Computação Arrays em Java Prof. Renato Pimentel GGI030 Programação Orientada a Objetos GGI030 Arrays em Java Prog. Orient. Objetos 1 / 20 Sumário 1 API GGI030

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Funções em Linguagem C Parte II

Funções em Linguagem C Parte II Slides inicialmente preparados pelo Prof. Dr. Claudio Fabiano Motta Toledo Funções em Linguagem C Parte II Profa. Dra. Elisa Yumi Nakagawa 1. Semestre 2017 Sumário Introdução a Ponteiros Escopo de Variáveis

Leia mais

Programação científica C++

Programação científica C++ Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 8 Matrizes como argumento de funções O nome de uma matriz (sem os colchetes) representa o endereço onde a matriz está armazenada. Ao passar o

Leia mais

Controle de Fluxo Utilizando C

Controle de Fluxo Utilizando C Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo III Unidade Curricular: Programação Estruturada Professora: Lara Popov Zambiasi Bazzi Oberderfer Controle

Leia mais

1 Introdução. 2 Especificação

1 Introdução. 2 Especificação Bacharelado em Ciência da Computação DINF / UFPR CI067 - Oficina de Computação 2. semestre 2012 Prof. Luiz Eduardo S. de Oliveira Prof. Diego Roberto Antunes 29/11/2012 Releases - Histórico: r0 29/11/2012

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Ponteiros Parte 1 Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Ponteiros Ponteiro Ponteiros

Leia mais

Introdução à Programação

Introdução à Programação Programação de Computadores Introdução à Programação Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Algoritmo & Programa Variáveis Declaração de tipos Comando de entrada ou de leitura Comando de

Leia mais

Rastreamento de Objetos Baseado em Grafos. Casamento Inexato entre Grafos Relacionais com Atributos

Rastreamento de Objetos Baseado em Grafos. Casamento Inexato entre Grafos Relacionais com Atributos Rastreamento de Objetos Baseado em Casamento Inexato entre Grafos Relacionais com Atributos Exame de Qualificação de Mestrado Ana Beatriz Vicentim Graciano Orientador: Roberto M. Cesar Jr. Colaboradora:

Leia mais

Programação 2012/2013 1º Semestre MEEC Laboratório 2 Semana de 22 de Outubro de 2012

Programação 2012/2013 1º Semestre MEEC Laboratório 2 Semana de 22 de Outubro de 2012 Programação 2012/2013 1º Semestre MEEC Laboratório 2 Semana de 22 de Outubro de 2012 1. Implemente os programas cujos fluxogramas foram definidos na aula de problemas da semana passada: Exercício 7- Calculo

Leia mais

UNIVERSIDADE FEDERAL DE UBERLÂNDIA UFU

UNIVERSIDADE FEDERAL DE UBERLÂNDIA UFU UNIVERSIDADE FEDERAL DE UBERLÂNDIA UFU PLANO DE TRABALHO EM INICIAÇÃO CIENTÍFICA Desenvolvimento e aplicação de um modelo gravitacional simplificado para análise de texturas coloridas. Uberlândia 30/04/2014

Leia mais

Módulo 1 Conceitos Fundamentais

Módulo 1 Conceitos Fundamentais Estruturas de Dados Módulo 1 Conceitos Fundamentais 7/3/2007 (c) Marco A. Casanova - PUC-Rio 1 Preliminares Referência básica: Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas

Leia mais

Linguagem C: Tipos básicos de dados escalares e cadeia de caracteres. Prof. Leonardo Barreto Campos 1

Linguagem C: Tipos básicos de dados escalares e cadeia de caracteres. Prof. Leonardo Barreto Campos 1 Linguagem C: Tipos básicos de dados escalares e cadeia de caracteres Prof. Leonardo Barreto Campos 1 Sumário Dados Escalares; Strings: Strings Constantes; Strings Variáveis; A função gets(); A função strcpy();

Leia mais

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática INF1005 Programação I Pontifícia Universidade Católica Departamento de Informática 1 INF1005 Exercício da Editora Pontifícia Universidade Católica Departamento de Informática 2 O Problema Uma editora fornece

Leia mais

Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C.

Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C. Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C. Prof. Gemilson George E-mail: gemilson@geo.com.br Skype: gemilson_geo MSN: gemilsongeorge@gmail.com Facebook: gemilson Fone:

Leia mais

Disciplina de Algoritmos e Programação

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

Leia mais

Introdução à linguagem C++

Introdução à linguagem C++ Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 2: Introdução à linguagem C++ Introdução à linguagem C++ Conceitos básicos: variáveis, tipos de dados, constantes, I/O, etc. Estruturas

Leia mais

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática INF1005 Programação I Pontifícia Universidade Católica Departamento de Informática 1 INF1005 Função Pontifícia Universidade Católica Departamento de Informática 2 3 Exemplo 9 Determine e informe a raíz

Leia mais

Linguagem de programação Java

Linguagem de programação Java Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Java Professor: Saulo Henrique Cabral Silva ENTENDENDO O JAVA 2 Entendendo o Java executando... A instância da JVM irá iniciar

Leia mais

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações

Leia mais

Morfologia Matemática: algumas aplicações. Rosana Gomes Bernardo Universidade Federal Fluminense

Morfologia Matemática: algumas aplicações. Rosana Gomes Bernardo Universidade Federal Fluminense Morfologia Matemática: algumas aplicações Rosana Gomes Bernardo Universidade Federal Fluminense Introdução Aplicações Motivadoras - Consumo de Gás Natural Roteiro - Placas de Veículos Referências - Cartografia

Leia mais

(Conceito de Variável Indexada, Funções e Procedimentos)

(Conceito de Variável Indexada, Funções e Procedimentos) Curso: Análise e Desenvolvimento de Sistemas Disciplina Algoritmos e Programação (Conceito de Variável Indexada, Funções e Procedimentos) Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com Conceito de

Leia mais

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição

Leia mais

Introdução a Programação na Linguagem C.

Introdução a Programação na Linguagem C. Introdução a Programação na Linguagem C. Prof. Gemilson George E-mail: gemilson@geo.com.br Skype: gemilson_geo MSN: gemilsongeorge@gmail.com Facebook: facebook.com/gemilson Fone: (83)8880-2046 Blog: informaticageo.wordpress.com

Leia mais

Alunos: Caio Santos Renato Miceli

Alunos: Caio Santos Renato Miceli rangel@dscufcgedubr/ rangeldequeirop@yahoocombr Alunos: Caio Santos Renato Miceli UNIVERSIDADE FEDERAL DE CAMPINA GRANDE UFCG Av Aprígio Veloso, S/N Bodocongó CEP: 58109-190 Campina Grande PB www.ufcg.edu.br/

Leia mais

TUTORIAL IMAGE J ANÁLISE AUTOMATIZADA

TUTORIAL IMAGE J ANÁLISE AUTOMATIZADA UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Instituto de Física Programa de Pós-Graduação em Ensino de Física Mestrado Profissional em Ensino de Física TUTORIAL IMAGE J ANÁLISE AUTOMATIZADA Fernanda Marques

Leia mais

Recuperação P1 de Estrutura de Dados

Recuperação P1 de Estrutura de Dados Recuperação P1 de Estrutura de Dados Sigla _IED001_ TURMA: A PERÍODO: MAT ( ) NOT ( ) DISCIPLINA:_Estrutura de Dados DATA: / / Argumente com fundamentando as questões da avaliação indicando porque a questão

Leia mais

INF1005: Programação 1. Vetores. 02/05/10 (c) Paula Rodrigues 1

INF1005: Programação 1. Vetores. 02/05/10 (c) Paula Rodrigues 1 INF1005: Programação 1 Vetores 02/05/10 (c) Paula Rodrigues 1 Tópicos Principais Declaração e inicialização de vetores Exemplos de manipulação de vetores Vetores passados para funções Exemplos de funções

Leia mais

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática INF1005 Programação I Pontifícia Universidade Católica Departamento de Informática 1 INF1005 Exemplo 1 Pontifícia Universidade Católica Departamento de Informática 2 Computação Científica 3 Processador

Leia mais

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro

Leia mais

Inteligência Artificial Escola de Verão Laboratório Associado de Computação e Matemática Aplicada LAC.

Inteligência Artificial Escola de Verão Laboratório Associado de Computação e Matemática Aplicada LAC. Inteligência Artificial Escola de Verão 28 Laboratório Associado de Computação e Matemática Aplicada LAC www.lac.inpe.br/~demisio/ia_lac.html Lógica Nebulosa A Lógica Nebulosa (ou Lógica Difusa Fuzzy Logic

Leia mais

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 6 Ordenação de Vetores 01/10/2015 (c) Dept. Informática - PUC-Rio 1 Tópicos Introdução Ordenação bolha (bubble sort) Ordenação por seleção (selection sort) 01/10/2015 (c) Dept. Informática

Leia mais

Avaliação de Nitidez em Imagens por Aprendizagem

Avaliação de Nitidez em Imagens por Aprendizagem Avaliação de Nitidez em Imagens por Aprendizagem Rafael Anaice CCET Pontifícia Universidade Católica do Paraná, PUCPR Curitiba, Brasil rafael.anaice@ppgia.pucpr.br Jacques Facon PPGIA Pontifícia Universidade

Leia mais

PROGRAMAÇÃO em C. Vitor Valerio de Souza Campos

PROGRAMAÇÃO em C. Vitor Valerio de Souza Campos PROGRAMAÇÃO em C Vitor Valerio de Souza Campos Algoritmos x Programação Algoritmo é um conjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito (Orth, 2001). Programa

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos! Uma característica importante de qualquer algoritmo é seu tempo de execução! é possível determiná-lo através de métodos empíricos, considerando-se entradas diversas! é também

Leia mais

Estrutura do programa

Estrutura do programa Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }

Leia mais

Declarações. Identificadores e Tipos de Dados Básicos

Declarações. Identificadores e Tipos de Dados Básicos Declarações Identificadores e Tipos de Dados Básicos Introdução Um programa em C pode ser visto como uma seqüência de DECLARAÇÕES. De maneira geral, uma DECLARAÇÃO introduz um novo nome - um IDENTIFICADOR

Leia mais

Processing Aula 2. Prof. Wallace Lages

Processing Aula 2. Prof. Wallace Lages Processing Aula 2 Prof. Wallace Lages Aula 2 Computadores e lógica digital Variáveis Condicionais Computador ou calculadora? Computador Máquina programável capaz de realizar automaticamente uma sequência

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Classes e Objetos Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia de Sistemas Efetuando Abstração de Dados com as Linguagens C e C++ O capítulo 4 do

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 3 a Aula Definição de funções

Pedro Vasconcelos DCC/FCUP. Programação Funcional 3 a Aula Definição de funções Programação Funcional 3 a Aula Definição de funções Pedro Vasconcelos DCC/FCUP 2014 Definição de funções Podemos definir novas funções simples usando funções pré-definidas. minuscula :: Char -> Bool minuscula

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br

Leia mais

Restauração de imagens NOAA por Morfologia Matemática

Restauração de imagens NOAA por Morfologia Matemática Restauração de imagens NOAA por Morfologia Matemática GERALD JEAN FRANCIS BANON 1 ANA LÚCIA BEZERRA CANDEIAS 1 1 DPI/INPE Divisão de Processamento de Imagens / Instituto Nacional de Pesquisas Espacias

Leia mais