Pesquisa ppi 2

60
Pesquisa Vetores/Arrays Pesquisa Prática Interdisciplinar II Sistema de Informação 2º Semestre Professor: Marcos Pacheco Alunos: Wallace Bezerra e Otaviano Viana

Transcript of Pesquisa ppi 2

Page 1: Pesquisa ppi 2

Pesquisa Vetores/Arrays

Pesquisa Prática Interdisciplinar IISistema de Informação 2º SemestreProfessor: Marcos PachecoAlunos: Wallace Bezerra e Otaviano Viana

Page 2: Pesquisa ppi 2

Topicos Gerais

Conceito Quando utilizar Índices em vetores/arrays Vetores/arrays de 2 dimensões Exemplos Referências

Page 3: Pesquisa ppi 2

Conceito

• Agrupam elementos com o mesmo tipo de dados;• Um array é constituído por elementos e dimensões;

o Elementos Dados que constituem o array;

o Dimensão Comprimento, altura e profundidade de um array; Um array pode ter mais de uma dimensão ou até 2(31)-1

elementos por dimensão, se a memória permitir;• Tipos de arrays

o Numéricoo Booleanoo Stringo Float

Page 4: Pesquisa ppi 2

Quando utilizar?

• Deve utilizar arrays quando trabalhar com uma coleção de dados similares e efetuar computações repetitivas. Os arrays são ideais para guardar dados coletados de waveforms e gerados por ciclos, onde cada iteração de um ciclo produz um elemento de array.

IMPORTANTE!

Não se pode criar um array de arrays. Contudo pode se criar um array de clusters, em que cada cluster contém um ou mais arrays.

Page 5: Pesquisa ppi 2

Índices em vetores/arrays

• Os elementos de um array são ordenados utilizando-se de seu índice para ter acesso de leitura de cada elemento.

• O índice de um array é zero-based (baseado em zero), o que significa que o seu intervalo é de 0 a n-1, n é o número de elementos do array.

• Exemplo:o Se criarmos um array dos planetas do sistema solar, n= 9

para os nove planetas e o intervalo do índice é de 0 a 8. o A terra é o 3º Planeta, por isso o seu índice é 2.

Page 6: Pesquisa ppi 2

Vetores/arrays de 2 dimensões

• Um array de 2 Dimensões guarda elementos em uma tabela, ou planílha sendo que, para localizar um elemento são necessários índice de coluna e de linha, ambos devem ser zero-based.

Page 7: Pesquisa ppi 2

Vetores/arrays de 2 dimensões

• A Figura 2 mostra um array a 2 Dimensões de 6 colunas e 4 linhas, que contém 24 elementos = 6 X 4.

Page 8: Pesquisa ppi 2

Vetores/arrays: Exemplo

• Supor, que se pretendia um programa para ler a média das notas de cada um dos alunos de uma escola, calcular a média das médias, e depois para cada aluno determinar o desvio da sua média relativamente à média das médias. Uma solução para guardar cada uma das médias, seria definir por exemplo 3000 variáveis (número hipotético de alunos), por exemplo :

float med_1,med_2,med_3,med_4,med_5,med_6,med_7,med_8, ... ; até med_3000, mais as instruções para a leitura das médias:

printf (\n Introduza a média do aluno n.º1:); scanf (%f,med_1);

Page 9: Pesquisa ppi 2

Vetores/arrays: Exemplo

• Seguindo a idéia anterior, seriam necessários 3000 linhas de comando scanf para leitura das informações de média por aluno, revelendo-se um código completamente impraticável.

• Seria preferível a possibilidade de definir as 3000 variáveis de uma só vez da seguinte forma:

• Sendo assim media[0] guardaria a média do aluno 1, media[1] a do aluno 2 e assim sucessivamente fazendo variar o valor do índice até 2999.o Para melhorar o processo, seria conveniente definir uma variável para índice:

float media[3000];

int i;

Page 10: Pesquisa ppi 2

Vetores/arrays: Exemplo

