Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 12 Registros.

Slides:



Advertisements
Apresentações semelhantes
TIPOS ABSTRATOS DE DADOS
Advertisements

Funções em C Prof. Fabiano Utiyama.
Técnicas de Programação II Revisão TP1 Parte2
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
C/C++ para Sistemas Operacionais Professor: André Luis Meneses Silva /msn: Página:
Linguagem de Programação VI Tipos de Dados Compostos - structs
Algoritmo e Programação
Construção de Algoritmos AULA 07
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos AULA 07 Aquiles Burlamaqui UERN
Nivelamento de C: Tipos Estruturados de Dados
Programação II Estruturas de Dados
Programação II Estruturas de Dados
Algoritmos e Programação Linguagens de Programação Teoria Aula (09/06)
Aula 1 Tipo Abstrato de Dados
LINGUAGEM C.
Programação II Estruturas, uniões e enumerações
Linguagem de Programação 1
Algoritmos Escher.
Ponteiros em C.
LPG-I: Tipos Complexos - Estruturas
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
LINGUAGEM ESTRUTURADA TURBO C
Universidade Federal do Espírito Santo Programação II Estruturas Professora: Norminda Luiza.
Curso de Programação em C++
Vetores, Matrizes e Funções
Armazenamento de Dados em Arquivos
Estruturas de Dados Heterogêneas (struct)
Estruturas de Dados Homogêneas Multidimensionais – Matrizes
Ponteiros.
Escola Secundária c/ 3º CEB da Batalha
Vamos agora aprender a utilizar estruturas.
APRESENTAÇÃO: GIANCARLO DE GUSMÃO GONÇALVES CURSO DE C AULA 08: Tipos Estruturados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
1 Ponteiros Ponteiros são variáveis que guardam localizações em memória. A declaração de uma variável ponteiro x para um dado tipo type é type *x; Essa.
Definição de Tipos Estruturas e Ponteiros
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos AULA 07 Aquiles Burlamaqui UERN
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
FMU – 1. Semestre – Tecnologia – Analise e Desenvolvimento de Sistemas
Introdução a Linguagem de Programação C
Estrutura de Dados Avançada
Aula 10 - Armazenamento de Dados em Registros
Leandro Almeida  Parâmetros são utilizados em computação para possibilitar a construção de subprogramas genéricos.
Programação orientada a objectos em C++
Laboratório I Mateus Raeder. Mateus Raeder – fevereiro de 2009 Associação entre classes  Um objeto é a representação de uma entidade do mundo real 
Banco de Dados Aplicado ao Desenvolvimento de Software
Estruturas de Dados Aula 7: Tipos Estruturados 23/04/2014.
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Joaquim José Hangalo  Podemos entender a memória do computador como um conjunto de células que armazenam informações.  Cada célula.
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
Estruturas Revisando: tipos de dados simples
Programação de Computadores I – Arquivos
PCI- Registros Profa. Mercedes Gonzales Márquez. Conceito Variáveis compostas heterogêneas (não homogêneas) Estruturas: variáveis que podem conter uma.
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 2 Variáveis e Atribuições.
MC102 - Algoritmos e Programação de Computadores 14ª Aula - Ponteiros Amanda Meincke Melo Instituto de Computação/Unicamp 1º Sem/2005.
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Ponteiros.
Programação Computacional Aula 9: Meu primeiro programa em C
AULA 09 PROGRAMAÇÃO I. Estruturas de Dados Heterogêneas 10/08/2010 Programação I 2 Objetivo: Estudar os tipos de dados heterogêneos:  Registros;  Arrays.
Linguagem de Programação II
Estrutura de Dados Revisão Professor Luiz José Hoffmann Filho
Profa. Maria Augusta Constante Puget
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Funções.
Programação II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres.
Programação de Computadores I – Arquivos Profa. Mercedes Gonzales Márquez.
Fundamentos de Programação 1 Slides 19 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Arquivos Binários”.
Estrutura de Dados STRUCTS Dilvan Moreira. Objetivos  Entender o que são e como usar:  Estrutura de Dados para a Linguagem C  Structs (Registros)
1 Aula 07 Strings Prof. Filipe Mutz. 2 Em nossos programas ainda não vimos como armazenar palavras e textos, e eles são muito importantes! Exemplos: Programas.
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
Fundamentos de Programação 1 Slides 18 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Arquivos Seqüências ou de Texto ”. 1.
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Transcrição da apresentação:

Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 12 Registros

