Você está na página 1de 49

Disciplina: Computação

Aula 3 - Estrutura de dados via Matlab


Criando Arranjos

Prof. Msc. Juliana

UNIFOA

20 de Fevereiro de 2019
Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Objetivos

• Familiarização com o ambiente de trabalho: (Matlab).


• Assimilação dos comandos principais do Matlab.
• Aplicação das Estruturas de Dados via Matlab.
• Criar arranjos unidimensionais (Vetores).
• Criar arranjos bidimensionais (Matrizes).
• Realizar operações matemáticas com Arranjos.
• Aplicações de nosso aprendizado teórico via Matlab.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 2/ 43 20 de Fevereiro de 2019 2 / 43


Aula 3: Arranjo Unidimensional via Matlab

Há duas formas de inicializar um vetor com valores conhecidos.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 3/ 43 20 de Fevereiro de 2019 3 / 43


Aula 3: Arranjo Unidimensional via Matlab

Vetor linha: para criar um vetor, digite os elementos dentro dos


colchetes, separando-os por um espaço ou uma vı́rgula.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 4/ 43 20 de Fevereiro de 2019 4 / 43


Aula 3: Arranjo Unidimensional via Matlab

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 5/ 43 20 de Fevereiro de 2019 5 / 43


Aula 3: Arranjo Unidimensional via Matlab

Criando um vetor com elementos espaçados de um fator


constante:
Neste tipo de vetor, os elementos possuem a mesma separação entre si.
Por exemplo, no
vetor v= 2 4 6 8 10, o incremento entre eles é 2.
Um vetor cujo primeiro elemento é m é q e o último é n, pode ser
criado digitando-se:

Nome variável = [m:q:n]


ou
Nome variável = m:q:n

Obs.: Os colchetes são opcionais.


./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 6/ 43 20 de Fevereiro de 2019 6 / 43


Aula 3: Arranjo Unidimensional via Matlab

Uma função útil é a linspace(a,b,c) que retorna um vetor com c


elementos de a até b linearmente espaçados.
Um vetor cujo primeiro elemento é xi , o último é o xf e o número de
elementos é n, pode ser criado por meio do comando linspace(O
Matlab) determina o incremento/decremento correto):

Nome vari vel = linspace(xi , xf , n)

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 7/ 43 20 de Fevereiro de 2019 7 / 43


Aula 3: Arranjo Unidimensional via Matlab

É possı́vel concatenar dois ou mais vetores linha.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 8/ 43 20 de Fevereiro de 2019 8 / 43


Aula 3: Arranjo Unidimensional via Matlab

Para acessar os elementos de um vetor linha deve-se utilizar parênteses.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 9/ 43 20 de Fevereiro de 2019 9 / 43


Aula 3: Arranjo Unidimensional via Matlab

Vetor coluna:
O Matlab também suporta vetores coluna, porém, diferente dos vetores
linha, há a necessidade de pontuação no processo de criação do vetor.
Vetor coluna: para criar um vetor coluna, digite os elementos dentro
dos colchetes a partir do colchete esquerdo [.
Então, ente com os elementos separando-os por ponto-e-vı́rgula ou
pressionando a tecla Enter após cada elemento.
Por fim digite o colchete ] para terminar a criação do vetor coluna.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 10/ 43 20 de Fevereiro de 2019 10 / 43


Aula 3: Arranjo Unidimensional via Matlab

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 11/ 43 20 de Fevereiro de 2019 11 / 43


Aula 3: Arranjo Unidimensional via Matlab

Vetor coluna:
É possı́vel concatenar dois ou mais vetores coluna.
Atenção: Os vetores concatenados devem ter o mesmo comprimento.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 12/ 43 20 de Fevereiro de 2019 12 / 43


Aula 3: Arranjo Unidimensional via Matlab

Vetor coluna:
Para acessar os elementos de um vetor coluna também deve-se utilizar
parênteses.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 13/ 43 20 de Fevereiro de 2019 13 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Como criar matrizes


