Mudanças entre as edições de "FIC MATLAB 2018-2"
Linha 800: | Linha 800: | ||
* Estruturas | * Estruturas | ||
+ | :* Criando estruturas com o comando ''struct'' | ||
:* Criando estruturas com o operador "." | :* Criando estruturas com o operador "." | ||
− | |||
:* Comando ''isfield'' para identificar se um campo existe ou não | :* Comando ''isfield'' para identificar se um campo existe ou não | ||
:* Comando ''rmfield'' para remover campo da estrutura | :* Comando ''rmfield'' para remover campo da estrutura | ||
+ | |||
+ | * Arranjo de estruturas | ||
* '''Exercícios:''' | * '''Exercícios:''' | ||
− | :1. Crie um arranjo de estruturas que contenha os os seguintes campos de informação concernentes a pontes rodoviárias em uma cidade: localização da ponte, carga máxima (toneladas), ano de construção, ano agendado para a manutenção. | + | :1. Crie um programa que utiliza duas estruturas: '''ponto''' e '''reta'''. |
+ | ::* A estrutura '''ponto''' deve ter como campos as coordenadas do ponto. | ||
+ | ::* A estrutura '''reta''' tem como campos os coeficientes angular e linear da reta. | ||
+ | :: O seu programa deve requisitar do usuário as coordenadas do ponto e os coeficientes da reta. Como saída, seu programa deve | ||
+ | ::a) Plotar na tela (''plot'') uma figura contendo o ponto e a reta. | ||
+ | ::b) Imprimir na tela (''disp'') distância do ponto até a origem. | ||
+ | ::c) Imprimir na tela (''disp'') se o ponto pertence à reta. | ||
+ | :: Para testar seu programa: o ponto (3, 4) dista da origem de 5 unidades e pertence à reta ''y = 2x - 2''. | ||
+ | |||
+ | :2. Crie uma estrutura que contenha todas as informações necessárias para construir um diagrama de um conjunto de dados. No mínimo, a estrutura deve conter os seguintes campos: | ||
+ | |||
+ | ::* '''x_data''': dado referente ao eixo "x" | ||
+ | ::* '''y_data''': dado referente ao eixo "y" | ||
+ | ::* '''title''': título do diagrama | ||
+ | ::* '''x_label''': rótulo do eixo "x" | ||
+ | ::* '''y_label''': rótulo do eixo "y" | ||
+ | ::* '''x_range''': faixa de valores exibidos no eixo "x" | ||
+ | ::* '''y_range''': faixa de valores exibidos no eixo "y" | ||
+ | |||
+ | :: Você pode adicionar outros campos que aumentem seu controle sobre o diagrama final. | ||
+ | |||
+ | :: Depois de criar essa estrutura, escreva um programa no MATLAB que use a estrutura para gerar um gráfico. O programa deve aplicar características iniciais inteligentes se alguns campos de dados estiverem faltando. | ||
+ | |||
+ | :3. Crie um arranjo de estruturas que contenha os os seguintes campos de informação concernentes a pontes rodoviárias em uma cidade: localização da ponte, carga máxima (toneladas), ano de construção, ano agendado para a manutenção. | ||
::a) Insira os dados abaixo na estrutura: | ::a) Insira os dados abaixo na estrutura: | ||
Linha 842: | Linha 867: | ||
::c) Adicione a seguinte ponte ao arranjo de estruturas: | ::c) Adicione a seguinte ponte ao arranjo de estruturas: | ||
− | |||
:::{| class="wikitable" | :::{| class="wikitable" | ||
Linha 855: | Linha 879: | ||
| 2014 | | 2014 | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Edição das 18h52min de 11 de outubro de 2018
Informações Básicas
- Código: MLB16470
- Professores: Diego da Silva de Medeiros e Roberto Wanderley da Nóbrega
- Início: 11/Set/2017
- Término: 20/Nov/2017
- Horário: Terças e quintas, das 19h às 22h
- Referência Básica: PALM, William J. Introdução ao MATLAB para engenheiros. Tradução de Tales Argolo Jesus. 3. ed. Porto Alegre: AMGH, 2013. xiv, 562, il. ISBN 9788580552041
- Referência Complementar: MORAIS, V.. VIEIRA, C. MATLAB Curso Completo. FCA, 2013. 644. ISBN 9727227058
Conteúdos Abordados
1 - Apresentação da disciplina; Interface do MATLAB; Operadores; Funções; Constantes especiais; Formatos de exibição
11/Set - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Observações:
|
2 - Vetores e matrizes
13/Set |
---|
|
3 - Operações com matrizes; Plots
18/Set | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
4 - Aula de exercícios
20/Set |
---|
|
5 - Endereçamento de vetores e matrizes
25/Set |
---|
|
6 - Concatenação de matrizes; Texto; Entrada e saída de dados; Conjuntos; Polinômios; Números aleatórios
27/Set |
---|
|
7 - Aula de exercícios
02/Out | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
8 - Variáveis lógicas; Operadores relacionais e lógicos
04/Out | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
9 - Controle de fluxo de dados - if e switch
09/Out |
---|
|
10 - Structs
11/Out | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
11 - Cells
16/Out |
---|
|
12 - Estruturas de repetição - for e while
18/Out | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
13 - Funções; Exercícios
23/Out |
---|
|
14 - Processamento de imagens
15 - Importação de dados; Gráficos em 2D e 3D
30/Out | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
16 - Solução de sistemas de equações; Toolbox simbólico
01/Nov |
---|
|
17 - Interface gráfica
06/Nov | ||
---|---|---|
|
18 - Projeto
08/Nov |
---|
Aula dedicada ao projeto. |
19 - Projeto
13/Nov |
---|
Aula dedicada ao projeto. |
20 - Projeto
15/Nov |
---|
Aula dedicada ao projeto. |
Questões da turma
Projetos finais
Ideias
Hachuras em gráficos de barras
Implementar uma função em MATLAB que plote um gráfico de barras com hachuras. O comportamento deve ser semelhante ao comando bar, nativo do MATLAB, mas parâmetros poderão ser acrescentados para controle da trama. Um exemplo de resultado pode ser visto na figura abaixo:
Genius®
Implementar uma versão avançada do jogo Genius® construído na aula 9, adicionando sons, elementos gráficos, etc.
Outros
- relógio analógico
- dtmf
- sudoku
- jogo da velha
- contar moedas
- esteganografia
- batalha naval