Universidade Veiga de Almeida Algoritmos e Linguagem I

Documentos relacionados
Algoritmos e Estruturas de Dados. Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras PURO

Registros Profa Jacqueline 1

Algoritmos - 6. Alexandre Diehl. Departamento de Física - UFPel

Aula IV Vetores e Matrizes

INTRODUÇÃO À COMPUTAÇÃO - EPET006 -

Estruturas II UFOP 1/35

VETORES Motivação AULA 19

Fundamentos de Programação 1

Lógica de Programação e Algoritmos

Capítulo 7 Matriz. Roteiro

ALGORITMOS + PASCAL. Estruturas de dados Heterogêneas

UNIDADE 5 ESTRUTURAS DE DADOS

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Aula 10: Introdução a Vetores e Matrizes

Tipo m= matriz [ l i1 : l s1, l i2 : l s2 ] <tipo básico> m: mat

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Matrizes. Prof. Alex Camargo

Algoritmos e Técnicas - Vetores e Registros. Vetores

MATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21

Agregado Homogêneo e Heterogêneo

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: tipos de dados definidos pelo programador: struct union enum typedef

Agregado Homogêneo e Heterogêneo. Agregado Homogêneo. Agregado Homogêneo 28/11/2015

Programação de Computadores

Programação: Vetores

Registros, Vetores e Matrizes

Estruturas Homogêneas Vetores e Matrizes. Givanaldo Rocha

1 - VARIÁVEIS COMPOSTAS HOMOGÊNEAS (VETORES E MATRIZES)

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

Fundamentos de Programação 1

Arrays (Vetores) Arrays (Vetores) 28/04/ Índices. profs. } Ex1: Se eu preciso manipular 100 nomes de pessoas ao mesmo tempo... é melhor...

Algoritmos e Programação I

Algoritmos. Prof. Jonatas Bastos Site:

Disciplina de Algoritmos e Programação. Vetor e Matriz

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano M. Cansian

AULA 10 VETORES. Disciplina: Algoritmos Professora: Alba Lopes.

REGISTROS. Um dos pontos mais importantes para a solução de problemas são as Estruturas De Dados ou Agregados

Algoritmos e Programação - Engenharia da Computação -

CAPÍTULO VIII. Variáveis Indexadas: Vetores e Matrizes CAPÍTULO VIII VARIÁVEIS INDEXADAS VARIÁVEIS INDEXADAS HOMOGÊNEAS UNIDIMENSIONAIS (VETORES)

Algoritmos e Programação I

Prática de Programação. Prof. Tiago A. E. Ferreira Aula 9 Estruturas, Uniões, Enumerações e Tipos Definidos pelo Usuário

ALGORITMOS AULA 2. Profª Amanda Gondim

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15

Linguagem de Programação I - Registros (struct) No exemplo acima foi criado um tipo de dado estruturado chamado struct aluno.


Solução usando variáveis simples

Introdução à Computação (IC) Algoritmos: Comandos de entrada e saída

AULA 12: Variáveis Compostas Homogêneas Vetores

TIPOS DE DADOS E VARIÁVEIS

Variáveis, Expressões Aritméticas e Entrada e Saída de Dados

Algoritmos II Aula 2 Vetores

Variável. Expressões. Atribuição. Tipos básicos Declaração. Aritméticas Lógicas. Professor Leandro Augusto Frata Fernandes

Aula 8 Vetores Cleverton Hentz

INFORMÁTICA APLICADA AULA 06 ALGORITMOS

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

Matrizes (Vetores Bidimensionais)

Algoritmos e Estruturas de Dados

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

LINGUAGEM C: ESTRUTURAS DEFINIDAS PELO

1 - VARIÁVEIS COMPOSTAS HOMOGÊNEAS (VETORES E MATRIZES)

Estruturas Compostas Matriz

Modelagem de Dados. Conceitos de Normalização. Prof. Esp. Andrew Rodrigues

Curso: Técnico em Informática Integrado Disciplina: Algoritmos Carga horária: 60h (80h/a) Período: 2º Ano Professor: Edmilson Barbalho Campos Neto

Estruturas de Dados Estáticas

Caracteres, Vetores e Matrizes

Linguagem C vetores. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

ESTRUTURAS COMPOSTAS. REGISTROS (Struct) Introdução à Ciência da Computação I Simone Senger Souza

Estruturas de Dados Estáticas Cont.

Algoritmos Lógica e Programação Prof. Me. Adelson Felipe Dias Nogueira

Estrutura de Dados. Struct (Registro) Lais Farias Alves

Computação 2. Aula 5. Diego Addan Estrutura de Dados Registros (structs)

Funções em Linguagem C Parte II

