Registos em Ficheiros - Estruturas. Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2009/2010
|
|
- Silvana Belém Lemos
- 8 Há anos
- Visualizações:
Transcrição
1 Registos em Ficheiros - Estruturas Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2009/ Maio 2011 Registos em Ficheiros - Estruturas 1
2 Leitura de Ficheiros Texto Muitos ficheiros apresentam informação na base de texto, pelo que a sua leitura pode ser feita quer através do formato caracter (%) quer através do formato string (%s). O formato caracter lê todos os caracteres do ficheiro, nomeadamente os caracteres de controle como os tabs e mudanças de linha. A função ler_texto lê o texto do ficheiro file_in e retorna-o na string txt: function txt = ler_chars(fname); [fid,msg] = fopen(fname,"r"); txt= ""; while!feof(fid) [wrd,count] = fscanf(fid,"%c","c"); txt = [txt,wrd]; endwhile; endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 2
3 Leitura de Ficheiros Texto O formato string permite separar todas as palavras, nomeadamente criando uma matriz cujas linhas correspondem às palavras do texto (completadas por espaços). De notar que os separadores de palavras correspondem aos espaços e aos caracteres de controle, não incluindo os caracteres de pontuação habitualmente considerados numa linguagem natural (pontos, vírgulas,...). Notar ainda que os caracteres de mudança de linha não são retornados A função ler_palavras lê o texto do ficheiro fname e retorna-o na matriz txt: function txt = ler_palavras(fname); [fid,msg] = fopen(fname,"r"); txt= ""; while!feof(fid) [wrd,count] = fscanf(fid,"%s","c"); txt = [txt;wrd]; endwhile; fclose(fid); endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 3
4 Leitura de Ficheiros Texto Finalmente, os ficheiros podem ser lidos linha a linha, com a instrução fgetl. Esta instrução lê uma string de um ficheiro até ao caracter mudança de linha ( \n ), não se detendo em espaços ou outros caracteres de controle como os tabs. De notar o tratamento de linhas brancas : linhas apenas com espaços são retornadas, embora as linhas sem caracteres o sejam. A função ler_linhas lê o texto do ficheiro fname e retorna-o na matriz txt, linha a linha: function txt = ler_linhas(fname); [fid,msg] = fopen(fname,"r"); txt= ""; while!feof(fid) line = fgetl(fid); txt = [txt;line]; endwhile; endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 4
5 Registos em Ficheiros Muita informação alfanumérica está registada em ficheiros, na forma de registos. Por exemplo, numa base de dados da empresa, são mantidos ficheiros com informação sobre os empregados da empresa. Muitas aplicações (de gestão) consistem em ler ficheiros e criar outros com a informação devidamente processada. Por exemplo: ler um ficheiro de empregados e escrever outro, apenas com os empregados com vencimento superior a cod nome vencimento data 610 Paulo Fernandes Lopes /04/ Pedro Vieira /06/ Marta Costa Martins /01/ Rui Vasco Pereira /04/ Jorge Barata /09/ Maio 2011 Registos em Ficheiros - Estruturas 5
6 Estruturas Embora Vectores e Matrizes sejam muito úteis quando os dados são todos do mesmo tipo (no Octave, de qualquer tipo numérico), nestes casos, a informação que se pretende agrupar com um só identificador não é do mesmo tipo. Neste caso, a informação referente a cada empregado da empresa deve conter os seguintes itens: Um código (tipicamente um número inteiro) Um nome (uma cadeia de caracteres) Um vencimento (um decimal) Uma data de entrada (uma cadeia, ou 3 campos numéricos, para o dia, mês e ano) cod nome venc data 610 Paulo Fernandes Lopes /04/ Maio 2011 Registos em Ficheiros - Estruturas 6
7 Estruturas As várias linguagens de programação permitem o agrupamento destes dados heterogéneos, com um mesmo identificador de uma forma variada (records no Pascal, Struct em C,...) O Octave adopta uma designação semelhante à do C, denominando estes agrupamentos como estruturas. Consideremos pois o caso do empregado abaixo, em que gostaríamos de agregar toda a informação numa única variável, do tipo estrutura, que denotaremos como emp. cod nome venc data 610 Paulo Fernandes Lopes /04/ Maio 2011 Registos em Ficheiros - Estruturas 7
8 Estruturas Uma vez definidos os nomes dos campos da estrutura, podemos atribuir-lhe os valores pretendidos. O acesso a um campo da estrutura é feito fazendo suceder ao nome da estrutura o nome do campo pretendido, separado por um ponto (. ). Por exemplo, a atribuição dos 4 valores dos campos pode ser feita pelas seguintes atribuições: emp.cod = 610; emp.nome = Paulo Fernandes Lopes ; emp.venc = ; emp.data= 15/04/1996 ; emp = cod nome venc data 610 Paulo Fernandes Lopes /04/ Maio 2011 Registos em Ficheiros - Estruturas 8
9 Estruturas Uma vez agrupados os vários items de informação numa só variável do tipo estrutura, podemos referir alguns campos depois de verificar outros. Por exemplo, dados vários empregados com o tipo referido, indicar qual o nome dos que ganham mais de 1000 euros. Na sintaxe do Octave, tal poderia ser feito através da instrução condicional if emp.venc > 1000 then disp(emp.nome) endif No entanto este tipo de processamento só é verdadeiramente útil se tivermos a possibilidade de aceder a todos os empregados de uma forma genérica. 4 Maio 2011 Registos em Ficheiros - Estruturas 9
10 Por exemplo, se tivessemos uma tabela com várias linhas, com códigos na primeira coluna e vencimentos na 2ª coluna, poderíamos apresentar os códigos dos empregados com vencimento superior a 1000 euros através da seguinte instrução iterativa: for i = 1:n if tabela(i,2) > 1000 disp(tabela(i,1)) endif endfor; Por analogia, o que é necessário é poder aceder a uma sequência de (1 a n) estruturas do tipo da do empregado. Tabelas Na maioria das linguagens de programação, essa analogia é imediata, já que se podem especificar vectores de estruturas. Tal é o caso do Octave, mas apenas a partir da versão 3.X (as anteriores usavam o conceito de lista, entretanto descontinuado). 4 Maio 2011 Registos em Ficheiros - Estruturas 10
11 Nestas linguagens, podemos representar o conjunto de empregados através de um vector, emps, em que cada elemento é uma estrutura (de empregado) com os campos definidos como anteriormente. Vectores de Estruturas ind cod nome vencimento data Paulo Fernandes Lopes /04/ Pedro Vieira /06/ Marta Costa Martins /01/ Rui Vasco Pereira /04/ Jorge Barata /09/2002 Agora, para obter os códigos dos empregados com vencimento superior a 1000 euros bastará usar uma seguinte instrução iterativa, análoga à anterior for i = 1:n if emps(i).vencimento > 1000 disp(emps(i).nome) endif endfor; for i = 1:n if tabela(i,2) > 1000 disp(tabela(i,1)) endif endfor; 4 Maio 2011 Registos em Ficheiros - Estruturas 11
12 Registos em Ficheiros Sendo os registo geralmente guardados em ficheiros texto, há que saber ler esta informação, para as estruturas adequadas.. Apesar de, tipicamente, existirem (pelo menos) duas formas de armazenamento dessas sequências, a leitura de ficheiros e empregados pode ser feito de uma forma genérica. Na função genérica abaixo, o parâmetro mode é passado para a função ler_emp/ 2, que depende do formato de armazenamento utilizado. function Emps = ler_emps(fname, mode); [fid, msg] = fopen(fname, "r"); i = 0; [emp, ok] = ler_emp(fid, mode); while ok i = i+1; Emps(i) = emp; [emp, ok] = ler_emp(fid, mode); endwhile; fclose(fid); endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 12
13 Registos em Ficheiros Para ler cada registo, há que saber a forma como são codificadas essas sequências. Tipicamente, existem duas formas de armazenamento dessas sequências: Comprimento Fixo: As sequências têm sempre o mesmo número de caracteres (sendo usados espaços se necessário); Comprimento Variável: As sequências têm o número de caracteres necessários, sendo necessários caracteres separadores, tipicamente tabs (horizontais). cod nome vencimento data 610 Paulo Fernandes Lopes /04/ Pedro Vieira /06/ Marta Costa Martins /01/ Rui Vasco Pereira /04/ Jorge Barata /09/ Maio 2011 Registos em Ficheiros - Estruturas 13
14 Registos em Ficheiros Por exemplo, o nome Pedro Vieira, no ficheiro abaixo, pode ser codificado Comprimento Fixo: Com = 12 caracteres (incluindo o espaço), mais 13 espaços, para permitir sequências de comprimento 25, que podem armazenar nomes com até 25 caracteres (incluindo espaços); Comprimento Variável: Apenas com os 12 caracteres necessários, sendo separado do vencimento por um tab horizontal ( \t ). cod nome vencimento data 610 Paulo Fernandes Lopes /04/ Pedro Vieira /06/ Marta Costa Martins /01/ Rui Vasco Pereira /04/ Jorge Barata /09/ Maio 2011 Registos em Ficheiros - Estruturas 14
15 Registos em Ficheiros Em Octave (e em C) os dois tipos de codificação requerem instruções de leitura padronizada (com templates) diferentes. Comprimento Fixo: Utiliza-se um template %nc em que n é o número de caracteres a ler; Comprimento Variável: Utiliza-se um template %s ; Neste último caso, levanta-se um problema: o template %s, não lê espaços nem caracteres brancos. Assim, o nome Pedro Vieira seria lido não como 1, mas sim como 2 sequências, mas em geral, o número de nomes (próprios e apelidos) não é conhecido. Isto pode ser evitado com o uso de espaços especiais ( non break spaces - ASCII 160), que são considerados como quaisquer outros caracteres, mas impressos como espaços. Mas esta solução tem outros inconvenientes, nomeadamente obrigando a um tratamento especial na separação de palavras. 4 Maio 2011 Registos em Ficheiros - Estruturas 15
16 Leitura de Registos em Ficheiros Comprimento Variável: Neste caso, aconselha-se a leitura de um registo de cada vez (através da instrução fgetl/1) e obter os vários campos das linhas assim obtidas. A separação dos vários campos pode fazer-se pela instrução split/2, assumindose o caracter tab ( \t ) como separador dos campos. Obtem-se assim uma matriz de texto, em que cada campo aparece numa linha própria. Comprimento Fixo: Agora, todos os registos do ficheiro podem ser lidos com instruções de leitura padronizada, fscanf, usando-se os padrões apropriados. A função de leitura de um registo é apresentada de seguida em ambos os formatos de codificação, sendo de registar a diferente forma de identificar o fim do ficheiro (e um registo vazio). 4 Maio 2011 Registos em Ficheiros - Estruturas 16
17 Leitura de Registos em Ficheiros A função abaixo prevê os dois métodos de leitura, distinguindo-os pelo valor do parâmetro modo: 1/variável e 2/ fixo. De notar booleano ok para sinalizar se uma estrutura emp é de facto lida (e retornada) A inicialização de emp, para o caso de a leitura não se fazer (esta inicialização é opcional, mas evita mensagens de aviso que o parâmetro de saída emp não existe). function [emp,ok] = ler_emp(fid, mode); emp = ""; if mode == 1 % nomes com comprimento variável... else % nomes com comprimento fixo... endif endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 17
18 No modo variável, a função Leitura de Registos em Ficheiros 1. lê uma linha de cada vez (caso já não exista, a função fgetl/1 retorna o valor -1); 2. converte-a numa matriz de caracteres L, partindo-a nos caracteres tab ( \t ) com a instrução split; 3. Atribui as linhsa da matriz aos respectivos campos, convertendo-as em números (instrução str2num) ou retirando os espaços fnais (instrução deblank).... if mode == 1 % nomes com comprimento variável line = fgetl(fid); ok = (line!= -1); if ok M = split(line,"\t"); emp.cod = str2num(m(1,:)); emp.nome = deblank(m(2,:)); emp.venc = str2num(m(3,:)); emp.data = deblank(m(4,:)); endif; endif;... 4 Maio 2011 Registos em Ficheiros - Estruturas 18
19 Leitura de Registos em Ficheiros No modo fixo, a função lê os quatro campos de uma só instrução fscanf. A separação dos campos é feita por tabs, excepto entre o nome e o vencimento. Neste caso, a separação é implícita, ao serem lidos exactamente 25 caracteres para o nome. De notar, que o booleano ok é verdadeiro sse os 4 campos forem lidos. function [emp,ok] = ler_emp(fid, mode); emp = ""; if mode == 1 % nomes com comprimento variável... else % nomes com comprimento fixo [emp.cod, emp.nome, emp.venc, emp.data, count] = fscanf(fid,"%i%25c%f%s","c"); ok = (count == 4); endif endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 19
20 Eis a função completa: Leitura de Registos em Ficheiros function [emp,ok] = ler_emp(fid, mode); emp = ""; if mode == 1 % nomes com comprimento variável line = fgetl(fid); ok = (line!= -1); if ok M = split(line,"\t"); emp.cod = str2num(m(1,:)); emp.nome = deblank(m(2,:)); emp.venc = str2num(m(3,:)); emp.data = deblank(m(4,:)); endif; else % nomes com comprimento fixo [emp.cod, emp.nome, emp.venc, emp.data, count] = fscanf(fid,"%i%25c%f%s","c"); ok = (count == 4); endif endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 20
21 Comprimento fixo: Escrita de Registos em Ficheiros A escrita de ficheiros depende igualmente do formato utilizado para as strings. Em comprimento fixo, um registo pode ser escrito como fprintf(fid, "%3i", cod); fprintf(fid, "%-25s", nome); fprintf(fid, "%7.2f", venc); fprintf(fid, "%10s\n", data); ou numa só instrução, como anteriormente. Notar ainda que 1. O sinal (em %-25s) justifica, à esquerda, o campo nome. 2. Após o último campo deve ser escrito um caracter ( \n ), para mudança de linha 610Paulo Fernandes Lopes /04/ Maio 2011 Registos em Ficheiros - Estruturas 21
22 Comprimento variável: Escrita de Registos em Ficheiros Neste caso o registo de um empregado pode ser escrito como fprintf(fid, "%i\t", cod); fprintf(fid, "%s\t", nome); fprintf(fid, %7.2f\t", venc); fprintf(fid, "%s\n", data); ou numa só instrução, como anteriormente. Notar agora que 1. Após cada campo, deve ser escrito o tab ( \t ) de separação, excepto no último campo, após o que se escreve o caracter ( \n ) 2. Alguns templates podem ser fixos, (por exemplo, "%7.2f ) para evitar as convenções por omissão do Octave. 610 Paulo Fernandes Lopes /04/ Maio 2011 Registos em Ficheiros - Estruturas 22
23 Eis a função completa: Escrita de Registos em Ficheiros function [] = escreve_emps(emps,fname, mode); [fid, msg] = fopen(fname, "w"); if mode == 1 for i = 1:length(Emps) fprintf(fid, "%i\t", Emps(i).cod); fprintf(fid, "%s\t", Emps(i).nome); fprintf(fid, "%7.2f\t", Emps(i).venc); fprintf(fid, "%s\n", Emps(i).data); endfor; else for i = 1:length(Emps) fprintf(fid, %6i", Emps(i).cod); fprintf(fid, "%-25s", Emps(i).nome); fprintf(fid, %8.3f", Emps(i).venc); fprintf(fid, "%11s\n", Emps(i).data); endfor; endif; fclose(fid); endfunction; 4 Maio 2011 Registos em Ficheiros - Estruturas 23
Tarefa Orientada 13 Agrupamento e sumário de dados
Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os
Leia maisProcessamento de Texto. Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2006/2007
Processamento de Texto Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2006/2007 27 Abril 2007 Processamento de Texto 1 Regressão Linear : Um Exemplo Muita informação
Leia maisFundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br
Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 2 (07/08/15) Introdução ao Python História Características Estrutura dos código-fonte Primeiros elementos
Leia maisAluísio Eustáquio da Silva
1 Aluísio Eustáquio da Silva SciLab Programável Material didático usado em aulas de Programação de Computadores, Algoritmos e Lógica de Programação Betim Maio de 2012 2 PROGRAMAÇÃO O SciLab permite que
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 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos
Leia maisGuia de Estudo Folha de Cálculo Microsoft Excel
Tecnologias da Informação e Comunicação Guia de Estudo Folha de Cálculo Microsoft Excel Estrutura geral de uma folha de cálculo: colunas, linhas, células, endereços Uma folha de cálculo electrónica ( electronic
Leia maisAlgoritmos e Programação Estruturada
Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.
Leia maisJavascript 101. Parte 2
Javascript 101 Parte 2 Recapitulando O Javascript é uma linguagem de programação funcional Os nossos scripts são executados linha a linha à medida que são carregados. O código que está dentro de uma função
Leia maisPlaneamento de um Posto de Abastecimento de Combustível
Introdução aos Computadores e à Programação 2007/2008, 2º Semestre 1º Trabalho de OCTAVE Planeamento de um Posto de Abastecimento de Combustível 1. Introdução Pretende-se instalar um posto de abastecimento
Leia maisAula de JavaScript 05/03/10
Objetos Sabe-se que variável são contêiners que podem armazenar um número, uma string de texto ou outro valor. O JavaScript também suporta objetos. Objetos são contêiners que podem armazenar dados e inclusive
Leia maisOs objetivos indicados aplicam-se a duas linguagens de programação: C e PHP
AGRUPAMENTO DE ESCOLAS DE SANTA COMBA DÃO CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS 2012-2015 PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO MÓDULO 2 Mecanismos de Controlo de
Leia maisLinguagem C Tipos de Dados. void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador
Linguagem C Tipos de Dados void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador Funções void void pode ser usado em lugar de um tipo, para indicar a ausência de valor
Leia maisVectores e Matrizes Aplicações à Engenharia. Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2010/2011
Vectores e Matrizes Aplicações à Engenharia Pedro Barahona DI/FCT/UNL Introdução aos Computadores e à Programação 2º Semestre 2010/2011 Tipo de Dados Primitivo: a Matriz Ao contrário da generalidade das
Leia maisCurso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária
1- Apresentação Binária Os computadores funcionam e armazenam dados mediante a utilização de chaves eletrônicas que são LIGADAS ou DESLIGADAS. Os computadores só entendem e utilizam dados existentes neste
Leia maisUniversidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática
Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]
Leia maisGeração de código intermediário. Novembro 2006
Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas
Leia maisINF 1005 Programação I
INF 1005 Programação I Aula 12 Cadeia de Caracteres (Strings) Edirlei Soares de Lima Caracteres Até o momento nós somente utilizamos variáveis que armazenam números (int, float ou
Leia mais1. NÍVEL CONVENCIONAL DE MÁQUINA
1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0
Leia maisBases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1.
Departamento de Engenharia Informática 2008/2009 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo
Leia maisPROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012
Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Mestrado Integrado em Engenharia Electrotécnica e de Computadores 1º ano 2º semestre Trabalho Final Reservas de viagens
Leia maisO que é o JavaScript?
JavaScript Introdução O JavaScript é utilizado por milhões de páginas na web para melhorar o design, validar forms, e muito mais O JavaScript foi inicialmente desenvolvido pela Netscape e é a linguagem
Leia maisConjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)
Arquitectura de um computador Caracterizada por: Conjunto de instruções do processador (ISA Estrutura interna do processador (que registadores existem, etc Modelo de memória (dimensão endereçável, alcance
Leia maisCurso de Iniciação ao Access Basic (I) CONTEÚDOS
Curso de Iniciação ao Access Basic (I) CONTEÚDOS 1. A Linguagem Access Basic. 2. Módulos e Procedimentos. 3. Usar o Access: 3.1. Criar uma Base de Dados: 3.1.1. Criar uma nova Base de Dados. 3.1.2. Criar
Leia maisEstrutura de Dados Básica
Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 4: Tipos de Dados O objetivo desta aula é apresentar os tipos de dados manipulados pela linguagem C, tais como vetores e matrizes, bem como
Leia maisTrabalhos Práticos. Programação II Curso: Engª Electrotécnica - Electrónica e Computadores
Trabalhos Práticos Programação II Curso: Engª Electrotécnica - Electrónica e Computadores 1. Objectivos 2. Calendarização 3. Normas 3.1 Relatório 3.2 Avaliação 4. Propostas Na disciplina de Programação
Leia maisLicenciatura em Engenharia Informática Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto
Licenciatura em Engenharia Informática Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto Sandra Manuela Lemos Machado Versão 2 Março 2002 Criticas e sugestões: smachado@dei.isep.ipp.pt
Leia maisTarefa Orientada 12 Junção Externa, Auto-Junção e União
Tarefa Orientada 12 Junção Externa, Auto-Junção e União Objectivos: Junção externa (Outer JOIN) Junção externa à esquerda (LEFT Outer JOIN) Junção externa à direita (RIGHT Outer JOIN) Junção externa completa
Leia maisAMBIENTE DE PROGRAMAÇÃO PYTHON
Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 1 AMBIENTE DE PROGRAMAÇÃO PYTHON 1.1. Objectivos
Leia maisEstruturas II UFOP 1/1
BCC 201 - Introdução à Programação I Estruturas II Guillermo Cámara-Chávez UFOP 1/1 Conceito de struct I Vetores e matrizes Estruturas de dados homegêneas Armazenam vários valores, mas todos de um mesmo
Leia maisArmazenamento de Dados. Prof. Antonio Almeida de Barros Junior
Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,
Leia maisFigura 1 - O computador
Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...
Leia maisTarefa Orientada 16 Vistas
Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um
Leia maisCriando um script simples
Criando um script simples As ferramentas de script Diferente de muitas linguagens de programação, você não precisará de quaisquer softwares especiais para criar scripts de JavaScript. A primeira coisa
Leia maisAlgoritmos e Programação _ Departamento de Informática
16 ARQUIVOS Um arquivo corresponde a um conjunto de informações (exemplo: uma estrutura de dados-registro), que pode ser armazenado em um dispositivo de memória permanente, exemplo disco rígido. As operações
Leia maisCOMPETÊNCIAS BÁSICAS EM TIC NAS EB1
COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina do Correio Para saber mais sobre Correio electrónico 1. Dicas para melhor gerir e organizar o Correio Electrónico utilizando o Outlook Express Criar Pastas Escrever
Leia maisHugo Pedro Proença, 2007
Stored Procedures À medida que a complexidade dos sistemas aumenta, torna-se cada vez mais difícil a tarefa de integrar o SQL com as aplicações cliente. Além disto, é necessário que todas as aplicações
Leia maisCONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com
CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Objetivos Compreender os conceitos de lógica de programação e de algoritmos. Conhecer
Leia maisOPERADORES E ESTRUTURAS DE CONTROLE
OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em
Leia maisL 276/4 PT Jornal Oficial da União Europeia. DECISÃO N. o 190. de 18 de Junho de 2003
L 276/4 PT Jornal Oficial da União Europeia DECISÃO N. o 190 de 18 de Junho de 2003 relativa às características técnicas do cartão europeu de seguro de doença (Texto relevante para efeitos do EEE e do
Leia maisBase de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade
Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de
Leia maisLinguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1
Linguagem C: Estruturas de Controle Prof. Leonardo Barreto Campos 1 Sumário Estrutura de Controle e de Fluxo Comandos de Seleção: O comando if; Ifs Aninhados; A escada if-else-if; A expressão condicional;
Leia maisJava Mail Server. Manual do Utilizador
Java Mail Server Manual do Utilizador Introdução às Redes e Comunicações 2002/2003 Java Mail Client Janela de Ligação O Java Mail Client (JMC), assim que é inicializado, mostra uma janela que irá possibilitar
Leia maisAula teórica 3. Tema 3.Computadores e linguagens Linguagens de Programação Compilação e linkagem LP Java. Preparado por eng.
Aula teórica 3 Tema 3.Computadores e linguagens Linguagens de Programação Compilação e linkagem LP Java Preparado por eng.tatiana Kovalenko Linguagens de Programação Para escrever programas é necessário
Leia maisEdwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++
Edwar Saliba Júnior Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++ Belo Horizonte 2009 Sumário 1 Nota:... 2 2 Comandos e Palavras Reservadas:... 3 3 Dicas... 4
Leia maisMANUAL DO UTILIZADOR
MANUAL DO UTILIZADOR Versão 1.6 PÁGINA DE PESQUISA A página principal do PacWeb permite a realização de um número muito variado de pesquisas, simples, ou pelo contrário extremamente complexas, dependendo
Leia maisEstrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1
Estrutura de Dados Introdução a Ponteiros Prof. Gerson Borges Estrutura de Dados I 1 Sumário è Explicação da importância do planejamento de ensino; è Métodos e técnicas que iremos trabalhar durante o semestre;
Leia maisPython: Comandos Básicos. Claudio Esperança
Python: Comandos Básicos Claudio Esperança Primeiros passos em programação Até agora só vimos como computar algumas expressões simples Expressões são escritas e computadas imediatamente Variáveis podem
Leia maisUm compilador é um programa que lê um programa escrito numa dada linguagem, a linguagem objecto (fonte), e a traduz num programa equivalente
Capítulo 1 Introdução Um compilador é um que lê um escrito numa dada linguagem, a linguagem objecto (fonte), e a traduz num equivalente numa outra linguagem, a linguagem destino Como parte importante neste
Leia maisBacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java
Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre
Leia maisProgramação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto
Mestrado Integrado em Engenharia Electrotécnica e de Computadores Programação 2º Semestre 2010/2011 Enunciado do projecto O projecto a desenvolver pelos alunos consistirá numa sistema de monitorização,
Leia maisAlgoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br
(Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução
Leia maisAlgoritmos e Programação
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti
Leia maisInformática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA
Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015 Visual Basic VBA Macros Funções Conjunto de instruções que são executadas sempre que se desejar e pela ordem apresentada As funções são
Leia maisINTRODUÇÃO À LINGUAGEM C++
INTRODUÇÃO À LINGUAGEM C++ 1 - VARIÁVEIS Variáveis espaço de memória reservado para armazenar tipos de dados, com um nome para referenciar seu conteúdo. Observações importantes Todas as variáveis devem
Leia maisUsando o Excel ESTATÍSTICA. A Janela do Excel 2007. Barra de título. Barra de menus. Barra de ferramentas padrão e de formatação.
Barra de deslocamento ESTATÍSTICA Barra de menus Barra de título Barra de ferramentas padrão e de formatação Barra de fórmulas Conjuntos e Células (Intervalos) Área de trabalho Separador de folhas Barra
Leia maisTarefa Orientada 14 Subconsultas
Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta
Leia maisAlgoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma
Roteiro: Conceitos básicos de algoritmo, linguagem, processador de linguagem e ambiente de programação; Aspectos fundamentais da organização e do funcionamento de um computador; Construções básicas de
Leia maisMicrosoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados?
Microsoft Access Sumário 1. 2. ABRINDO UM BANCO DE DADOS PRONTO 3. ASSISTENTE DE BANCO DE DADOS 4. NAVEGANDO PELO BANCO DE DADOS 5. CRIANDO UM BANCO DE DADOS DESDE O INÍCIO 6. CRIANDO COSULTAS 7. CRIANDO
Leia maisInformática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1
Informática I Aula 6 http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e
Leia maisSISTEMA DA NOTA FISCAL PAULISTANA
SISTEMA DA NOTA FISCAL PAULISTANA Manual de Exportação de NFTS Instruções e Layout Versão 2.0 Para baixar a versão mais atualizada deste documento, acesse o endereço: http://www.nfpaulistana.prefeitura.sp.gov.br/informacoes_gerais.asp
Leia maisMC102 Algoritmos e programação de computadores Aula 3: Variáveis
MC102 Algoritmos e programação de computadores Aula 3: Variáveis Variáveis Variáveis são locais onde armazenamos valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa,
Leia maisFigure 2 - Nós folhas de uma árvore binária representando caracteres ASCII
A ocorrência tamanho ASCII codificação de Huffman é um A Codificação método de compactação de Huffman caracteres (American e a variável codificação dos usado símbolos Standard para por cada muitas no Code
Leia maisALGORITMOS PARTE 01. Fabricio de Sousa Pinto
ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3
Leia maisINTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
Leia mais1 Resumo: Strings e vetores de caracteres. Departamento de Ciência da Computação IME/USP
Departamento de Ciência da Computação MAC2166 Introdução a Computação IME/USP Strings e vetores de caracteres 1 Resumo: O uso de strings facilita a manipulação de palavras e textos. Strings são basicamente
Leia maisAlgoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I 01/2013 Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo Problema 1 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em
Leia maisProva de Aferição de Matemática
PROVA DE AFERIÇÃO DO ENSINO BÁSICO A PREENCHER PELO ALUNO Nome A PREENCHER PELO AGRUPAMENTO Número convencional do Aluno Número convencional do Aluno A PREENCHER PELA U.A. Número convencional do Agrupamento
Leia maisComo enviar e receber correio eletrónico utilizando o Gmail
Como enviar e receber correio eletrónico utilizando o Gmail Este módulo pressupõe que que já tenha criado uma conta de correio eletrónico no Gmail (caso já não se recorde como deve fazer, consulte o nosso
Leia maisO código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.
1 - O que é JAVASCRIPT? É uma linguagem de script orientada a objetos, usada para aumentar a interatividade de páginas Web. O JavaScript foi introduzido pela Netscape em seu navegador 2.0 e posteriormente
Leia mais20 Caracteres - Tipo char
0 Caracteres - Tipo char Ronaldo F. Hashimoto e Carlos H. Morimoto Até agora vimos como o computador pode ser utilizado para processar informação que pode ser quantificada de forma numérica. No entanto,
Leia maisNota técnica nº 1 Importar mapas de quantidades em Excel
Índice 1) Introdução... 2 2) Preparação... 2 3) Copiar... 2 4) Importar... 3 5) Identificação das colunas... 4 6) Opções de importação... 5 7) Verificação... 5 8) Definição das especialidades... 6 9) Dúvidas...
Leia maisUnidade 5: Sistemas de Representação
Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação
Leia maisNo final desta sessão o formando deverá ser capaz de aceder ao Word e iniciar um novo documento.
Sessão nº 2 Iniciar um novo documento Objectivos: No final desta sessão o formando deverá ser capaz de aceder ao Word e iniciar um novo documento. Iniciar um novo documento Ao iniciar-se o Word, este apresenta
Leia maisIntrodução aos Algoritmos e Estruturas de Dados 2011/2012
INSTITUTO SUPERIOR TÉCNICO Introdução aos Algoritmos e Estruturas de Dados 2011/2012 Enunciado do 2 o Projecto Data de entrega: 11 de Novembro de 2011 às 23h59 1 Introdução O EuroMilhões é uma lotaria
Leia maisTarefa Orientada 11 Junção Interna
Tarefa Orientada 11 Junção Interna Objectivos: Junção Interna (INNER JOIN) Junção Interna A operação de junção interna (INNER JOIN) é utilizada para combinar colunas de duas ou mais tabelas. O resultado
Leia maisProgramação de Computadores
Programação de Computadores INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 2 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Exemplo Inicial Uma
Leia maisConceitos básicos da linguagem C
Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por
Leia maisComandos Sequenciais if else, e Switch
Introdução à Programação Comandos Sequenciais if else, e Switch 1º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv) O computador pensa? Muitas vezes utiliza-se a
Leia mais[RÓTULO:] MNEMÔNICO [OPERANDOS] [;COMENTÁRIO]
Instruções de uso do montador DAEDALUS (baseadas em texto extraído da monografia apresentada como trabalho de diplomação no curso de Bacharelado em Ciência da Computação por Luís Ricardo Schwengber, sob
Leia maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisAmbientes de exemplo do Comunicar com Símbolos
Ambientes de exemplo do Comunicar com Símbolos As atividades exemplificativas foram elaboradas para mostrar alguns tipos de atividades que podem ser feitas usando os ambientes do Comunicar com Símbolos.
Leia mais5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES
CAPÍTULO 5 5 VETORES E MATRIZES 5.1 Vetores Um vetor armazena uma determinada quantidade de dados de mesmo tipo. Vamos supor o problema de encontrar a média de idade de 4 pessoas. O programa poderia ser:
Leia maisManual de Administração Intranet BNI
Manual de Administração Intranet BNI Fevereiro - 2010 Índice 1. Apresentação... 3 2. Conceitos... 5 3. Funcionamento base da intranet... 7 3.1. Autenticação...8 3.2. Entrada na intranet...8 3.3. O ecrã
Leia maisProgramação WEB I Estruturas de controle e repetição
Programação WEB I Estruturas de controle e repetição Operadores de Incremento Operadores de incremento servem como expressões de atalho para realizar incrementos em variáveis Operadores de Incremento Vamos
Leia mais2 echo "PHP e outros.";
PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento
Leia maisConceitos Importantes:
Conceitos Importantes: Variáveis: Por Flávia Pereira de Carvalho, 2007 i O bom entendimento do conceito de variável é fundamental para elaboração de algoritmos, consequentemente de programas. Uma variável
Leia maisIntrodução às Linguagens de Programação
Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador
Leia maisAkropole Catequista. Todos os Ficheiros no Akropole Catequista trabalham com uma simples barra de edição, com 4 botões:
Akropole Catequista O Akropole Catequista em três tempos... Este texto é um pequeno manual de introdução ao Akropole Catequista. Umas das características deste programa é o facto deste não necessitar de
Leia maisGuia para a declaração de despesas no Programa SUDOE
Guia para a declaração de despesas no Programa SUDOE CAPÍTULO 1: INTRODUÇÃO... 2 CAPÍTULO 2: ACESSO AO MÓDULO DE GESTÃO DE DESPESAS PAGAS... 3 CAPÍTULO 3: GESTÃO DAS DESPESAS PAGAS... 4 3.1 Incorporação
Leia maisAula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis
1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que
Leia maisAula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela
Aula 01 - Formatações prontas e Sumário Formatar como Tabela Formatar como Tabela (cont.) Alterando as formatações aplicadas e adicionando novos itens Removendo a formatação de tabela aplicada Formatação
Leia maisA lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.
INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,
Leia maisestiglp-11/12-5946-csharp e Fsharp 1 Relatório Linguagens de programação 11/12 João Caixinha nº5946
estiglp-11/12-5946-csharp e Fsharp 1 Relatório Linguagens de programação 11/12 João Caixinha nº5946 1 estiglp-11/12-5946-csharp e Fsharp 2 Resumo - Este relatório relata as soluções encontradas para a
Leia maisECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO
Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Versão do documento: 1.1 1. Introdução...3 2. Documentação...3 2.1. DOCUMENTAÇÃO DE REFERÊNCIA... 3 2.2. DESCRIÇÃO FUNCIONAL... 4 2.2.1. INTERFACE...
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisIntrodução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza
Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo
Leia maisFaculdade de Ciências da Universidade de Lisboa CURSO DE GPS. Módulo x. (Aula Prática) Reliance - Ashtech. Suas Aplicações Em SIG.
Faculdade de Ciências da Universidade de Lisboa CURSO DE GPS Módulo x (Aula Prática) Reliance - Ashtech e Suas Aplicações Em SIG (Carlos Antunes) INTODUÇÃO O Sistema Reliance baseia-se na utilização do
Leia mais