computa˘c~ao cient ca com matlab - ufscmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · o que e...
TRANSCRIPT
![Page 2: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/2.jpg)
Conteudo
I Algoritmos: conceito; tipos de dados; scripts.
I Modo interativo do MATLAB: familiarizacao com o software;comandos de entrada e saıda; comandos de atribuicao;manipulacao de variaveis; funcoes basicas; leitura e escrita emarquivos.
I Processos de repeticao e condicionais: o comando for e ocomando if no MATLAB.
I Variaveis indexadas: vetores; matrizes.
I Modularizacao: funcoes; subprogramas.
I Graficos: producao de graficos atraves de dados existentes emduas e tres dimensoes.
I Aplicacoes: resolucao de problemas contextualizadosutilizando o software MATLAB.
![Page 3: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/3.jpg)
Por que estudar programacao?
Objetivo
Entender um problema e formular sua solucao usando ferramentascomputacionais.
Ferramenta
Linguagem de programacao MATLAB.
![Page 4: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/4.jpg)
Como funciona o computador?
O computador e uma maquina programavel que recebe umaentrada (input), armazena e manipula automaticamente dados, egera uma saıda (output).
Um computador executa funcoes com entrada e saıda:
ENTRADA ACAO SAIDA
![Page 5: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/5.jpg)
Primeiros ”computadores”
Em 1613, a palavra ”computador”aparece pela primeira vez,designando uma pessoa que realizasse calculos.Os computadores antigos nao eram maquinas programaveis, masserviam a uma funcao especıfica.Exemplos: abaco, regua de calculo, astrolabio, calculadora.
![Page 6: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/6.jpg)
Computadores programaveis de uso limitado
Em 1801, Joseph Marie Jacquard introduziu o uso de cartoesperfurados para programar um tear e produzir padroes intrincadosde tecido automaticamente.
![Page 7: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/7.jpg)
Computadores programaveis de uso geral
Em 1837, Charles Babbage imaginou o conceito de umcomputador mecanico totalmente programavel (a maquinaanalıtica) - mas nao chegou a construi-la.
![Page 8: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/8.jpg)
Computadores programaveis de uso geral
Ada Augusta Byron King, Condessa de Lovelace, filha do poetabritanico Lord Byron, e reconhecida como a primeira programadorade toda a historia. Ela desenvolveu os algoritmos que permitiriama maquina de Babbage computar valores de funcoes matematicas,alem de publicar uma colecao de notas sobre a maquina analıtica.
![Page 9: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/9.jpg)
Estrutura de um computador moderno
Dispositivosde Entrada
(input)
UnidadeCentral de
Processamento
Memorias ouDispositivos de
Armazenamento
Dispositivosde Saıda(output)
![Page 10: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/10.jpg)
O que e um algoritmo?
Um algoritmo e uma sequencia finita de passos que tem comoobjetivo realizar alguma tarefa.
Exemplo: receita de bolo.
I Entrada: ingredientes, utensılios usados.
I Acao: bater, misturar, picar, assar.
I Saıda: bolo.
![Page 11: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/11.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha
![Page 12: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/12.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente
![Page 13: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/13.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca
![Page 14: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/14.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela
![Page 15: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/15.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I
![Page 16: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/16.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
![Page 17: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/17.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
![Page 18: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/18.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
![Page 19: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/19.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
I Acender uma das bocas do fogao.
![Page 20: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/20.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
I Acender uma das bocas do fogao.
I Colocar a chaleira ou panela sobre a boca acesa do fogao.
![Page 21: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/21.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
I Acender uma das bocas do fogao.
I Colocar a chaleira ou panela sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
![Page 22: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/22.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
I Acender uma das bocas do fogao.
I Colocar a chaleira ou panela sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
![Page 23: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/23.jpg)
Exemplo: Como ferver agua (no fogao)?
Dada uma cozinha, com uma pia com torneira e agua corrente, umfogao com pelo menos uma boca, e uma chaleira ou panela, faca oseguinte:
I Se encontrar uma chaleira, entao use esta chaleira.Senao, use uma panela.
I Levar a chaleira ou panela ate a pia.
I Encher a chaleira ou panela de agua.
I Acender uma das bocas do fogao.
I Colocar a chaleira ou panela sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
A agua esta fervida dentro da chaleira ou panela.
![Page 24: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/24.jpg)
Exemplo: Como ferver agua (no fogao)?
ENTRADA: cozinha, pia, torneira, agua corrente, fogao com pelomenos uma boca, chaleira ou panela.ACAO:
I Se encontrar uma chaleira, entao pegue esta chaleira comorecipiente.Senao, pegue uma panela como recipiente.
I Levar o recipiente ate a pia.
I Encher o recipiente de agua.
I Acender uma das bocas do fogao.
I Colocar o recipiente sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
SAIDA: recipiente com agua fervida.
![Page 25: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/25.jpg)
Exemplo: Como ferver agua (no fogao)?
ENTRADA: cozinha, pia, torneira, agua corrente, fogao com pelomenos uma boca, chaleira ou panela.ACAO:
I Se encontrar uma chaleira, entao pegue esta chaleira comorecipiente.Senao, pegue uma panela como recipiente.
I Levar o recipiente ate a pia.
I Encher o recipiente de agua.
I Acender uma das bocas do fogao.
I Colocar o recipiente sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
SAIDA: recipiente com agua fervida.
![Page 26: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/26.jpg)
Exemplo: Como ferver agua (no fogao)?
ENTRADA: cozinha, pia, torneira, agua corrente, fogao com pelomenos uma boca, chaleira ou panela.ACAO:
I Se encontrar uma chaleira, entao pegue esta chaleira comorecipiente.Senao, pegue uma panela como recipiente.
I Levar o recipiente ate a pia.
I Encher o recipiente de agua.
I Acender uma das bocas do fogao.
I Colocar o recipiente sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
SAIDA: recipiente com agua fervida.
![Page 27: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/27.jpg)
Exemplo: Como ferver agua (no fogao)?
ENTRADA: cozinha, pia, torneira, agua corrente, fogao com pelomenos uma boca, chaleira ou panela.ACAO:
I Se existe chaleira, entao recipiente chaleira.Senao, recipiente panela.
I Levar o recipiente ate a pia.
I Encher o recipiente de agua.
I Acender uma das bocas do fogao.
I Colocar o recipiente sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
SAIDA: recipiente com agua fervida.
![Page 28: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/28.jpg)
Exemplo: Como ferver agua (no fogao)?
ENTRADA: cozinha, pia, torneira, agua corrente, fogao com pelomenos uma boca, chaleira ou panela.ACAO:
I Se existe chaleira, entao recipiente chaleira.Senao, recipiente panela.
I Levar o recipiente ate a pia.
I Encher o recipiente de agua.
I Acender uma das bocas do fogao.
I Colocar o recipiente sobre a boca acesa do fogao.
I Enquanto a agua nao estiver borbulhando,continue aguardando.
I Desligue a boca acesa do fogao.
SAIDA: recipiente com agua fervida.
![Page 29: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/29.jpg)
O que e uma linguagem de programacao?
Uma linguagem de programacao traduz um algoritmo (sequenciade instrucoes) da linguagem humana para a linguagem da maquina(”0 e 1”).Existem milhares de linguagens de programacao.
![Page 30: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/30.jpg)
Modulo: Exemplo em Pseudo-codigo
Dado um numero a
Se a > 0, ent~ao
modulo = a
Sen~ao
modulo = -a
Fim Se
![Page 31: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/31.jpg)
Exemplo em Python
def modulo(a):
if a > 0:
modulo = a
else:
modulo =-a
![Page 32: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/32.jpg)
Exemplo em C
double modulo(double a)
{
if (a > 0)
modulo =a;
else
modulo =-a;
}
![Page 33: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/33.jpg)
Exemplo em Fortran
SUBROUTINE MODULO(A)
REAL MODULO
IF(A .GT. 0)THEN
MODULO=A
ELSE
MODULO=-A
ENDIF
END SUBROUTINE MODULO
![Page 34: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/34.jpg)
O que e o MATLAB?
Linguagem computacional de alto nıvel e um ambiente interativopara computacao numerica, visualizacao e programacao.
![Page 35: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/35.jpg)
Exemplo de codigo em MATLAB
function[abs] = modulo(a)
if a > 0
modulo = a
else
modulo = -a
end
![Page 36: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/36.jpg)
Console: Modo Interativo
ConsoleEspaco detrabalho
Arquivos
Historico
Diretorio Atual
![Page 37: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/37.jpg)
Scripts
Os comandos podem ser entrados diretamente no console doMATLAB, ou escritos, em sequencia, dentro de um arquivo comextensao .m chamado script.
Sequencias de trabalho possıveis:
1. Escrever os comandos no console em sequencia, obtendo asrespostas a cada comando.
2. Usando um script:
a) Escrever os comandos em um arquivo no seu editor de textopreferido (Notepad) e salvar esse arquivo com extensao .m;
b) Ir ate a janela do console do MATLAB;c) Digitar o nome do arquivo em que voce digitou os comandos
sem o .m.
![Page 38: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/38.jpg)
Comandos Basicos
I Operacoes Aritmeticas: +, -, *, /, ^
I Funcoes matematicas: sin(pi), abs(-3)
I date
I clear ou clc
I help
![Page 39: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/39.jpg)
Comandos Basicos
I Operacoes Aritmeticas: +, -, *, /, ^
I Funcoes matematicas: sin(pi), abs(-3)
I date
I clear ou clc
I help
![Page 40: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/40.jpg)
Comandos Basicos
I Operacoes Aritmeticas: +, -, *, /, ^
I Funcoes matematicas: sin(pi), abs(-3)
I date
I clear ou clc
I help
![Page 41: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/41.jpg)
Comandos Basicos
I Operacoes Aritmeticas: +, -, *, /, ^
I Funcoes matematicas: sin(pi), abs(-3)
I date
I clear ou clc
I help
![Page 42: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/42.jpg)
Comandos Basicos
I Operacoes Aritmeticas: +, -, *, /, ^
I Funcoes matematicas: sin(pi), abs(-3)
I date
I clear ou clc
I help
![Page 43: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/43.jpg)
Variaveis
Para atribuir um valor a uma variavel no MATLAB, bastadigitarmos
>> variavel = valor
(nao e preciso declarar variaveis no MATLAB).
![Page 44: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/44.jpg)
Tipos de Variavel
I Numeros Reais:>> a=4.5
>> pi
>> 1e-2
![Page 45: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/45.jpg)
Tipos de Variavel
I Listas de caracteres (strings):
>> texto = ’Um texto qualquer.’
![Page 46: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/46.jpg)
Tipos de Variavel
I Listas de numeros reais indexadas (vetores):
>> v = [1,2,3,4]
>> u = [1;2;3;4]
![Page 47: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/47.jpg)
Tipos de Variavel
I Listas de numeros reais duplamente indexadas (matrizes):
>> A = [1 2; 3 4]
![Page 48: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/48.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 49: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/49.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 50: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/50.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 51: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/51.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 52: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/52.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 53: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/53.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 54: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/54.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 55: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/55.jpg)
Vetores
>> v = [1 3 5]
>> w = [7;9;11]
>> v’
>> v(2)
ans =
3
>> length(v)
>> size(v)
>> size(v,1)
>> size(v,2)
![Page 56: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/56.jpg)
Operacoes basicas
Lembre-se de respeitar as dimensoes!
>> v+w-z
>> 2*v
>> a*w
>> v/w
>> v^2
>> v.*w
>> v./w
>> v.^2
![Page 57: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/57.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 58: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/58.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 59: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/59.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 60: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/60.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 61: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/61.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 62: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/62.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 63: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/63.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 64: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/64.jpg)
Matrizes
>> A = [1 2 3;4 5 6]
A =
1 2 3
4 5 6
>> A(2,1)
ans =
4
>> A(3)
>> A’
>> length(A)
>> size(A)
>> size(A,1)
>> size(A,2)
![Page 65: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/65.jpg)
Operacoes com Matrizes
>> A = [1 2;3 4]
>> B = [2 1;0 3]
>> A+B
>> A-B
>> A*B
>> 2*A
>> B/3
>> A’
>> A.*B
>> A./B
>> A/B
![Page 66: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/66.jpg)
Funcoes basicas
>> eye(n)
>> zeros(m,n)
>> ones(m,n)
>> inv(A)
![Page 67: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/67.jpg)
Dica!
Para que o resultado nao seja mostrado ao final daoperacao, use ; ao final do comando.
Exemplo:
>> sin(pi)
>> sin(pi);
![Page 68: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/68.jpg)
Comentarios
Em um script, podemos comentar nosso codigo, usando o sımbolo%:
a = 1;
% Agora, a variavel a tem valor 1.
![Page 69: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/69.jpg)
Lacos de repeticao
Quando e necessario repetir certo comando de codigo varias vezes,usamos a estrutura for:
for i = 1:3
i
end
![Page 70: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/70.jpg)
For
Escreva um algoritmo que imprima todos os pares de 1 a 100.
for i = 1:50
2*i
end
![Page 71: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/71.jpg)
Entrada do usuario
Se quisermos que o usuario entre com um valor de variavel,podemos usar o comando input:
>> variavel = input(’Entre com o valor da variavel: ’)
![Page 72: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/72.jpg)
Usuario
Escreva um algoritmo que imprima todos os numeros de 1 a n,onde n e dado pelo usuario.
n = input(’Entre com o numero n: ’);
for i = 1:n
i
end
![Page 73: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/73.jpg)
Lacos de repeticao (2)
Quando e necessario repetir certo comando de codigo varias vezesate que uma certa condicao seja satisfeita, usamos a estruturawhile:
i = 1;
while i < 3
disp(’Mais um.’)
i = i + 1;
end
![Page 74: Computa˘c~ao Cient ca com MATLAB - UFSCmtm.ufsc.br/~melissa/20132/epagri/aula_01.pdf · O que e uma linguagem de programa˘c~ao? Uma linguagem de programa˘c~ao traduz um algoritmo](https://reader033.vdocuments.net/reader033/viewer/2022041906/5e63ef5bb6343c241a547168/html5/thumbnails/74.jpg)
Dica: texto por ındices
Um texto funciona como uma lista (vetor):>> texto = ’Palavra’
>> texto(1) = ’P’
>> texto(2) = ’a’
>> texto(1:2) = ’Pa’
>> length(texto)
>> size(texto)