Exercícios de Fixação 01 - Prof.ª Myriam Algoritmos : Declarações de Variáveis, Operadores e seqüências simples

Noções de algoritmos - Aula 1

Introdução à Programação. Vetores. Prof. José Honorato F. Nunes

C Estruturas. Section Summary. Adriano Cruz 1 de fevereiro de 2016

4ª Série de Exercícios Variáveis Compostas Homogêneas 1. Faça um algoritmo que leia, via teclado, 10 valores do tipo inteiro e os guarde na memória.

O nome da variável é utilizado para identificação (para carga e posterior uso). Porém, são necessárias algumas regras para nomear essa variável:

Aula 3 Conceitos de memória, variáveis e constantes Cleverton Hentz

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 02/11/2015

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Matrizes. Para começar... Matrizes. Matrizes

ESTRUTURAS DE REPETIÇÃO - PARTE 3

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Algoritmo e Programação Matemática

Pseudocódigo e Visualg

Vetores. e o programa deverá ler os valores separadamente:

Programação Básica. Estrutura de um algoritmo

MC-102 Aula 12 Matrizes e Vetores Multidimensionais

Programação de Computadores:

Revisando Banco de Dados. Modelo Relacional

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Variáveis Compostas. Vanessa Braganholo

Algoritmos Estrutura Condicional

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

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Aula 03 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Português Estruturado

Comandos de Entrada. Lógica de Programação. Prof. Kleber Rezende

<identificador>[<tamanho>]: <tipo>;

Transcrição:

Aula 11 Conteúdo: 15. Estruturas de dados heterogêneas 15. Estruturas de Dados Heterogêneas Já vimos que os conjuntos de dados homogêneos (vetores e matrizes) armazenavam arranjos unidimensionais ou bidimensionais de elementos de um mesmo tipo, conforme a necessidade do algoritmo desenvolvido. Por exemplo, se quiséssemos armazenar as idades de um grupo de pessoas poderíamos declarar um vetor de elementos do tipo inteiro (idade: vet [1..N] de Inteiros) que estaria representando o conjunto de idades desse grupo de pessoas. Para os casos em que temos um conjunto de elementos que não são do mesmo tipo, necessitamos de uma estrutura que comporte esses tipos heterogêneos, e estaríamos definindo estruturas de dados heterogêneas, os s. 15.1. Registros Uma empresa vai fornecer o crediário para um cliente efetuar o pagamento em várias parcelas, mas para isso será necessário efetivar um cadastro dos dados mais relevantes para a localização do cliente, caso algum problema venha a ocorrer com os pagamentos. Estas informações seriam: Nome, Endereço, Número do CPF. A criação destas fichas cadastrais conterá dados com tipos diferentes, não sendo possível usar uma variável composta homogênea para guardar todos eles. Apesar disso, todos estes dados são relacionados, pois pertencem a uma mesma pessoa, ou seja, cada ficha possuirá diferentes dados (nome, endereço e CPF), mas todos eles são de um mesmo cliente, sendo todos estes dados relacionados logicamente a este cliente. Cada um dos dados que formam esta ficha é chamado de componente ou elemento do, sendo cada ficha completa identificada como um código de. Portanto, neste exemplo, só será possível conseguir um crediário após a efetivação do do cliente, sendo este formado pelos componentes nome, endereço e número do CPF. FICHA: 0 (ou primeiro ) NOME João Carlos da Silva caracter ENDEREÇO Rua São José, 576 caracter CPF 04568715898 inteiro componentes dados armazenados tipo de dados Aula 11 - Prof. Cláudio Marques - Pág. 1

Esta empresa também não fará o crediário somente para um cliente, mas para os vários clientes que possuírem um perfil interessante para a mesma. Assim, será necessário criar uma estrutura de dados que possa armazenar vários dados (composta) de tipos diferentes (heterogênea). Estas estruturas (compostas heterogêneas) também são chamadas de s e permitem uma organização eficiente no armazenamento e manipulação dos dados que estão implicitamente relacionados. As características dos s são: Pode conter vários s com valores (número definido); Os valores não precisam ser do mesmo tipo de dado; Um possui um único nome (identificador); Cada é acessível independentemente, sendo seus elementos também independentes de acordo com o seu nome significativo. Primeiro Registro[0] Segundo Registro[1] NOME: João Carlos da Silva ENDEREÇO: Rua São José, 576 CPF: 045687158-98 NOME: Maria Rita Amaral ENDEREÇO: Avenida Rui Barbosa, 234 apto. 31 CPF: 132876851-01 Observe o exemplo com dois s cadastrados. A primeira ficha contém os dados do João Carlos da Silva, enquanto que a segunda possui os dados da Maria Rita Amaral. 15.2. Declaração de s em algoritmos Para que um seja acessado deve existir uma variável do tipo do declarada, sendo esta uma variável simples, um vetor ou uma matriz. <identificador> = <lista dos campos e seus tipos> <variáveis> : <identificador> Identificador é o nome do tipo e lista dos campos e seus tipos é a relação de variáveis que serão usadas como campos, bem como seu tipo de estrutura de dados, podendo ser real, inteiro, lógico ou caractere. TCARRO = marca, modelo : caractere ano: inteiro Aula 11 - Prof. Cláudio Marques - Pág. 2

