UDESC - Prof. Juliano Maia

Slides:



Advertisements
Apresentações semelhantes
Pearson Education Slide 1. Pearson Education Slide 2 Cap í tulo 5 Criado por Frederick H. Colclough, Colorado Technical University Vetores.
Advertisements

Profª. Leticia Lopes Leite LAPRO A - FACIN
ICC – Matrizes Jorge Macêdo.
1 Tipos definidos O programador pode definir seus próprios tipos de dados tipos complexos usados da mesma forma que os simples declaram-se variáveis utilizando-se.
Introdução à Linguagem C
Programação II Funções especiais Ricardo de Sousa Britto
Linguagem C LPG-I – Variáveis Estruturadas – Vetores
Introdução Linguagem C
AULA – Linguagem C – Vetores, Ponteiros Estruturas
Ponteiros em C.
Ferramentas Programação
LPG – I Prof. Flavio Marcello
UDESC - Prof. Juliano Maia1 Funções. UDESC - Prof. Juliano Maia2 Índice Seção 1 – Funções em C Seção 2 – Iniciação Ponteiros Seção 3 – Recursão.
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
LPG-I: Tipos Complexos - Estruturas
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Universidade Federal do Espírito Santo Programação II Vetores Professora: Norminda Luiza.
PROGRAMAÇÃO ou LINGUAGEM C?
Lógica de Programação Módulo II
Linguagem C Strings.
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Linguagem C Strings.
Matrizes e Funções - Continuação
Ponteiros.
Strings Definição: Não confundir caracteres com strings
Introdução a Computação e Cálculo Numérico
Vetores em c / c++: Formato geral para declaração de variáveis:
Aula prática 7 Strings Monitoria de Introdução à Programação
Curso de Nivelamento LCG
Linguagem de Programação II Parte VII
CADEIA DE CARACTERES (Strings)
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
UNIDADE 5 ESTRUTURAS DE DADOS HOMOGÊNEAS
7 Arrays.
Prof. Ricardo Santos PONTEIROS
Curso de C/C++ Aula 2 Instrutor: Luiz Felipe Sotero
Computação Eletrônica
Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.
Vetor Prof. Guilherme Baião S. Silva Adaptações:
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Aula prática 7 Strings Monitoria de Introdução à Programação
Linguagens de Programação – DEL-Poli/UFRJ Prof. Miguel Campista Linguagens de Programação Prof. Miguel Elias Mitre Campista
Estruturas de Dados Aula 6: Cadeias de Caracteres
STRINGS Dilvan Moreira (baseado no livro Big Java e Z. Liang)
Aula Prática 5 Monitoria IP/CC (~if669). Roteiro 1. 1.Recursão 2. 2.Escopo de Variáveis 3. 3.Arrays 4. 4.Strings.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
1 Introdução à Linguagem C Strings Deise Saccol Adaptado de slides das Profas. Patrícia Jaques e Mônica Py.
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Ponteiros.
Aula prática 7 Strings Monitoria de Introdução à Programação.
Algoritmo e Estrutura de Dados I Aulas 12 – Linguagem C Strings Márcia Marra
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LINGUAGEM DE PROGRAMAÇÃO I Aula /08/2011 Professor Leomir J. Borba-
Linguaguem de Programação II
Estrutura de Dados Revisão Professor Luiz José Hoffmann Filho
 O que são arrays:  estruturas de dados homogêneas  coleção de elementos do mesmo tipo referenciada por um nome comum  um array pode ser imaginado.
Estruturas Homogêneas – Vetores e Matrizes
Profa. Maria Augusta Constante Puget
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Funções.
Algoritmo e Estrutura de Dados I Aulas 14 – Linguagem C Matriz Márcia Marra
Aula prática 7 Strings Monitoria de Introdução à Programação.
Linguagem de Programação
Arrays e Matrizes na Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
Arrays Outline 7.1 Introdução 7.2 Arrays 7.3 Declarando e Criando Arrays 7.4 Exemplos usando arrays 7.5 Ordenando arrays 7.6 Procurando em.
PCI- Vetores Profa. Mercedes Gonzales Márquez. Aula 5 - VetoresAlgoritmos e Estruturas de Dados I Sequência de valores todos do mesmo tipo Nome único.
Aula Prática 6 Ponteiros Monitoria  Quando declaramos uma matriz:  tipo meuArray[tam];  O compilador aloca a matriz em uma região de memória.
Strings e Arrays Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de Informática,
Estruturas Homogêneas - Vetores
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.
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Aula 5 Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI.
Aula Prática 7 STRINGS Monitoria  Um dos tipos de arranjos que mais ocorre em C é o arranjo de caracteres, ou string. C não suporta um tipo básico.
Transcrição da apresentação:

UDESC - Prof. Juliano Maia Matrizes UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Índice Seção 1 – Definições Seção 2 – Matrizes Unidimensionais Seção 3 – Matrizes Multidimensionais UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Definições Seção 1 Conceito UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Conceito Uma matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum. Um elemento de uma matriz é acessado por meio de um índice. Em C, todas as matrizes consistem em posições contíguas na memória. UDESC - Prof. Juliano Maia