Registros/Estruturas Motivação: –MODELAGEM DE DADOS: MUNDO REAL: –Objetos/conceitos complexos. MODELO: –Representações que simplificam a realidade. –Tornam possível o estudo e a manipulação. –Úteis para um determinado propósito.

Registros/Estruturas Motivação: –MODELAGEM DE DADOS: MUNDO REAL MODELO Simplificação Aluno Nome RA CR Sexo

Registros/Estruturas Motivação: –MODELAGEM DE DADOS: MUNDO REAL MODELO Simplificação Aluno Nome RA CR Sexo Entidade: Algo que é relevante para o sistema. Pode estar associada a um elemento concreto, ou a um conceito “abstrato”.

Registros/Estruturas Motivação: –MODELAGEM DE DADOS: MUNDO REAL MODELO Simplificação Aluno Nome RA CR Sexo Atributos: Conjunto de propriedade particulares que descrevem uma entidade.

Registros/Estruturas Problema: –Como representar um modelo em linguagem C? Conjunto de variáveis. MUNDO REAL Linguagem C Implementação Aluno Nome RA CR Sexo Simplificação MODELO char nome[100];int ra; char sexo;float cr;

Registros/Estruturas Problema: –Como representar um modelo em linguagem C? Conjunto de variáveis. Podem ser agrupadas em estruturas. MUNDO REAL Linguagem C Implementação Aluno Nome RA CR Sexo Simplificação MODELO char nome[100];int ra; char sexo;float cr; struct Aluno;

Registros/Estruturas Definição: –Uma estrutura é um tipo de dado cujo formato é definido pelo programador. –Ela agrupa elementos, chamados membros ou campos da estrutura, que não necessitam ser do mesmo tipo.

Exemplo: #include struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; }; int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; return 0; }

Exemplo: #include struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; }; int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; return 0; } Definição do formato da estrutura. Tipo struct Aluno é definido.

Exemplo: #include struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; }; int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; return 0; } Membros da estrutura “Etiqueta” da estrutura

Exemplo: #include struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; }; int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; return 0; } Declaração de uma variável do tipo definido.

Exemplo: #include struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; }; int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; return 0; } Acessando membros da estrutura. nome_registro.campo

Registros/Estruturas Operações de entrada e saída (leitura e escrita): –A leitura/escrita de estruturas pela entrada/saída padrão, deve ser feita campo a campo, como se os membros fossem variáveis independentes. //fgets(aluno.nome,99,stdin); scanf(" %[^\n]",aluno.nome); scanf("%d",&aluno.ra); scanf("%f",&aluno.cr); scanf(" %c",&aluno.sexo); scanf("%d",&aluno.curso); printf("Nome: %s\n",aluno.nome); printf("RA: %d\n",aluno.ra); printf("CR: %.2f\n",aluno.cr); printf("Sexo: %c\n",aluno.sexo); printf("Curso: %d\n",aluno.curso);

Registros/Estruturas Atribuição entre estruturas: –O conteúdo de uma variável estrutura pode ser atribuído a outra variável estrutura do mesmo tipo. –Todos campos da estrutura de origem são atribuídos aos membros correspondentes da estrutura de destino. int main(){ struct Aluno aluno1; struct Aluno aluno2;... aluno1 = aluno2;... return 0; }

Estruturas Aninhadas Estruturas com campos que são estruturas. Recurso para a criação de tipos de dados complexos. struct Data{ int dia; int mes; int ano; }; struct Endereco{ char rua[100]; char bairro[100]; char cidade[100]; int cep; }; struct Aluno{ char nome[100]; int ra; float cr; char sexo; int curso; struct Data nascimento; struct Endereco endereco; };

Estruturas Aninhadas Estruturas com campos que são estruturas. Recurso para a criação de tipos de dados complexos. int main(){ struct Aluno aluno; strcpy(aluno.nome,"Fulano da Silva"); aluno.ra = ; aluno.cr = 1.0; aluno.sexo = 'M'; aluno.curso = 43; aluno.nascimento.dia = 13; aluno.nascimento.mes = 9; aluno.nascimento.ano = 1980; strcpy(aluno.endereco.rua,"Av. Dr. Alberto Sarmento"); strcpy(aluno.endereco.bairro,"Castelo"); strcpy(aluno.endereco.cidade,"Campinas"); aluno.endereco.cep = ;...