• Deste modo, para a leitura das 3000 variáveis, poder-se-ia utilizar um ciclo, como a seguir se ilustra:

for (i=0;i<3000;i++) {

printf (\n Introduza a média do aluno n.º %d,i); scanf (%f,media[i]);

}

Page 11: Pesquisa ppi 2

Referências:

http://www.dcc.ufrj.br/~jonathan/docsPascal/apostila/capitulo5.html

http://www.cin.ufpe.br/~mlf/notas03 http://pt.wikipedia.org/wiki/Array http://www.lsd.ic.unicamp.br/projetos/e-lane/

introPascal/aula6.html

Page 12: Pesquisa ppi 2

Pesquisa Prática Interdisciplinar IISistemas de Informação 2º SemestreProfessor: Marcos PachecoAlunos: Wallace Bezerra e Otaviano Viana

Pesquisa Sobre Registros

Page 13: Pesquisa ppi 2

Tópicos Gerais

• Definição• Tipos de Armazenamentos• Curiosidades sobre os registros• Histórico• Uso no Pascal• Comando With (no Pascal)• Sem o comando With • Usando With (no Pascal)

• (no Pascal)

Page 14: Pesquisa ppi 2

Definição

Um registro é uma das mais simples estruturas de dados, armazenando variáveis na memória em posições sequenciais, permitindo que cada membro (ou campo) seja acessado incrementando a posição inicial de memória (offset). Por isso que é obrigatória a definição de todas as variáveis, para se saber qual o offset a ser aplicado.

Page 15: Pesquisa ppi 2

Tipos de Armazenamento

Os registros podem ser armazenados em diversos locais. Entre eles são:

• Memória RAM• Arquivos físicos (em qualquer dispositivo de

armazenamento)

Ou seja, o registro é uma estrutura muito utilizada para rotinas de armazenamento de dados.

Page 16: Pesquisa ppi 2

Curiosidades Sobre os Registros

• Na orientação a objetos um objeto é essencialmente um registro, onde existem rotinas especializadas para manipulação do registro.

Page 17: Pesquisa ppi 2

• Na maioria das linguagens procedurais (a exemplo do Pascal), os parâmetros das funções e procedimentos são internamente compostos de registros.

Curiosidades Sobre os Registros

Page 18: Pesquisa ppi 2

Curiosidades Sobre os Registros

• O Pascal foi a primeira linguagem a dar suporte completo para registros (principalmente a integração com outros tipos de dados). A partir daí, todas as linguagem subseqüentes também implementaram este .

Page 19: Pesquisa ppi 2

Histórico

O uso de registros como estrutura de dados já vem desde o século XIX, tendo a sua primeira utilização documenta na calculadora mecânica da máquina analítica de Babbage.

Porém, o uso se consolidou na primeira metade do século XX, onde a utilização de cartões perfurados foi massificado. Em cada cartão, eram perfurados furos seqüenciais, onde cada seqüencia de furo significava um campo.

Page 20: Pesquisa ppi 2

Uso no Pascal

A referência ao conteúdo de um dado campo do registro será indicada pela notação:identificador-do-registro.identificador-do-campo Conjunto de registros:Var tab : Array[1..50] of Record   matr  : Integer;   nome  : String[30];   media : Real;End;

Page 21: Pesquisa ppi 2

Comando With (no Pascal)

Permite que os campos de um registro sejam denotados unicamente por seus identificadores, sem a necessidade de serem precedidos pelo identificador do registro.Forma geral:WITH identificador-do-registro DO     comandos

Page 22: Pesquisa ppi 2

Sem o Comando With (no Pascal)

Var TAB : Array[1..N] of Record  COD : String[6]; NOME : String[15];  PRECO: Real;     EST : Integer;end;...for I:=1 to N doBegin   Write('Código: '); readln(TAB[I].COD);   Write('Nome: '); readln(TAB[I].NOME);   Write('Preço: '); readln(TAB[I].PRECO);   Write('Estoque: '); readln(TAB[I].EST);End;