Matrizes Unidimensionais Seção 2 Introdução Indexação Vetores Argumentos para Funções Parâmetros de Funções Strings Funções de Manipulação de Strings UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Introdução Matrizes unidimensionais, mais conhecidas como vetores ou ARRAYs, são amplamente utilizadas em programação. Tratam-se de matrizes com uma única dimensão. A declaração geral de vetores em C é: tipo de dado nome[tamanho]; int numeros[30]; Os colchetes determinam que a variável é uma matriz, e o número entre os mesmo determina seu tamanho. Obs.: Em C, toda matriz tem 0 (zero) como o índice do seu primeiro elemento. UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Indexação Vetores UDESC - Prof. Juliano Maia

Argumentos para Funções Matrizes não suportam passagem por valor; apenas passagem por referência. Na passagem da matriz para uma função utiliza-se apenas seu nome, sem índices: int vet[10]; ... func(vet); UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Parâmetros de Funções Quando uma função recebe um vetor como parâmetro formal, a mesma pode ser definida de três formas: Como ponteiro: void funcao(int *vet){ Como matriz dimensionada: void funcao(int vet[10]){ Como matriz não dimensionada: void funcao(int vet[]){ UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Strings Strings são conjuntos de caracteres. É o uso mais comum de vetores em C. Cria o efeito de um novo tipo de dado, destinado a armazenar palavras. Obs.: Strings são terminadas por um nulo (\0). Por isso, é necessário declará-las sempre com uma posição a mais do que se necessita: char palavra[31]; // armazenas palavras de até 30 caracteres. UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Strings Uma vez que strings são vetores de caracteres e não um tipo de dado primitivo, existem algumas restrições a operadores relacionais. char palavra[21]; ... palavra = “teste”; // incorreto! if(palavra == “teste”){ // incorreto! Obs.: Utiliza-se aspas duplas no tratamento de strings, e não aspas simples como em char. UDESC - Prof. Juliano Maia

Funções Manipulação de Strings Para superar estas limitações, existem funções padrões para manipulação de strings, pertencentes a biblioteca string.h As mais utilizadas são: strcpy() strlen() strcmp() strcat() UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia strcpy() / strlen() strcpy(s1,s2); Copia a string s2 em s1. Substitui o operador =, utilizado pelos outros tipos de dados. strlen(s1); Retorna o tamanho de s1. UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia strcmp() / strcat() strcmp(s1,s2); Compara s1 e s2 retornando: 0 se s1 e s2 são iguais; Menor que 0, se s1 < s2; Maior que 0, se s1 > s2. Substitui o operador ==, utilizado pelos outros tipos de dados. strcat(s1,s2); Concatena s2 ao final de s1. UDESC - Prof. Juliano Maia

Matrizes Multidimensionais Seção 3 Introdução Indexação Matrizes Bidimensionais Parâmetros para Funções Matrizes de strings Inicialização de Matrizes UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Introdução C suporta matrizes multidimensionais. A exemplo dos vetores, são utilizados colchetes para indicar as dimensões: int matriz[5][5] // Matriz 5 X 5 float dados[3][3][3] // Matriz 3 X 3 X 3 Não é comum a utilização de matrizes de três ou mais dimensões devido à quantidade de memória de que elas necessitam. UDESC - Prof. Juliano Maia

Indexação Matrizes Bidimensionais UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Parâmetros de Funções Quando uma matriz multidimensional é usada como parâmetro de função, não é necessário definir sua primeira dimensão. Desta forma, ambas as definições abaixo são válidas: void func(int mat[10][10]){ void func(int mat[][10]){ UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Matrizes de strings É muito comum, em programação, a utilização de vetores de strings. Em C, para se criar um vetor de strings, usa-se uma matriz bidimensional de char. O tamanho do índice esquerdo indica o número de strings e o tamanho do índice direito o comprimento de cada string. Ex.: char nomes[10][41]; UDESC - Prof. Juliano Maia

Leitura de Matrizes de strings #include<stdio.h> #include<conio.h> #include<string.h> #define SIZE 10 int main(){ char lista_nomes[SIZE][31]; int cont; for(cont=0; cont<SIZE; cont++){ printf("INFORME O %i NOME: ", cont+1); gets(lista_nomes[cont]); // mais comun //scanf("%s", &lista_nomes[cont]); ou scanf("%s", &lista_nomes[cont][0]); } puts(“\n** NOMES INFORMADOS **"); for(cont=0; cont<SIZE; cont++) printf("\n%s ", lista_nomes[cont]); getch(); UDESC - Prof. Juliano Maia

Inicialização de Matrizes C permite a inicialização de matrizes no momento de sua definição, da mesma forma que variáveis simples. Ex.: int numeros[5] = {0,1,2,3,4}; char nome[8] = “EXEMPLO”; float reais[2][2] = {0,0,0,0}; UDESC - Prof. Juliano Maia

UDESC - Prof. Juliano Maia Dúvidas? ? UDESC - Prof. Juliano Maia