A inicialização de matrizes é semelhante à criação de vetores.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 14/ 43 20 de Fevereiro de 2019 14 / 43


Aula 3: Arranjos Bidimensional (Matriz)

Como criar matrizes


• Como criar:
◮ Opção 1:

• A partir de vetores C=[ 2 3];D=[ 3 4];


• M=[C;D].
◮ Opção 2:
• M= [ 2 3; 3 4] ou M=[ 2,3; 3, 4];

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 15/ 43 20 de Fevereiro de 2019 15 / 43


Aula 3: Arranjos Bidimensional (Matriz)

Matrizes via Matlab


• O método mais fácil de introduzir pequenas matrizes no MATLAB
é utilizando uma lista explı́cita.
• Os elementos de cada linha da matriz são separados por espaços
em branco ou vı́rgulas e as colunas separadas por ponto e vı́rgula,
colocando-se colchetes em volta do grupo de elementos que
formam a matriz com o objetivo de limitá-la. Por exemplo:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 16/ 43 20 de Fevereiro de 2019 16 / 43


Aula 3: Arranjos Bidimensional (Matriz)

Matrizes via Matlab


• A matriz A é guardada na memória RAM do computador, ficando
armazenada para uso posterior.
• As matrizes podem, também, ser introduzidas linha a linha, o que
é indicado para matrizes de grande dimensão. Por exemplo:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 17/ 43 20 de Fevereiro de 2019 17 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Matrizes via Matlab


• Para especificar um único elemento da matriz utilizam-se os
ı́ndices referentes ao número de linha e número de coluna entre
parênteses da matriz onde se encontra o elemento: A(m,n).
• Outra forma de gerar matrizes é através de ciclos for.
• Por exemplo, para gerar uma matriz M com i linhas e j
colunas, a seguinte estrutura pode ser utilizada:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 18/ 43 20 de Fevereiro de 2019 18 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Matrizes via Matlab

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 19/ 43 20 de Fevereiro de 2019 19 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Matrizes via Matlab

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 20/ 43 20 de Fevereiro de 2019 20 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Elementos de Matrizes
Os elementos das matrizes podem ser quaisquer expressões do
MATLAB. Por exemplo:

Nota-se que a dimensão do vetor x é aumentada automaticamente de


1x3 para 1x6 de modo a acomodar o novo elemento, e que os elementos
./img/logoSBPO

indefinidos do intervalo são estabelecidos como zero.


Prof. Msc. Juliana Jesus (UNIFOA) Computação 21/ 43 20 de Fevereiro de 2019 21 / 43
Aula 3: Arranjo Bidimensional (Matriz)
Elementos de Matrizes
Matrizes de maior dimensão podem ser construı́das a partir de
pequenas matrizes. Por exemplo, pode-se anexar outra linha à matriz
A usando:

./img/logoSBPO

Seleciona da linha 1 até a linha 3 e todas as colunas da matriz A atual.


Prof. Msc. Juliana Jesus (UNIFOA) Computação 22/ 43 20 de Fevereiro de 2019 22 / 43
Aula 3: Arranjo Bidimensional (Matriz)

Manipulação de matrizes
• Os comandos zeros (m,n), ones (m,n) e eye (n) podem ser
utilizados para criar matrizes cujos elementos possuem valores
especiais.
• Os dois primeiros comandos,zeros (m,n) e ones (m,n), criam
matrizes com m linhas e n colunas, cujos elementos são números 0
e 1, respectivamente.
• O comando eye (n) cria uma matriz quadrada com n linhas e n
colunas, cujos elementos da diagonal principal são iguais a 1 e os
demais elementos são 0.
• essa matriz é denominada matriz identidade.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 23/ 43 20 de Fevereiro de 2019 23 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Manipulação de matrizes
• Adição Matricial: A + B
• Subtração Matricial: A − B
• Produto Matricial: A ∗ B
• Inversa de uma Matriz: inv (A)
• Determinante: det(A)
• Valores Caracterı́sticos: eig(A)

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 24/ 43 20 de Fevereiro de 2019 24 / 43