Page 23: Pesquisa ppi 2

Usando With (no Pascal)Var TAB : Array[1..N] of Record  COD : String[6]; NOME : String[15];  PRECO: Real;     EST : Integer;end;...for I := 1 to N do  With TAB[I] do  Begin     Write('Código: '); readln(COD);     Write('Nome: '); readln(NOME);     Write('Preço: '); readln(PRECO);     Write('Estoque: '); readln(EST);  End;

Page 24: Pesquisa ppi 2

Referências

Slideshare.net InfoAbril.com.br Yahoo Wikipedia.org

Page 25: Pesquisa ppi 2

Pesquisa Subprogramas, Procedure e Funções - Pascal

Pesquisa Prática Interdisciplinar IISistemas de Informação 2º SemestreProfessor: Marcos PachecoAlunos: Wallace Bezerra e Otaviano Viana

Page 26: Pesquisa ppi 2

Tópicos Gerais

Definições Subprogramas• Diferenças entre Funções e

Procedimentos• Escopo• Parâmetros• Sintaxe• Procedures Referências

Page 27: Pesquisa ppi 2

Definições Subprogramas:

Em PASCAL podemos definir blocos de execução internos a um programa, chamados subprogramas. Cada bloco executa uma tarefa deternimada. Isto favorece a legibilidade e manutenção do programa, além de auxiliar no domínio da complexidade quando definimos o programa, já que podemos tratar partes do problema de forma isolada. 

Page 28: Pesquisa ppi 2

Diferenças entre Funções e Procedimentos

  1. As funções são avaliadas e retornam um valor  ao programa que as chama, além dos possíveis parâmetros de saída.

2. Um procedimento não retorna valor nenhum, a função obrigatoriamente retorna um valor a uma determinada variável.

 

Page 29: Pesquisa ppi 2

Diferenças entre Funções e Procedimentos (continuação)

3. Uma função é ativada quando é avaliada uma expressão que a contém, isto é, as funções são utilizadas da mesma forma que as funções predefinidas, como SQR, ORD, LN etc.    

4. Um procedimento é ativado através de um comando de chamada do procedimento.

Page 30: Pesquisa ppi 2

Escopo

• Variáveis Globais: São as variáveis declaradas no programa que são conhecidas em todo programa e inclusive nos subprogramas contidos nele.

Page 31: Pesquisa ppi 2

Escopo (continuação)

