Matriz(vetor Multidimensional)

Documentos relacionados
Atualização Técnica e Pedagógica de Professores no componente de Lógica de Programação com C# (console) Semana 4 Vetor e Matriz

Matrizes. Marina Andretta. 17 de abril de 2017 ICMC-USP. Marina Andretta (ICMC-USP) sme0230-ipc 17 de abril de / 30

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

LÓGICA DE PROGRAMAÇÃO (C) VETORES E MATRIZES. Professor Carlos Muniz

Agenda. O que é um array. Declaração de um array. Instanciação de um array. Acessando os elementos de um array. O tamanho de um array (length)

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

Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Aula 17: Ponteiros e Alocação Dinâmica em C

Programação científica C++

Listas Ligadas (Encadeadas) Listas Simplesmente Encadeadas

Linguagem de Programação

A sintaxe para se declarar uma variável do tipo ponteiro é dada por:

Aula 10: Introdução a Vetores e Matrizes

Alocação dinâmica de Memória

O que é um jogo digital?

Computação Eletrônica. Vetores e Matrizes. Prof: Luciano Barbosa. CIn.ufpe.br

Ponteiros em C. Adriano Joaquim de Oliveira Cruz 21 de julho de Instituto de Matemática Departamento de Ciência da Computação UFRJ

Arrays e Marizes. João Paulo Q. dos Santos

Vetores e Matrizes. Vetores

Introdução aos Algoritmos

Módulo 5 Vetores e Alocação Dinâmica

algoritmo "exercício vetor" var vet:vetor [1..12] de inteiro i:inteiro inicio para i de 1 ate 12 faca escreva ("Entre com vetor[",i,"]: ") leia

Lógica de Programação e Algoritmos

Matrizes (Vetores Bidimensionais)

Introdução aos Algoritmos

ALOCAÇÃO DINÂMICA DE MEMORIA Lista 10. A linguagem C/C++ possui recursos para alocação dinâmica de memoria.

Linguagem C Vetores, Matrizes e Strings

Algoritmos e Estruturas de dados

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros

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

Laboratório de Programação II

Linguagem de Programação

Fundamentos de Programação

Métodos Computacionais

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

Métodos Computacionais. Vetores e Matrizes Dinâmicas

Aula 18 Algoritmos básicos de busca e classificação

Capítulo 7 Matriz. Roteiro

Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C

Introdução à Programação

Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I

Introdução à Programação

Funções Vetores Matrizes

Comandos de controle de fluxo: if / for / while / do while.

Algoritmos e Programação Parte 02 Vetores e Matrizes

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Ponteiros e Tabelas. K&R: Capítulo 5

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

Algoritmos e Estruturas de Dados

Usando display LCD tipo 16x2

1.1 o que é um algoritmo... 6

Abaixo seguem os comandos e suas particularidades, bem como exemplos para o indicador de linha

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

TAD: Tipo Abstrato de Dados (parte 2)

Programação de Computadores II. Cap. 5 Alocação Dinâmica

Permite modularidade (dividir programa em partes): Facilita a depuração (debug) e portabilidade.

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

Matrizes. DCC 119 Algoritmos

Fundamentos de Programação

Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

CURSO DE POO COM JAVA

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

7. Vetores e Matrizes

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Linguagem C: Introdução

Array em Java. Figura 1 - Exemplo de um array de inteiros

5. Vetores e alocação dinâmica

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

Capítulo 8: Matrizes

Algoritmos e Programação

Transcrição:

Matriz(vetor Multidimensional) Matriz segundo Laureano(2008) é...um arranjo bidimensional ou multidimensional de alocação estática e seqüencial., ou seja, uma estrutura de várias dimensões, que mantém sua posição na memória durante a execução do programa, e assim como no vetor é armazenado em sequência na memória. Para declarar uma matriz é necessário informar o tipo, nome e quantidade e tamanho de dimensões. int a[j][r]

Declarando um vetor definindo dois índices assim formando um vetor bidimensional, com linhas e colunas: int a [3][5]; Acima é representado a forma lógica de uma matriz onde o espaço escurecido pode ser referenciada como a[1][3]. Em uma matriz podemos perceber a diferença do armazenamento lógico e físico pois num vetor bidimensional podemos imaginar os dados sendo armazenados em colunas e linhas, porém na memória do computador isso não acontece ela é armazenada de forma sequencial. Exemplos:

Executando o código a cima: Repare que embora os valore 12 e 13 estejam em diferentes linhas da matriz a posição da memória continua em sequência. Vamos percorrer o laço for lá em cima para entender o que ocorre no preenchimento da matriz, e tentar responder o porquê de usar dois laços for para percorrer a matriz. Vamos listar primeiro alguns pontos: relação de for e as dimensões das matrizes posição das matrizes tipo da matriz.

Laço for e as dimensões Cada laço for percorre uma dimensão da matriz, lembra do vetor onde se usa um laço for para percorrê lo? Então, aqui é a mesma coisa, porém cada for percorre uma dimensão da matriz. O vetor de certa forma é uma matriz porém ele pode possuir apenas uma linha diferente da matriz que pode ou não possuir apenas uma linha. Posição na matriz A posição da matriz se dá por números que indicam sua dimensão, ou seja para cada dimensão haverá um número indicando a posição em específico, por exemplo, numa matriz bidimensional teremos dois números para indicar as posições em cada uma das dimensões, em uma matriz de três teremos três assim por diante. Tipo da matriz O tipo da matriz pode ser qualquer um dos tipos primitivos ou ainda pode ser algum tipo composto, assim ele agirá conforme o tipo age separadamente, ou seja, as propriedade do tipo escolhido agirá sobre a matriz sem que ele perca suas próprias propriedades. Pode se até se dizer que a matriz é um vetor de vetor. Percorrendo a matriz manualmente Vamos começar fazendo um teste de mesa rapide com uma matriz de 2 por 2, é um programa que percorre a matriz e insere um número 1 em cada posição, apenas isso fácil não? Antes disso veja o código e cada linha comentada Código:

1. importando a biblioteca stdio.h 2. importando a biblioteca stdlib.h 3. linha vazia 4. declarando a função main 5. abrindo bloco de código da função main 6. declara uma matriz do tipo u=int coma as dimensões de duas linhas e duas colunas 7. linha vazia 8. usando comando for para percorrer as linhas, saiba que cada for indica uma dimensão respectivamente ou seja o primeiro for representam a primeira dimensão a segunda a segunda e assim por diante. Inicializa i(linha com 0; enquanto i menor que 2, ou seja, 1(lembrando que os vetores em C começam em 0);i é incrementado em 1. Abre bloco de código deste primeiro for.. for que percorre a linh, ou seja a segunda dimensão que obedece o mesmo comando que o primeiro for. Abre bloco de código do segundo for..atribui a posição ma matriz [i,j] o valor 1 11. fecha bloco de código do segundo for 12.fecha bloco de código do primeiro for 13.fecha bloco de código do main 14.linha vazia

Muito bem agora vamos para o teste de mesa: Linha Matriz[2][2] i j 6 8 0? 0 0 0 0 repare que como está no laço de repetição em vez de ir para a próxima linha voltou para o início do segundo for 0 1 0 1 0 2 Veja agora que o segundo laço de repetição saiu da sua condição e não há mais comando na linha seguinte, assim o primeiro for será executado novamente. Repetindo mais uma vez o processo

8 1 2 1 0 1 0 1 2 8 2 2 agora que os dois está fora das condições o programa acabou.