Aula 3: Arranjo Bidimensional (Matriz)

As colunas das Matrizes


Atenção: As colunas devem ter a mesma dimensão.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 25/ 43 20 de Fevereiro de 2019 25 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Acesso a elementos de Matrizes
• O acesso dos elementos de uma matriz é semelhante ao acesso dos
vetores, porém deve-se atentar para os ı́ndices a linha e da coluna
desejadas.
• Os ı́ndices das matrizes no Matlab são caracterizados de duas
formas:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 26/ 43 20 de Fevereiro de 2019 26 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Operações Matriciais
Como o Matlab vê a suas variáveis como matrizes, nada mais natural
do que tratá-las com operações matriciais.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 27/ 43 20 de Fevereiro de 2019 27 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Operações Matriciais

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 28/ 43 20 de Fevereiro de 2019 28 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Operações Matriciais

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 29/ 43 20 de Fevereiro de 2019 29 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Operações Matriciais

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 30/ 43 20 de Fevereiro de 2019 30 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Operações Matriciais
Opera com elementos de colunas desejadas, caso seja desejado operar
com linhas ao invés de colunas deve-se transpor a matriz e então
operá-la com a sua coluna que antes era sua linha. Abaixo estão alguns
exemplos de funções:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 31/ 43 20 de Fevereiro de 2019 31 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Funções Úteis

./img/logoSBPO
• a: representa o número de linhas.
• b: representa o número de colunas.
Prof. Msc. Juliana Jesus (UNIFOA) Computação 32/ 43 20 de Fevereiro de 2019 32 / 43
Aula 3: Arranjo Bidimensional (Matriz)

Exemplos de Funções Úteis:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 33/ 43 20 de Fevereiro de 2019 33 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Exemplos de Funções Úteis:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 34/ 43 20 de Fevereiro de 2019 34 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Exemplos de Funções Úteis:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 35/ 43 20 de Fevereiro de 2019 35 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Exemplos de Funções Úteis:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 36/ 43 20 de Fevereiro de 2019 36 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Funções Matriciais
Uma boa aplicação do MATLAB é suas funções matriciais. Dentre as
mais usadas estão essas:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 37/ 43 20 de Fevereiro de 2019 37 / 43


Aula 3: Arranjo Bidimensional (Matriz)
Exemplos de Funções Matriciais
Vamos dar um exemplo para ilustrar algumas funções:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 38/ 43 20 de Fevereiro de 2019 38 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Números Complexas
Os Números Complexos são permitidos em todas as operações e
funções no MATLAB. Os números complexos são introduzidos
utilizando as funções especiais i ou j que correspondem à parte
imaginária de um número complexo. Por exemplo:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 39/ 43 20 de Fevereiro de 2019 39 / 43


Aula 3: Arranjo Bidimensional (Matriz)

Matrizes Complexas
Os Números Complexos são permitidos em todas as operações e
funções no MATLAB. Os números complexos são introduzidos
utilizando as funções especiais i ou j que correspondem à parte
imaginária de um número complexo. Por exemplo:

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 40/ 43 20 de Fevereiro de 2019 40 / 43


Aula 3: Referências Bibliográficas

• MATLAB com aplicações em engenharia. Autor: Amos


Gillat. 2.ed. Porto Alegre:Bookman. 2006. 359p.
• CHAPMAN, S. J. Programação em Matlab para engenheiros. 2.
ed.São Paulo: Cengage Learning Cidade: Editora, 2010.
• MATSUMOTO, E. Y Matlab 6 – Fundamentos de Programação.
São Paulo: Editora Érica, 2003.

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 41/ 43 20 de Fevereiro de 2019 41 / 43


Aula 3: Lista de Exercı́cios

Resolução da Lista de Exercı́cios

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 42/ 43 20 de Fevereiro de 2019 42 / 43


Aula 3: Estrutura de dados via Matlab

FIM!

./img/logoSBPO

Prof. Msc. Juliana Jesus (UNIFOA) Computação 43/ 43 20 de Fevereiro de 2019 43 / 43

Você também pode gostar