• Variáveis Locais: São as variáveis declaradas em um subprograma, que são conhecidas em todo o subprograma, mas não no programa que contém o subprograma.  Caso um subprograma contenha a definição de um outro subprograma (chamemos de "subsubprograma),  as variáveis declaradas no programa e no subprobrama serão visïveis no subsubprograma, mas o contrário não é verdadeiro.

Page 32: Pesquisa ppi 2

Escopo (continuação)

• Uso de mesmos nomes: se um subprograma definir nomes de variáveis iguais ao do programa principal, ao referenciar uma variável vale a do escopo local.

Page 33: Pesquisa ppi 2

Parâmetros

No cabeçalho de um subprograma (Funções ou procedimentos) definimos que tipo de dados que serão passados como parâmetros. Há duas formas de passagem de parâmetros de um programa para um subprograma: passagem por valor ou passagem por referência.

Page 34: Pesquisa ppi 2

Parâmetros (continuação)

- Passagem por valor: o parâmetro formal comporta-se como uma variável local do subprograma, de maneira que as alterações feitas nessa variável dentro do subprograma não tenham efeito sobre o parâmetro real, que pertence ao programa que fez a chamada. Assim, o subprograma só utiliza o valor da variável para um determindao fim, tendo o poder de alterá-la só dentro do subprograma, depois da execução desse subprograma, a variável volta a ter o valor que tinha antes da execução do subprograma. 

Page 35: Pesquisa ppi 2

Parâmetros (continuação)

- Passagem por referência: o parâmetro formal comporta-se como se fosse uma variável global, e todas as alterações feitas nesta variável são feitas efetivamente no parâmetro real. Assim, a variável pode ser alterada pelo subprograma e continuar com o valor alterado.

Page 36: Pesquisa ppi 2

      Na lista de parâmetros podemos usar as seguintes formas para passagem por valor:                           <nome da funcao ou procedimento> ( i,j,k: integer; y: real; z: boolean);                           <nome da funcao ou procedimento> ( i: integer; j: integer; k: integer; y: real; z: boolean);               Para parâmetros por referência deve-se utilizar "var" no cabeçalho. 

Sintaxe:

Page 37: Pesquisa ppi 2

PROCEDURES

Cabeçalho:     PROCEDURE <nome do procedimento>(<lista de parâmetros>);     Exemplo:     PROCEDURE Estatistica (VAR media: real; VAR s,m: real; ka: integer);     Os parâmetros formais são media, s, m e ka. O parâmetro media e as variáveis s e m são do tipo real, e ka é do tipo inteiro.

Page 38: Pesquisa ppi 2

Referências

http://www.leandro.wives.nom.br/pascal/Apostila/procedures.htm

http://duguedes.blogspot.com/2009/10/procedures-e-functions-pascal.html

http://www.inf.pucrs.br/~fldotti/lapro1/prfun.htm

Page 39: Pesquisa ppi 2

Pesquisa Manipulação de Arquivos

Pesquisa Prática Interdisciplinar IISistema de Informação 2º SemestreProfessor: Marcos PachecoAlunos: Wallace Bezerra e Otaviano Viana

Page 40: Pesquisa ppi 2

Tópicos Gerais

• O que é manipulação de arquivo? Procedimentos e funções para

manipulação de arquivos

Page 41: Pesquisa ppi 2

O que é manipulação de arquivos?

Page 42: Pesquisa ppi 2

Manipulação de arquivos

Um arquivo é um recurso manipulado pelo sistema operacional ao qual a linguagem de programação tem acesso. É uma abstração que permite acessar convenientemente dispositivos externos de entrada e saída de dados. Embora tipicamente um arquivo seja associado a um espaço de armazenamento em disco, outros dispositivos de entrada e saída são manipulados como arquivos, tais como o teclado e a tela de um monitor.

Page 43: Pesquisa ppi 2

Procedimentos e funções para manipulação de arquivos ASSIGN(nomedoarquivo, ‘nomeexterno’);

Associa o nomedoarquivo declarado no programa ao nomeexterno (arquivo físico) localizado no ambiente do sistema operacional. O nomeexterno do arquivo deve seguir as regras do MSDOS, ou seja até 12 caracteres, sendo 8 para o nome, seguido do ponto e mais 3 para extensão, que é opcional. Este procedimento deve anteceder qualquer outro procedimento de manipulação de arquivo.

Page 44: Pesquisa ppi 2

RESET(nomedoarquivo); Abre arquivo existente, com registros gravados. Os registros que foram gravados anteriormente serão preservados. Posiciona o ponteiro no 1º registro.

REWRITE(nomedoarquivo); Cria e abre um novo arquivo, caso o arquivo já exista os registros gravados anteriormente serão eliminados. O arquivo será aberto sempre vazio.

Procedimentos e funções para manipulação de arquivos(conti)

Page 45: Pesquisa ppi 2

CLOSE(nomedoarquivo); Fecha um arquivo aberto, atualizando as informações do arquivo.

ERASE(nomedoarquivo); Elimina o arquivo do diretório.

Procedimentos e funções para manipulação de arquivos(conti)

Page 46: Pesquisa ppi 2

RENAME(nomedoarquivo,’nomeexterno’); Altera o nome interno do arquivo para outro nome externo.

READ(nomedoarquivo,nomedoregistro); Lê um registro e avança o ponteiro para o próximo registro.

Procedimentos e funções para manipulação de arquivos(conti)

Page 47: Pesquisa ppi 2

WRITE(nomedoarquivo,nomedoregistro); Grava um registro e avança o ponteiro para o próximo registro.

EOF(nomedoarquivo); Retorna true se o fim do arquivo foi atingido.

Procedimentos e funções para manipulação de arquivos(conti)

Page 48: Pesquisa ppi 2

FILEPOS(nomedoarquivo); Retorna o número do registro ativo, onde se encontra o ponteiro. Posição física do registro.

SEEK(nomedoarquivo,posição); Posiciona o ponteiro no registro de número posição.

FILESIZE(nomedoarquivo); Retorna o tamanho do arquivo, ou a quantidade de registros gravados.

Procedimentos e funções para manipulação de arquivos(conti)

Page 49: Pesquisa ppi 2

Referências:

http://www.unimep.br/~vmdzilio/mod2_4.html http://www.dca.fee.unicamp.br/cursos/

EA876/apostila/HTML/node33.html

Page 50: Pesquisa ppi 2

Pesquisa Sistemas de Informação

Pesquisa Prática Interdisciplinar IISistema de Informação 2º SemestreProfessor: Marcos PachecoAlunos: Wallace Bezerra e Otaviano Viana

Page 51: Pesquisa ppi 2

Topicos Gerais

1 Definição. 1.1 Aplicações e Benefícios. 2 Modelagem.. 3 Análise e reestruturação. 4 Tipos de SI’s 4.1 Sistemas de Informação Rotineiros ou

Transacionais (SIR’s, SIT’s, SPT’s) 4.2 Sistemas de Gestão Empresarial Integrada - ERP

(Enterprise Resource Planning) 4.3 Sistemas de Gestão de Suprimentos

Page 52: Pesquisa ppi 2

Definição

            Um Sistema de Informação (SI) é um sistema cujo elemento principal é a informação. Seu objetivo é armazenar, tratar e fornecer informações de tal modo a apoiar as funções ou processos de uma organização.

Page 53: Pesquisa ppi 2

Aplicações e Benefícios

Produtividade - Marketing - Marketing de Precisão - Business Intelligence - Inteligência Competitiva - Gestão do Conhecimento (capital intelectual)

Page 54: Pesquisa ppi 2

Modelagem

DFD estendido exemplo para retirada de livros

Page 55: Pesquisa ppi 2

Análise e reestruturação

mesmo exemplo tempo, paralelismo, gargalos, onde investir projeto ???  

Page 56: Pesquisa ppi 2

Tipos de SI’s

A seguir, serão detalhados vários tipos de SI’s possíveis de serem utilizados em organizações. Os sistemas foram classificados de acordo com seus objetivos e tipos de informações que manipulam, mas nada impede que um mesmo SI, encontrado em alguma organização, esteja classificado em mais de um tipo.

Page 57: Pesquisa ppi 2

Sistemas de Informação Rotineiros ou Transacionais (SIR’s, SIT’s, SPT’s)

   Os SI’s Rotineiros são os mais simples e os mais comuns nas organizações. Eles apoiam as funções operacionais da organização, aquelas realizadas no dia-a-dia. Por isto, são facilmente identificados no nível operacional da organização.

Page 58: Pesquisa ppi 2

Sistemas de Gestão Empresarial Integrada São sistemas que unem e integram os diversos

sistemas rotineiros ou transacionais de uma organização. Permitem integrar os departamentos, de forma a agilizar processos e ainda gerar o Just-in-time (produção por demanda, sem estoques).

Page 59: Pesquisa ppi 2

Sistemas de Gestão de Suprimentos Objetivo: controlar produtos, peças, matérias primas, materiais,

composição, aquisição e fluxo de materiais por toda a cadeia produtiva.

  Problemas comuns: - comprar o que já existe em estoque - comprar itens que estão faltando quando há similares ou

compatíveis em estoque - não saber de que fornecedor veio determinada peça, nem

para onde foi (para que cliente) - códigos de barra ou RFID em alfaces

Page 60: Pesquisa ppi 2

Referências:

WWW.GOOGLE.COM.BR WWW.WIKIPÉDIA.COM.BR