carro : TCARRO O declarado é denominado carro e possui três campos: os campos marca e modelo são do tipo caractere e o campo ano é do tipo inteiro. Carro Marca Modelo Ano carro.marca carro.modelo carro.ano 15.3. Atribuição de valores a campos de s nos algoritmos A atribuição de valores aos campos de um é feita referenciando-se a variável seguida do operador ponto (. ) e o nome do campo que receberá o valor. carro.marca Volkswagen carro.modelo Gol carro.ano 2008 variável.campo valor 15.4. Leitura e gravação em campos de s nos algoritmos A leitura dos valores dos campos de um, bem como a escrita, são feitas através dos comandos LEIA e ESCREVA. LEIA carro.ano ESCREVA carro.ano LEIA variável.campo ESCREVA variável.campo Exemplo de algoritmo com variável : Algoritmo Médias TAluno = Nummat: inteiro Nome: caractere Aula 11 - Prof. Cláudio Marques - Pág. 3

p1, p2, p3, media: real Aluno : TAluno Início ESCREVA Digite o número de matrícula do aluno: LEIA aluno.nummat ESCREVA Digite o nome do aluno: LEIA aluno.nome ESCREVA Digite a nota da 1ª prova: LEIA aluno.p1 ESCREVA Digite a nota da 2ª prova: LEIA aluno.p2 ESCREVA Digite a nota da 3ª prova: LEIA aluno.p3 aluno.media (aluno.p1 + aluno.p2 + aluno.p3) / 3 Fim ESCREVA O aluno, aluno.nome, cujo codigo de matricula é, aluno.nummat, possui media, aluno.media 15.5. Conjunto de s (Vetores ou matrizes de s) Em geral, não queremos guardar informações de um único carro ou de um único funcionário. Podemos também ter conjuntos de s (carros, funcionários), referenciáveis por um mesmo nome e individualizados por índices. Ou seja, podemos utilizar vetores ou matrizes de s. Considere o de uma mercadoria de uma loja: CÓDIGO NOME 7721 CAMISA AZUL PREÇO ESTOQUE 148200 2732 O conjunto de mercadorias da loja poderia ser agrupado numa variável composta heterogênea MERCADORIAS, onde cada elemento deste conjunto é um constituído por quatro componentes (CÓDIGO, NOME, PRECO e ESTOQUE). TMercadoria = nome: caractere código, estoque: inteiro preço: real mercadorias : vet [1..3] de Tmercadoria Aula 11 - Prof. Cláudio Marques - Pág. 4

mercadorias Nome Código Preço mercadorias[1].nome mercadorias[1].codigo mercadorias[1].preco Estoque Nome Código Preço Estoque Nome Código Preço Estoque mercadorias[1].estoque mercadorias[2].nome mercadorias[2].codigo mercadorias[2].preco mercadorias[2].estoque mercadorias[3].nome mercadorias[3].codigo mercadorias[3].preco mercadorias[3].estoque Exemplo de algoritmo com vetor de s Algoritmo que lê o nome, idade, sexo (masculino, feminino) de n pessoas (onde n 40), imprime o nome das pessoas que têm mais de 30 anos e são do sexo feminino. Algoritmo Maior_de_Trinta Início TPessoa = pessoas : vet [1..40] de TPessoa n, I: inteiro Nome, sexo: caractere idade: inteiro ESCREVA Digite o número de pessoas: ( 40) LEIA n Para i de 1 até n faça ESCREVA Digite o nome da, i, ª pessoa: LEIA pessoas[i].nome ESCREVA Digite o sexo (masculino, feminino): LEIA pessoas[i].sexo ESCREVA Digite a idade: Aula 11 - Prof. Cláudio Marques - Pág. 5

Fim Universidade Veiga de Almeida LEIA pessoas[i].idade Fim_para i 1 Enquanto i n faça Se (pessoas[i].idade > 30).e. (pessoas[i].sexo = feminino ) então ESCREVA pessoas[i].nome Fim_se i i +1 Fim_enquanto Aula 11 - Prof. Cláudio Marques - Pág. 6