Algoritmos e Lógica de Programação - Estruturas de Dados (PDF)
Document Details
Prof. Me. Francisco Bianchi
Tags
Related
- Algoritmos II - Unidad 1 - Estructuras Dinámicas de Datos PDF
- Algoritmos II - Unidad 1 - Estructuras Dinámicas de Datos - CUC Universidad de LaCosta - PDF
- Algoritmos II - Unidad 1 - Estructuras Dinámicas de Datos PDF
- Clases de Algoritmos y Estructuras de Datos - Clase 6 PDF
- Programación: Estructuras de Almacenamiento y Cadenas de Caracteres PDF
- Capítulo 12 Estructuras Dinámicas Lineales de Datos (Joyanes)
Summary
Este documento introduz os conceitos básicos sobre estruturas de dados, com foco em vetores (arrays), em linguaguens de programação como o C++. São apresentados exemplos e declarações básicos para estruturas de dados, como arrays e vetores unidimensionais.
Full Transcript
Algoritmos e Lógica de Programação 9. Estruturas de Dados Segundo o conceito de Informação, temos que: "Informação é a matéria-prima que faz com que seja necessária a existência dos computadores, pois eles são capazes de manipular e armazenar um grande volume de...
Algoritmos e Lógica de Programação 9. Estruturas de Dados Segundo o conceito de Informação, temos que: "Informação é a matéria-prima que faz com que seja necessária a existência dos computadores, pois eles são capazes de manipular e armazenar um grande volume de dados, com alta performance..." (Forbellone, André Luiz Villar). Os computadores, de maneira geral, manipulam informações, enquadrando-as nos seguintes tipos primitivos: Numérico INTEIRO (com ou sem sinal), Numérico REAL, CARACTERE ou LÓGICO. Na linguagem C++, temos alguns tipos de dados pré-definidos ou primitivos, a disposição dos programadores, para codificação de seus algoritmos, tais como: int, char, float, double, bool, etc.. Porém, como podemos notar, a quantidade de tipos de dados estipulados pode não ser suficiente para representar toda e qualquer informação que possam ocorrer. Essa deficiência poderia ser resolvida se tivéssemos à disposição mais tipos de dados, ou mais precisamente, se esses tipos pudessem ser criados à medida de sua necessidade. Podemos, a partir da composição de tipos primitivos, construir novos tipos. Dentre os novos tipos, podemos construir os que têm um formato denominado: ESTRUTURA DE DADOS. Uma estrutura de dados define como os tipos primitivos serão organizados. Assim como uma variável simples pode ser entendida como um elemento, a ESTRUTURA DE DADOS pode ser vista como um conjunto de elementos. Uma estrutura de dados, também denominada variáveis estruturadas ou variáveis compostas, também é referenciada como: “Matriz”, “Vetor”, “Array”, “Tabela”, etc. 9.1. Variáveis Compostas Homogêneas - VCH São Estruturas de Dados, também denominada VETOR, composta de “n” variáveis com o mesmo tipo de dado primitivo. Portanto, uma VCH corresponde a posições de memória identificadas por um único nome, individualizadas por índices, e cujo conteúdo é de um mesmo tipo de dado. ✓ Variável Composta Homogênea Unidimensional (VCHU) - Vetor São Estruturas de Dados, cujos elementos são endereçados por um único índice. Para entender esse tipo de Estrutura de Dados imagine uma escada, com um número finito de degraus, conforme mostrado na figura a seguir. A escada é a estrutura, e os degraus são os elementos dessa estrutura. Sendo os degraus uma divisão direta da escada, estes formam então o que chamamos de estrutura unidimensional (uma dimensão). Aula_09_1_ALGLP_Estruturas de Dados_Vetor.doc – Prof. Me. Francisco Bianchi 1 Algoritmos e Lógica de Programação Supondo que cada degrau seja numerado de 1 a 9, e que em cada degrau esteja pendurada uma etiqueta contendo uma letra. Para acessar a letra "G", temos que olhar "apontar" para o degrau número 4. Portanto, o número 4 é um índice que aponta para um determinado degrau. Portanto, para acessar um elemento (degrau) da escada, devemos saber qual a sua posição (número) na escada. É exatamente dessa forma que o computador irá agir, quando estiver manipulando vetores. Declaração de VCHU - Vetor, em algoritmo na forma de Descrição Narrativa = VETOR [número de elementos] do ; Número de elementos - é a quantidade de elementos que o VETOR irá comportar. Tipo de Dado : Tipo de dados que os elementos do Vetor irá armazenar. (Numérico Inteiro com ou sem sinal; Caractere; Numérico com decimais; etc.). Declaração de VCHU em linguagem C tipo de dado [Número de elementos]; Exemplo: criação de um VETOR para armazenar as vogais do nosso alfabeto. char vet_vogais; Atenção! Na linguagem C, o primeiro elemento do vetor é o elemento 0 (zero). Portanto, para armazenar 5 vogais declaramos o tamanho como sendo 5, e os dados serão armazenados a partir da posição 0. Portanto, o último elemento do Vetor é o Tamanho Total do Vetor - 1 No exemplo (5 -1 = 4). O último elemento é o 4. Aula_09_1_ALGLP_Estruturas de Dados_Vetor.doc – Prof. Me. Francisco Bianchi 2 Algoritmos e Lógica de Programação Declaração de Vetor, contendo valores constantes Uma Variável do Tipo Vetor poderá ser definida contendo valores constantes, ou seja, nenhuma estrutura, dentro do bloco principal do programa, será necessária para carregar os dados constantes no Vetor. As regras para definição de constantes simples são as mesmas para a definição de Vetores com valores constantes. Sintaxe: tipo de dado [Número de elementos] = {valores constantes}; Onde: - são valores fixos de Tipo Numérico Inteiro com, ou sem Decimais, Caracteres ou cadeia de caracteres (string). Exemplo: Definição de um Vetor com taxas de juros mensais (12 meses): float vet_taxa_juros = {1.2,2.1,1.8,1.5,1.0,1.3,2.3,2.6,2.4,2.5,3.0,2.2}; O corpo principal de um programa, em linguagem C++, a definição/manipulação de um vetor de constantes contendo a descrição de meses do ano de forma abreviada. int main() { setlocale(LC_ALL,"Portuguese"); float vet_val_vendas_ano; // Vetor para armazenar as vendas mensais (12 meses) unsigned int mes; // Índice do Vetor float ac_val_vendas_ano; // Acumulador de Valor de Vendas Mensais char mes_ext = {"Jan","Fev","Mar","Abr","Mai","Jun", "Jul","Ago","Set","Out","Nov","Dez"}; gotoxy(02,03); puts(">"); gotoxy(05,05); printf("Informe o Valor de Vendas do Mes [ ]: "); for (mes = 0; mes