Notas de Aula de Algoritmos e Programação de Computadores
|
|
- Baltazar Brás
- 5 Há anos
- Visualizações:
Transcrição
1 Notas de Aula de Algoritmos e Programação de Computadores FLÁVIO KEIDI MIYAZAWA com a colaboração de TOMASZ KOWALTOWSKI Instituto de Computação - UNICAMP Versão
2 Estas notas de aula não devem ser usadas como única fonte de estudo. O aluno deve ler outros livros disponíveis na literatura. Nenhuma parte destas notas pode ser reproduzida, qualquer que seja a forma ou o meio, sem a permissão dos autores. Os autores concedem a permissão explícita para a utilização e reprodução deste material no contexto do ensino de disciplinas regulares dos cursos de graduação sob a responsabilidade do Instituto de Computação da UNICAMP. c Copyright 2000 Instituto de Computação UNICAMP Caixa Postal Campinas SP ii
3 14 Figuras e Gráficos Muitas vezes queremos vizualizar objetos que estão sendo representados no modelo computacional, como figuras, curvas, retas, polígonos, etc. Embora muitos objetos possam ter características tridimensionais, na maioria das vezes precisamos traduzi-los de maneira que possam ser visualizados de maneira bidimensional, uma vez que o vídeo é um dispositivo de apresentação bidimensional. Além disso, um vídeo de computador apresenta os objetos como uma matriz de pontos forçando a apresentar os objetos de maneira discretizada. Assim, vamos considerar que o menor elemento usado para apresentar um gráfico/figura é um ponto (pixel). Deste modo, podemos considerar o desenho de uma reta no vídeo como sendo um conjunto de pontos, onde cada ponto da matriz tem coordenadas específicas nos dois eixos da matriz. Naturalmente, os objetos que iremos apresentar não precisam necessariamente estar definidos através de pontos, podendo ter uma representação interna contínua, como é o caso de funções de retas e curvas. Embora, no momento de sua apresentação na tela, esta deva ser discretizada para pontos, uma vez que o vídeo é uma matriz de pontos. Duas maneiras comuns de representação de uma tela gráfica com matriz de pontos por coordenadas são apresentadas nas duas figuras seguintes. Pixel 14 (20,14) (0,0) 20 (0,0) (a) Para simplificar nossos programas, iremos usar a representação (a). 20 No processo de apresentação de objetos gráficos no vídeo, os pontos (representados por bits) são lidos de uma memória (memória de vídeo) e são apresentados no vídeo, em torno de 30 vezes por segundo. Uma figura pode ser apresentada em um dispositivo gráfico usando cores, em geral usando uma quantidade limitada de memória para armazenar cada ponto de uma figura (e conseqüêntemente usando um número limitado de cores). Esta memória dependerá da quantidade de cores possíveis que cada ponto pode assumir. Se consideramos uma figura em preto e branco, cada ponto pode ser representado por apenas um bit. Para representar 256 cores (ou tonalidades diferentes), precisaremos de um byte para representar cada bit. Neste caso, uma figura usando pontos, onde cada ponto assume 256 cores, usa uma memória de vídeo de pelo menos 1 Megabyte. Uma maneira muito comum de se representar pontos coloridos é usando o formato RGB (Red-Green-Blue), através de três valores que indicam a intensidade das cores Vermelha, Verde e Azul (lembrando que uma determinada cor pode ser obtida misturando quantidades específicas destas três cores). 14 (b) (20,14) 14.1 Usando o formato PPM Portable PixMap Para podermos trabalhar com gráficos de maneira independente de computador e sistema operacional, vamos usar um formato que pode ser visualizado em diversos ambientes computacionais. Vamos usar o formato PPM (Portable PixMap Format). Este formato representa uma matriz de pontos em um arquivo, usando o formato RGB, onde cada ponto colorido é apresentado por três bytes seguidos, representando a intensidade das cores vermelha, verde e azul. Cada byte apresenta um valor entre 0 e 255. Portanto, cada pixel pode ser uma de cores (naturalmente, sua visualização dependerá da qualidade do vídeo usado). Uma vez que temos esta matriz de pontos, podemos formar uma figura mudando as cores dos elementos desta matriz, ponto a ponto. Existem diversos programas para visualização de figuras armazenadas em arquivos de diversos formatos gráficos, alguns destes livres ou a preços reduzidos (Freeware e Shareware) que podem visualizar figuras no formato PPM. Para o ambiente Linux, podemos usar o programa GQview, que pode ser obtido na página No ambiente Unix/X Windows, podemos usar o program xv, disponível para a maioria das plataformas. Para o ambiente Windows podemos usar o programa Irfan View32, disponível livremente na rede Por simplicidade, usaremos um tipo restrito para as figuras do formato PPM. Neste formato usamos um cabeçalho apresentando 4 valores descritos em formato texto (P6 Largura Altura 255), separados por um espaço em branco ou 136
4 em linhas diferentes. P6 são os caracteres ASCII P e 6, e devem ser os primeiros dois bytes do arquivo. Em seguida devem vir a largura e altura da figura, Largura e Algura, descritos em números ASCII. Por fim, devem vir o três caracteres ASCII do número 255, indicando que a maior componente de uma cor (intensidade de Vermelho, Verde ou Azul) é 255. Caracteres neste cabeçalho que estejam em uma linha após o símbolo # não são considerados (comentários). Logo em seguida, como último byte deste cabeçalho, temos o byte de valor 10 (NewLine) e em seguida devem vir a seqüência de bytes que representam os pixels da figura. A cada três bytes (usando o sistema RGB) representamos um pixel (o primeiro byte para a intensidade de vermelho, o segundo para a intensidade de verde e o terceiro para a intensidade de azul), ao todo temos Largura Altura pixels. Um exemplo de um cabeçalho para uma figura com 200 pixels de largura e 300 pixels de altura é apresentado no quadro seguinte: P A seqüência de pixels gravados no arquivo PPM segue a ordem apresentada pelas setas na seguinte figura: A (L,A) Último Pixel Primeiro Pixel (0,0) L Para trabalhar com a matriz de pixels, vamos usar um tipo chamado TipoTela, onde cada pixel é do tipo TipoCor, em RGB, declarados no seguinte quadro. const MAXPONTOS 200; type TipoCor record red,green,blue : Byte; TipoTela array[0..maxpontos 1,0..MAXPONTOS 1] of TipoCor; Com estas declarações podemos gerar uma figura, usando uma matriz de MAXPONTOS MAXPONTOS pixels. Além disso, podemos definir algumas cores para facilitar a atribuição de cores. Para definir a cor vermelha, podemos atribuir, em RGB, a intensidade máxima para vermelho (Red) e intensidade zero para as outras duas cores (Green e Blue). Podemos fazer o mesmo processo para definir as cores verde e azul. A cor branca é definida quanto temos a máxima intensidade (valor 255) para as componentes vermelha, verde e azul, e a cor preta é definida pela ausência de cores (valor zero). O quadro da página 138 mostra a definição destas cores e rotinas para iniciar a tela com cor branca e gravar a tela em um arquivo no formato PPM. Obs.: Além do formato PPM, existem diversos outros formatos gráficos, sendo que alguns incorporam métodos de compressão de dados, como é o caso dos formatos GIF e JPG. 137
5 const MAXPONTOS 200; type TipoCor record Red,Green,Blue : Byte; TipoTela array[0..maxpontos 1,0..MAXPONTOS 1] of TipoCor; TipoNomeArq string[100]; TipoArquivoBinario file of byte; var Branco,Vermelho,Verde,Azul,Preto : TipoCor; procedure InicializaAlgumasCores; Cores: Branco, Preto, Vermelho, Verde, Azul Definicao das cores usadas no formato RGB (Red Green Blue) Branco.Red: 255; Branco.Green: 255; Branco.Blue: 255; Preto.Red: 0; Preto.Green: 0; Preto.Blue: 0; Vermelho.Red: 255; Vermelho.Green: 0; Vermelho.Blue: 0; Verde.Red: 0; Verde.Green: 255; Verde.Blue: 0; Azul.Red: 0; Azul.Green: 0; Azul.Blue: 255; procedure InicializaTela(var tela: tipotela); Coloca todos os pixels como Branco var i,j : integer; Obs.: O ponto (0,0) está no canto inferior esquerdo for i: 0 to MAXPONTOS 1 do for j: 0 to MAXPONTOS 1 do tela[i,j] : Branco; inicializatela procedure DesenhaPonto(var tela : tipotela; x,y:integer; Cor:TipoCor); tela[x,y] : Cor; Atribui o pixel (x,y) com Cor procedure EscreveCabecalhoPPM(var arq : TipoArquivoBinario;largura,altura:integer); var i : integer; str1,str2,cabecalho : string[100]; b:byte; str(largura,str1); str(altura,str2); Pegar a largura e altura como strings cabecalho : P6 str1 str2 255 ); for i: 1 to length(cabecalho) do b: ord(cabecalho[i]); write(arq,b); b: 10; write(arq,b); Caracter para Pular linha procedure GravaTela(var t:tipotela; nomearq:tiponomearq); Grava a tela em arquivo var Arq: TipoArquivoBinario; lin,col : integer; assign(arq,nomearq); rewrite(arq); EscreveCabecalhoPPM(Arq,MAXPONTOS,MAXPONTOS); for col: MAXPONTOS 1 downto 0 do for lin: 0 to MAXPONTOS 1 do write(arq,t[lin,col].red); Grava um pixel definido em RGB write(arq,t[lin,col].green); write(arq,t[lin,col].blue); close(arq); GravaTela 138
6 14.2 Retas e Círculos Uma vez que sabemos como imprimir um ponto em uma figura e gravá-la em um arquivo no formato PPM, vamos construir duas primitivas gráficas para construir desenhos mais complexos, as rotinas para desenhar um segmento de reta e um círculo. Para estas duas operações, vamos construir rotinas paramétricas, que definem os pontos do objeto através de um parâmetro. Podemos definir os pontos de um segmento de reta, ligando dois pontos! "$# e! #, usando um parâmetro % no intervalo & " (' como ) *%+#$!,%!#!#.-/%102& " ('3, onde *%+# (#:9%$,%!#;5":< = ">#:9?%;@ Note que quando %AB obtemos o ponto e quando %AC obtemos o ponto. Para desenhar o segmento de reta, podemos plotar alguns pontos de, cuja quantidade dependerá da dimensão da matriz de pontos, escolhendo valores de % distribuídos no intervalo & " ('. Para desenhar um círculo D, com centro FE(G"+E(H# e raio I, também vamos usar um parâmetro % que refletirá um ângulo no intervalo & "> J6#. Primeiramente, vamos verificar a seguinte representação para um círculo com centro em F "+ K# e raio. y sen(t) P t (0,0) cos(t) x Note que as coordenadas do ponto pertencente ao círculo, definido pelo ângulo % é o ponto LMFNPO Q %!#$+Q>RTS%!#!#. Para definir um círculo de raio maior, basta multiplicar as coordenadas dos pontos pelo valor de I, e para que o círculo seja definido com centro FE(G"+E(H#, adicionamos os valores de E$G e E(H nas coordenadas correspondentes. Desta forma, obtemos a seguinte representação paramétrica para os pontos do círculo: DU *%+#$!,%!#!#- %102& "> J6#> onde V%!#4<E$GWXIY9NPO Q %!#$,%!#;ZE(HXIY9Q+RTS%+#;@ Agora podemos definir uma figura ou objeto gráfico, mais elaborado, como um conjunto de objetos primitivos (retas e círculos). Vamos definir este objeto mais elaborado como o tipo TipoFigura da seguinte maneira: const MAXOBJETOS 200; Quantidade máxima de objetos que uma figura pode ter type TipoCor record red,green,blue : Byte; TipoForma (FormaCirculo,FormaReta); TipoObjeto record Cor : TipoCor; case Forma : TipoForma of FormaCirculo : (centrox,centroy:integer; Raio:Real); FormaReta : (p1x,p1y,p2x,p2y:integer); TipoFigura record nobjetos : 0..MAXOBJETOS; quantidade de objetos, armazenados em vetor objeto : array[1..maxobjetos] of TipoObjeto; A seguir, apresentamos um programa, contendo os procedimentos para desenhar um segmento de reta e um círculo, para gravar uma figura de um desenho de um rosto construído com círculos e retas e gravado em um arquivo no formato PPM. 139
7 program ProgFigura; const MAXPONTOS 200; MAXOBJETOS 200; type TipoCor record red,green,blue : Byte; TipoTela array[0..maxpontos 1,0..MAXPONTOS 1] of TipoCor; TipoForma (FormaCirculo,FormaReta); TipoObjeto record Cor : TipoCor; case Forma : TipoForma of FormaCirculo : (centrox,centroy:integer;raio:real); FormaReta : (p1x,p1y,p2x,p2y:integer); TipoFigura record nobjetos : 0..MAXOBJETOS; objeto : array[1..maxobjetos] of TipoObjeto; TipoNomeArq string[100]; TipoArquivoBinario file of byte; var Branco,Vermelho,Verde,Azul,Preto : TipoCor; Incluir as seguintes rotinas procedure InicializaTela(var tela : tipotela); procedure DesenhaPonto(var tela : tipotela; x,y:integer; cor:tipocor); procedure GravaTela(var t : TipoTela; nomearq: tiponomearq); procedure DesenhaReta(var tela : tipotela; x1,y1,x2,y2:integer; cor:tipocor); var t,delta,maxit,x,y : real; representacao parametrica delta : 1/MAXPONTOS; x: x1; y: y1; t: 0; while t[a 1 do 0 [A t [\ 1 x: x1 (x2 x1)] t; y: y1 (y2 y1)] t; DesenhaPonto(tela,round(x),round(y),cor); t: t delta; procedure DesenhaCirculo(var tela : tipotela; cx,cy:integer;raio:real; cor:tipocor); var t,delta,maxit,x,y,doispi : real; representacao parametrica DoisPi : PI ] 2; delta : t: 0; 1/MAXPONTOS; while t[a DoisPi do 0 [A t [\ DoisPi x: cx raio ] cos(t); Y: cy raio ] sin(t); DesenhaPonto(tela,round(x),round(y),cor); t: t delta; Usando Coordenadas Polares 140
8 procedure DesenhaObjeto(var tela : TipoTela; obj : TipoObjeto); case Obj.Forma of FormaCirculo : DesenhaCirculo(tela, obj.centrox, obj.centroy, obj.raio, obj.cor); FormaReta : DesenhaReta(tela, obj.p1x, obj.p1y, obj.p2x, obj.p2y, obj.cor); case procedure DesenhaFigura(var t : TipoTela; var Fig:TipoFigura); var i:integer; for i: 1 to Fig.nobjetos do DesenhaObjeto(t,Fig.objeto[i]); procedure EscreveString(var arq : TipoArquivoBinario;str:string); var i : integer; for i: 1 to length(str) do write(arq,ord(str[i])); var t : tipotela; face : TipoFigura; Definicao de algumas cores usando o formato RGB (Red Green Blue) Branco.Red: 255; Branco.Green: 255; Branco.Blue: 255; Preto.Red: 0; Preto.Green: 0; Preto.Blue: 0; Vermelho.Red: 255; Vermelho.Green: 0; Vermelho.Blue: 0; Verde.Red: 0; Verde.Green: 255; Verde.Blue: 0; Azul.Red: 0; Azul.Green: 0; Azul.Blue: 255; inicializatela(t); cabeca face.objeto[1].forma : FormaCirculo; face.objeto[1].cor : Preto; face.objeto[1].centrox : 100; face.objeto[1].centroy : 100; face.objeto[1].raio : 50; olho esq face.objeto[2].forma : FormaCirculo; face.objeto[2].cor : Azul; face.objeto[2].centrox : 80; face.objeto[2].centroy : 120; face.objeto[2].raio : 6; olho dir face.objeto[3].forma : FormaCirculo; face.objeto[3].cor : Verde; face.objeto[3].centrox : 120; face.objeto[3].centroy : 120; face.objeto[3].raio : 10; nariz face.objeto[4].forma : FormaReta; face.objeto[4].cor : Preto; face.objeto[4].p1x : 100; face.objeto[4].p1y : 110; face.objeto[4].p2x : 100; face.objeto[4].p2y : 90; boca face.objeto[5].forma : FormaReta; face.objeto[5].cor : Vermelho; face.objeto[5].p1x : 80; face.objeto[5].p1y : 80; face.objeto[5].p2x : 120; face.objeto[5].p2y : 80; face.nobjetos : 5; face foi definido com 5 objetos graficos DesenhaFigura(t,face); GravaTela(t, saida.ppm ); end. 141
9 14.3 Exercícios 1. O formato PGM (Portable Grayscale pixmap) é muito parecido com o formato PPM. Neste formato podemos representar figuras monocromáticas, com intensidade nos pixels. I.e., todos os pixels tem apenas uma cor, mas podem ter intensidade que pode ir de 0 a 255. A seguir, listamos as diferenças/semelhanças nos formatos destes dois arquivos: (a) O cabeçalho é descrito da mesma maneira que o cabeçalho de um arquivo PPM, mas em vez de P6, você deve colocar P5. (b) A seqüência de pixels segue a mesma ordem que no formato PPM. (c) Cada pixel usa apenas 1 byte (em vez de 3). O valor deste byte indica a intensidade do pixel. O valor 255 para o branco e 0 para preto. Os valores entre 0 e 255 indicarão uma intensidade intermediária. Faça um programa que desenha a figura apresentada na página 141, mas em formato PGM. 2. Faça outras primitivas gráficas, além do segmento de reta e o círculo: Retângulo, Retângulo Preenchido (todo preenchido com uma cor), Círculo Preenchido, Poligono fechado de ^ pontos. 3. Faça um programa contendo uma rotina que plota uma função _;`# em um arquivo de formato PPM, para valores de em um intervalo &! '. A rotina deve ter o seguinte cabeçalho: procedure PlotaFuncao(f: TipoFuncaoReal; 6P!! "! :real; NomeArquivo:TipoString); onde TipoFuncaoReal foi definido como: type TipoFuncao = function(x:real):real; Com isso, iremos passar a função a plotar como parâmetro. Para plotar os pontos :>_;`#!#, discretize os valores de no intervalo &! ', imprima os pontos _;`# que caem no intervalo &! '. Além disso, imprima as retas dos eixos az ebz, caso estas estejam nos intervalos de impressão. Faça uma imagem de tamanho c)dd pontos (com digamos cfe / e Dgfe / ). Naturalmente você terá que fazer uma reparametrização, de maneira que o ponto F "+ K# na matriz de pontos seja equivalente a posição! "$# e o ponto Fc.$Dh# na matriz de pontos seja equivalente a posição! #. 4. Faça uma rotina que tenha como parâmetros, um vetor de valores reais positivos com ^ elementos. Faça um programa que gere gráficos de barras, histograma e tipo torta, de acordo com a escolha do usuário. 5. A figura de uma letra pode ser armazenada em uma matriz de tamanho i\bi. Gere matrizes para algumas letras, atribuindo os valores dos pontos através de um programa (vc pode usar as rotinas de reta e círculo para isso). Uma vez que você gerou estas letras, faça uma rotina que tem como parâmetro uma posição (bidimensional) e uma letra. A rotina deve imprimir a matriz que forma a letra na tela de pontos. Isto permitirá que possamos escrever na figura. 6. Faça uma rotina que tem como parâmetro os nomes de dois arquivos e um valor real positivo, j. A rotina lê o arquivo do primeiro nome, que é uma figura no formato PPM e gera outro arquivo que é a mesma figura, mas com tamanho reparametrizado de um fator j. 142
Notas de Aula de Algoritmos e Programação de Computadores
Notas de Aula de Algoritmos e Programação de Computadores FLÁVIO KEIDI MIYAZAWA com a colaboração de TOMASZ KOWALTOWSKI Instituto de Computação - UNICAMP Versão 2000.1 Estas notas de aula não devem ser
Leia mais2 Representação de Imagens em Arquivos Texto
MAP-2121 - Segundo Exercício Programa - 2013 Instruções gerais - Os exercícios computacionais pedidos na disciplina Cálculo Numérico têm por objetivo fundamental familiarizar o aluno com problemas práticos
Leia maisMotivação Por que estudar?
Aula 04 Imagens Diogo Pinheiro Fernandes Pedrosa Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Curso de Ciência da Computação Motivação Por que estudar? Imagens digitais
Leia maisImagem e Gráficos. vetorial ou raster?
http://computacaografica.ic.uff.br/conteudocap1.html Imagem e Gráficos vetorial ou raster? UFF Computação Visual tem pelo menos 3 grades divisões: CG ou SI, AI e PI Diferença entre as áreas relacionadas
Leia maisImagem ou Desenhos e Gráficos vetorial ou raster?
http://computacaografica.ic.uff.br/conteudocap1.html Imagem ou Desenhos e Gráficos vetorial ou raster? Computação Visual A CG (ou CV) tem pelo menos 3 grades divisões: SI (ou CG), AI e PI Inicialmente
Leia maisProcessamento Digital de Imagens
Processamento Digital de Imagens Aula 02 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... Unidade I - Introdução ao
Leia maisAula 07. Representação da Informação. Prof. Dr. Dilermando Piva Jr.
07 Aula 07 Representação da Informação Prof. Dr. Dilermando Piva Jr. Site Disciplina: http://fundti.blogspot.com.br/ Informação - é gerada a partir da definição e organização das relações entre os dados.
Leia maisPascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string
Pascal -Cabeçalho do programa Áreas do programa -Área de declarações -Corpo do programa - label - const - type - var - procedure - function - integer - real - byte - boolean - char - string Program
Leia maisImagem digital. Elicardo Gonçalves
Imagem digital Elicardo Gonçalves As imagens são armazenadas no computador no formato de matrizes numéricas. Cada elemento da matriz representa um pixel (picture cell), que é a menor divisão desta imagem.
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;
Leia maisEstruturas de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números
Leia maisInformática I. Aula Aula 22-12/11/2007 1
Informática I Aula 22 http://www.ic.uff.br/~bianca/informatica1/ Aula 22-12/11/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript
Leia maisMAP Cálculo Numérico com Aplicações em Física Instituto de Física 1 o Semestre de 2008 Exercício-programa 1
MAP0214 - Cálculo Numérico com Aplicações em Física Instituto de Física 1 o Semestre de 2008 Exercício-programa 1 Bacia de atração do Método de Newton em duas dimensões (data de entrega: 12/05/2008 no
Leia mais2 Segmentação de imagens e Componentes conexas
Universidade Tecnológica Federal do Paraná (UTFPR) Departamento Acadêmico de Informática (DAINF) Algoritmos II Professor: Alex Kutzke (alexk@dainf.ct.utfpr.edu.br) Especificação do Primeiro Trabalho Prático
Leia maisIntrodução ao Processamento de Imagens Digitais Aula 01
Introdução ao Processamento de Imagens Digitais Aula 01 Douglas Farias Cordeiro Universidade Federal de Goiás 06 de julho de 2015 Mini-currículo Professor do curso Gestão da Informação Formação: Graduação
Leia maisAlgoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Strings. Para começar... Strings. Exemplo...
Algoritmos e Lógica de Programação 80 horas // 4 h/semana Strings ou cadeias de Caracteres Aula 14 Prof. Piva Para começar... Strings são cadeias de caracteres que armazenam dados textuais e, portanto,
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisMATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21
AULA 21 MATRIZES - PARTE 1 21.1 Definição e Manipulação de Matrizes Sabemos como definir variáveis de um novo tipo de dados, denominado vetor, que representam seqüências de valores de um mesmo tipo. Por
Leia maisOs computadores processam dados digitais ou discretos. Os dados são informação representada num sistema digital de símbolos.
Os computadores processam dados digitais ou discretos. Os dados são informação representada num sistema digital de símbolos. Todas as formas de informação devem ser convertidas para a forma digital de
Leia maisFaculdade de Computação
Faculdade de Computação Programação Procedimental 13 Laboratório de Programação - Algoritmos Prof. Cláudio C. Rodrigues Prof. Fabíola Gonçalves I. Introdução a Arquivos A motivação para utilizar arquivos
Leia maisProcessamento Digital de Imagens
Processamento Digital de Imagens Aula 03 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... Unidade II - Básico sobre
Leia maisCURSO BÁSICO DE PROGRAMAÇÃO AULA 17. Manipulação de arquivos binários.
CURSO BÁSICO DE PROGRAMAÇÃO AULA 17 Manipulação de arquivos binários. Revisão Abrindo arquivos de texto em C FILE *arquivo = fopen(, ); FILE: Tipo do objeto de arquivo. fopen: Função
Leia maisNotas de Aula de Algoritmos e Programação de Computadores
Notas de Aula de Algoritmos e Programação de Computadores FLÁVIO KEIDI MIYAZAWA com a colaboração de TOMASZ KOWALTOWSKI Instituto de Computação - UNICAMP Versão 2000.1 Estas notas de aula não devem ser
Leia maisMC-102 Aula 01. Instituto de Computação Unicamp
MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2016 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos
Leia maisUnidade 4: Introdução à Lógica de Programação - Parte II
Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação
Leia mais1 O filtro da mediana
CCM0118 Computação I Departamento de Ciência da Computação IME-USP Curso de Ciências Moleculares Turma 22 Segundo Semestre de 2012 Quarto Exercício-Programa Prazo de entrega: até 4 de dezembro de 2012.
Leia maisMC-102 Aula 24 Arquivos em C e Parâmetros do Programa
MC-102 Aula 24 Arquivos em C e Parâmetros do Programa Instituto de Computação Unicamp 3 de Novembro de 2016 Roteiro 1 Arquivos Introdução a Arquivos em C Nomes e Extensões Tipos de Arquivos Caminhos Absolutos
Leia maisTratamento de Caracteres
Tratamento de Caracteres Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan A tabela ASCII Se os computadores manipulam apenas números, como eles podem armazenar os caracteres de um nome
Leia maisUnidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano
Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos
Leia maisEstrutura de Dados Básica
Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 5: Registros O objetivo desta aula é apresentar os tipos de dados definidos pelo programador, bem como exibir usos comuns desses tipos de
Leia maisArquivos. Arquivos correspondem a unidades de armazenamento, tipicamente gravados em unidades de memória secundária.
Arquivos Arquivos correspondem a unidades de armazenamento, tipicamente gravados em unidades de memória secundária. Sistemas operacionais, como Linux ou Windows, permitem que arquivos sejam criados e recuperados
Leia maisSSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Introdução a Linguagem C GE4 Bio GE4Bio Grupo de Estudos
Leia maisProgramação de Computadores I Estrutura de um Programa Procedimentos de Entrada e Saída PROFESSORA CINTIA CAETANO
Programação de Computadores I Estrutura de um Programa Procedimentos de Entrada e Saída PROFESSORA CINTIA CAETANO Estrutura de um programa Todo programa é subdividido em três áreas distintas: cabeçalho
Leia maisAula 3:Introdução à Linguagem C
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SANTA CATARINA CAMPUS JOINVILLE DEPARTAMENTO DO DESENVOLVIMENTO DO ENSINO
Leia mais3ª Lista de Exercícios de Programação I
3ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C, apoiadas por representação em algoritmo para planejamento. 1. Desenvolva um programa que leia dois valores a
Leia maisAula de Arquivos. Jesimar da Silva Arantes. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP
Aula de Arquivos Jesimar da Silva Arantes Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP Estagiário PAE: Jesimar da Silva Arantes Professor: Claudio Fabiano
Leia maisAula /2 Sistemas de coordenadas Window x Viewport
http://computacaografica.ic.uff.br/conteudocap2.html Aula 8 2018/2 Sistemas de coordenadas Window x Viewport Sistemas de Coordenadas O Sistema de Coordenadas nos dá uma referência sobre o tamanho e a posição
Leia maisAntónio Costa. Paulo Roma Cavalcanti
Introdução à Computação Gráfica Preâmbulo Adaptação: Autoria: João Paulo Pereira António Costa Claudio Esperança Paulo Roma Cavalcanti Computação Gráfica Modelos Matemáticos Análise (reconhecimento de
Leia maisSistemas Numéricos - Aritmética. Conversão de Bases. Prof. Celso Candido ADS / REDES / ENGENHARIA
Conversão de Bases 1 NOTAÇÃO POSICIONAL - BASE DECIMAL Desde os primórdios da civilização o homem adota formas e métodos específicos para representar números, para contar objetos e efetuar operações aritméticas.
Leia maisMétodos Computacionais em Física
Métodos Computacionais em Física Tatiana G. Rappoport tgrappoport@if.ufrj.br 214-2 Variáveis indexadas (arrays) Diversos problemas requerem o uso de vetores ou matrizes: Um conjunto de dados do mesmo tipo
Leia maisPrática de Programação. Prof. Tiago A. E. Ferreira Aula 9 Estruturas, Uniões, Enumerações e Tipos Definidos pelo Usuário
Prática de Programação Prof. Tiago A. E. Ferreira Aula 9 Estruturas, Uniões, Enumerações e Tipos Definidos pelo Usuário Introdução A linguagem C/C++ permite criar tipos de dados definidos pelo usuário
Leia maisALGORITMOS EXERCÍCIOS LISTA 01: ESTRUTURAS SEQUENCIAIS Profª Lucília Ribeiro. Como calcular?
ALGORITMOS EXERCÍCIOS LISTA 01: ESTRUTURAS SEQUENCIAIS Profª Lucília Ribeiro 01 Escreva um programa que receba a coordenada superior esquerda de um retângulo, bem como a largura e altura do mesmo e em
Leia maisArquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;
1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e
Leia maisCilindros projetantes de uma curva
Cilindros projetantes de uma curva Dada uma curva C no espaço é possível obter tres cilindros retos cujas interseções fornecem a curva C. Estes cilindros são obtidos projetando-se a curva em cada um dos
Leia maisRepresentando e Processando Informção
Representando e Processando Informção Introdução a ECI Aula 6 Daniel R. Figueiredo LAND PESC/COPPE/UFRJ Informação O que é informação? Pergunta bem difícil de responder Definição pragmática: informação
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 7 Vetores Profa. Marina Gomes marinagomes@unipampa.edu.br 19/05/2017 Engenharia de Computação - Unipampa 1 Motivação Problema: Leia as notas de uma turma de cinco estudantes
Leia maisRoteiro para Aula 1 de laboratório. 1) Mostrar estrutura básica de um código em Fortran. algoritmo. program nome_da_codificacao.
Universidade do Estado do Rio de Janeiro Instituto de Física Armando Dias Tavares Departamento de Física Aplicada e Termodinâmica Laboratório de Física Computacional/IF Roteiro para Aula 1 de laboratório
Leia maisLINGUAGEM C: ARRAYS DE CARACTERES: STRINGS
LINGUAGEM C: ARRAYS DE CARACTERES: STRINGS Prof. André Backes DEFINIÇÃO String Sequência de caracteres adjacentes na memória. Essa sequência de caracteres, que pode ser uma palavra ou frase Em outras palavras,
Leia maisWorking 03 : Conceitos Básicos I
Working 03 : Conceitos Básicos I Objetivos: Dominar os conceitos básicos da linguagem de programação C; Aprender a utilizar o compilador, identificando os erros de sintaxe do código fonte; Prazo de Envio:
Leia maisOrganização de programas em Python. Vanessa Braganholo
Organização de programas em Python Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem
Leia maisPadrões e Tipos de Dados de Mídia. Imagem
Padrões e Tipos de Dados de Mídia. Imagem CONFERENCIA 3 Ing. Yamila Díaz Suárez Revisão de tarefa Realizar um resumo sobre a gestão eletrónica de documentos. Pesquisar quais ferramentas existem. Contéudo
Leia maisAula Expositiva 2. DCC 001 Programação de Computadores. 2º Semestre de 2011 Prof. Osvaldo Carvalho UFMG DCC
UFMG DCC001 2011-2 1 Aula Expositiva 2 2.1 Bits e Códigos 2.2 Circuitos Combinatórios 2.2.1 Álgebra de Boole 2.2.2 Portas Lógicas 2.2.4 Aritmética com portas lógicas 2.2.5 Síntese de Circuitos Combinatórios
Leia maisProgramação de Computadores II
Programação de Computadores II 1. Programação Básica 2019.1 Slides adaptados do material de Karina Mochetti Problema, Algoritmo, Programa Um programa de computador é a implementação de um algoritmo para
Leia maisEXERCÍCIO DE SONDAGEM SEMESTRE DATAS: 21/06/2016 (TURMAS 01 E 02) Matrícula Nome Nota
Professor de INTRODUÇÃO À PROGRAMAÇÃO Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Sistemas e Computação Disciplina: Técnicas de Programação Prof.:
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisTCC 00308: Programação de Computadores I Organização de programas em Python
TCC 00308: Programação de Computadores I 2017.1 Organização de programas em Python Vamos programar em Python! Como um programa é organizado? Quais são os tipos de dados disponíveis? Como variáveis podem
Leia maisMatrizes (Vetores Bidimensionais)
(Vetores Bidimensionais) Objetivos Conceituação de Vetores Bidimensionais Manipulação de Vetores Bidimensionais Entender a diferença entre uso dos diferentes vetores Entender como manipular entrada, saída
Leia maisPROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3. Prof. Dr. Daniel Caetano
PROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3 Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar os conceitos básicos da linguagem ActionScript 3.0 Capacitar o aluno para criar programas
Leia mais3. Programação Gráfica
3. Programação Gráfica De uma forma geral, um programa de computador deve conter uma entrada de dados, algoritmos matemáticos para tratamento de dados e saídas para visualizar os resultados. A saída pode
Leia maisPipeline de Visualização 3D
Pipeline de Visualização 3D André Tavares da Silva andre.silva@udesc.br Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci Processo de Visualização https://www.youtube.com/watch?v=ogqam2mykng Processo de
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 05 Introdução ao Löve Edirlei Soares de Lima Hello World em Löve function love.draw() love.graphics.print("hello World", 360, 300) end O comando
Leia maisAlgoritmos e Técnicas de Programação
Algoritmos e Técnicas de Programação Estrutura, Visualg e Variáveis filipe.raulino@ifrn.edu.br Programação Estruturada A programação estruturada (Top-Down) estabelece uma disciplina de desenvolvimento
Leia maisComputação Eletrônica. Strings. Prof: Luciano Barbosa. CIn.ufpe.br
Computação Eletrônica Strings Prof: Luciano Barbosa Recapitulando: Vetores Representar uma coleção de variáveis de um mesmo tipo em uma dimensão Ex: float notas[5]; ou float notas[5] = {2.5,3.2,1.9,4.1,2.0};
Leia maisIntrodução à Programação C
Introdução à Programação C Fabio Mascarenhas - 2014.2 http://www.dcc.ufrj.br/~fabiom/introc Estado A interação com o usuário de nossas aplicações iniciais é bem linear: entrada com scanf, saída com puts
Leia maisAula 4 Introdução ao C
Considere o nosso MSC. O Processador Central, entende o conjunto de instruções, leia, imprima, atribuição e condicional e com ela resolvemos vários problemas, construindo vários algoritmos. As instruções
Leia maisIntrodução à linguagem de programação C. Alexandre Mota
Introdução à linguagem de programação C Alexandre Mota acm@cin.ufpe.br Do código-fonte ao executável Nossa preocupação maior neste curso está com o código-fonte. Nossa carta de intenções para com o computador!
Leia maisIntrodução à Ciência da Computação
Créditos Introdução à Ciência da Computação Tópicos Preliminares em Programação Exceto por adaptações e complementos menores, o material a seguir é composto de slides gentilmente cedidos por: Prof. Rudinei
Leia maisRefinamentos sucessivos
Refinamentos sucessivos Objetivos: Estudar a técnica de refinamentos sucessivos Jogo: 2048 Implementaremos o jogo 2048, com o objetivo de estudar a manipulação dos elementos de uma matriz Utilizaremos
Leia maisOficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini
Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: jose.perini@metrocamp.edu.br Blog: http://profperini.com Formação
Leia maisPROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3. Prof. Dr. Daniel Caetano
PROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3 Prof. Dr. Daniel Caetano 2012-2 Objetivos Apresentar os conceitos básicos da linguagem ActionScript 3.0 Capacitar o aluno para criar programas
Leia maisProcessamento Digital de Imagens
1 Ciência da Computação Processamento Digital de Imagens Prof. Sergio Ribeiro Tópicos Introdução Espectro Eletromagnético Aquisição e de Imagens Sensoriamento Remoto 2 Introdução Espectro Eletromagnético
Leia maisLINGUAGEM C: ARRAY: VETORES E MATRIZES
LINGUAGEM C: ARRAY: VETORES E MATRIZES Prof. André Backes POR QUE USAR ARRAY? As variáveis declaradas até agora são capazes de armazenar um único valor por vez. Sempre que tentamos armazenar um novo valor
Leia maisProcessamento Digital de Imagens
Ciência da Computação Processamento Digital de Imagens Prof. Sergio Ribeiro Tópicos Introdução Espectro Eletromagnético Aquisição e Digitalização de Imagens Efeitos da Digitalização Digitalização Sensoriamento
Leia mais3.1 - Funções para manipular dados de entrada e saída padrão
1616161616161616161616161616161616161616161616161616 3- ENTRADA E SAÍDA EM C Os principais meios para executar operações de entrada e saída (E/S) são: Entrada e saída pelo console (ou padrão): teclado
Leia maisMatrizes esparsas: definição
Matrizes esparsas: definição o objetivo é mostrar os métodos de armazenamento e manipulação de matrizes esparsas esparsidade de uma matriz é a relação entre o número de elementos nulos de uma matriz e
Leia maisFACCAT Sistemas de Informação. Estruturas de Dados
FACCAT Sistemas de Informação Estruturas de Dados Aula 1 http://professores.faccat.br/azambuja (Estrutura de Dados) Definição de variáveis Podemos imaginar uma variável como o local onde se pode colocar
Leia mais4. Curvas Paramétricas e Transformações 2D
4. Curvas Paramétricas e Transformações 2D Curvas Paramétricas (fonte: Wikipédia) Em matemática, uma equação paramétrica é uma forma de representar uma curva (ou, em geral, uma superfície) como a imagem
Leia maisLINGUAGEM 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 maisConversão de Bases. Introdução à Organização de Computadores 5ª Edição/2007 Página 54. Sistemas Numéricos - Aritmética. Prof.
Conversão de Bases Introdução à Organização de Computadores 5ª Edição/2007 Página 54 1 NOTAÇÃO POSICIONAL - BASE DECIMAL O SISTEMA DE NUMERAÇÃO É FORMADO POR UM CONJUNTO DE SÍMBOLOS UTILIZADOS PARA REPRESENTAR
Leia maisPROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95
PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:
Leia maisTipos Algébricos. Programação Funcional. Capítulo 11. José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto
Programação Funcional Capítulo 11 Tipos Algébricos José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2012.1 1/33 1 Tipos Algébricos 2/33 Tópicos 1 Tipos Algébricos 3/33
Leia maisComputação 2. Aula 3. Diego Addan Vetores de caracteres (strings)
Computação 2 Aula 3 Vetores de caracteres (strings) Diego Addan diegoaddan@gmail.com Vetor de caracteres (Strings) Uma cadeia de caracteres, mais conhecida como string, é uma seqüência de caracteres (letras
Leia maisLÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES
LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2013-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos
Leia maisAula 10: Introdução a Vetores e Matrizes
Aula 10: Introdução a Vetores e Matrizes Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Vetores e Matrizes Programação de Computadores IV 1 / 50 Agenda
Leia maisAlgoritmo e Programação Matemática
Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador
Leia maisManual de Utilização da ferramenta IPTraf Laboratório de Redes de Alta Velocidade COPPE / UFRJ
Manual de Utilização da ferramenta IPTraf Laboratório de Redes de Alta Velocidade COPPE / UFRJ versão 1.0 Introdução O portal IpTraf Um dos maiores desafios no gerenciamento de backbones IP é identificar
Leia maisUNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA. DIM0320 Algoritmos e Programação de Computadores
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA DIM0320 Algoritmos e Programação de Computadores #VARIÁVEIS #TIPOS DE DADOS E L I EZ I O S O A R ES E L I EZ
Leia maisUnidade 5: Introdução à Programação com Python Prof. Daniel Caetano
Informática para Engenharia 1 Unidade 5: Introdução à Programação com Python Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação com a linguagem Python. Bibliografia:
Leia maisConsidere uma máquina que utiliza uma palavra de 10 bits. Suponha o seguinte padrão de bits:
PROVA DE CONHECIMENTOS ESPECÍFICOS 1 a QUESTÃO: (1, ponto) Representação binária Considere uma máquina que utiliza uma palavra de 1 bits. Suponha o seguinte padrão de bits: 1111. a) Indique o valor em
Leia maisLinguagem de programação: Pascal
Aula 04 Linguagem de programação: Pascal Prof. Tecgº Flávio Murilo 26/03/2013 1 Pascal Introdução Pascal é uma linguagem de programação estruturada, criada em 1970 pelo suíço Niklaus Wirth, dando este
Leia maisTexto retirado e adaptado da apostila Curso de Linguagem Pascal, disponível no site (autor: desconhecido).
Texto retirado e adaptado da apostila Curso de Linguagem Pascal, disponível no site http://www.portaldaprogramacao.com (autor: desconhecido). Leitura indicada: Notas de Aula de Algoritmos e Programação
Leia maisAula 15 Variáveis Indexadas (vetores)
Aula 15 Variáveis Indexadas (vetores) Além das variáveis normais já conhecidas, podemos ter também variáveis indexadas. Tais variáveis são referenciadas por um nome e um índice. Especialmente úteis para
Leia maisProgramação de Computadores III
Programação de Computadores III Aula 3 Professora Bianca (Sala 302 Bloco E) bianca@ic.uff.br http://www.ic.uff.br/~bianca/prog3/ Aula 3-12/09/2006 1 Aula de Hoje Revisão da aula passada: Conceitos gerais
Leia maisCI208 - 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 maisMídias Discretas. Introdução à Ciência da Informação
Mídias Discretas Introdução à Ciência da Informação Mídias Discretas Mídias discretas (estáticas) Texto Gráficos e Imagens Estáticas Caracteres são convertidos para uma representação com um número fixo
Leia maisOficina de Python Prof. Me. José Carlos Perini
Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação
Leia maisLinguagem 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 maisImagem Digital. Claudio Carvilhe
Imagem Digital Claudio Carvilhe Imagem Digital Roteiro Introdução. Pixel. Resolução espacial. Cor. Processamento de imagens. Introdução Informação Visual: Imagem vista na tela. Informação Descritiva: Modelo
Leia maisAntes de começarmos o processo de Vetorização, precisamos saber a diferença entre imagem e vetor.
Parte 1: Vetorizando 1.1: Imagem e Vetor Antes de começarmos o processo de Vetorização, precisamos saber a diferença entre imagem e vetor. Imagens são quaisquer tipos de figura apresentada ao usuário do
Leia maisCapítulo 7 Matriz. Roteiro
Capítulo 7 Matriz Licenciatura em Computação Fundamentos de Lógica para Programação Prof. Nícolas Trigo nicolas.trigo@ifsertao-pe.edu.br http://professor.ifsertao-pe.edu.br/nicolas.trigo Roteiro Definição
Leia mais