INTRODUÇÃO À PROGRAMAÇÃO NO MATLAB Arquivos .m Como visto, os comando do MatLab podem ser digitados na Janela de Comando è cada linha é então, processada imediatamente. Porém, podemos definir e executar uma sequência de comandos (programa). Neste caso, podemos criar arquivos de script chamados arquivos “.m”. Um arquivo “.m” pode conter qualquer comando do MatLab ou função definida pelo usuário. Obs.: em um arquivo “.m” todas as variáveis são globais. Algoritmos Antes de escrever qualquer programa de computador, é usual primeiro, descrever os passos que serão necessários ! Algoritmo Exemplo: calcular a área de um círculo. 1º fornecer a entrada: o raio do círculo (! teclado) 2º calcular o resultado: a área (! como calcular) 3º mostrar o resultado: a área calculada (! monitor) Passo 2: area = π * raio2 Para muitos programas, o algoritmo básico consiste em 3 passos que devem ser seguidos: 1 • Fornecer a(s) entradas 2 • Calcular o(s) resultados 3 • Mostrar o(s) resultados Depois que o algoritmo está escrito e “refinado”, a solução do problema pode ser escrita (implementada) em uma linguagem de programação, no caso, o MatLab. Scripts – MatLab Os arquivos scripts ou M-files são interpretados (ao invés de compilados). Script: sequência de instruções do MatLab ! M-file Atenção ! Current Folder !! Selecionar o diretório onde os arquivos M-files são salvos. Script pode então, ser executado ou “rodado”, digitando o nome do arquivo (sem o .m) >> teste <enter> No menu: File ! Nova janela Editor " File ! Save (nome .m) Criando um Script New Script Exemplo: calcular a área de um círculo. File ! New Script Digitar: raio = 5 area = pi * (raio ^2) Salvar: script1.m Para rodar: na janela de Comandos, digitar o nome do arquivo (sem extensão): >> script1 <enter> Caso você faça alguma alteração no arquivo, lembre-se de salvá-lo novamente antes de rodar!! Documentação É muito importante que todos os scripts sejam bem documentados. Comentários: No MatLab, um comentário é representado pelo sinal de % Comentários são ignorados quando o script é executado. Ex.: % comentário de uma linha Bloco de comentários: %{ linha 1 linha 2 %} ENTRADA E SAÍDA DE DADOS Função de Entrada variável = input (‘ expressão ’); Ex.: >> x1 = input (‘Digite um número: ‘); Digite um número: 1.37 x1 = 1.3700 >> x2 = input (‘Digite um vetor: ‘); Digite um vetor: [1 2 3 4 5] x2 = 1 2 3 4 5 >> x3 = input (‘Digite uma matriz: ‘); Digite uma matriz: [1 2 3; 4 5 6; 7 8 9; 10 11 12] x3 = 1 2 3 4 5 6 7 8 9 10 11 12 Função de Entrada -­‐ Caracteres variável = input (‘ expressão ’, ‘s’); >> texto = input (‘Digite um texto: ‘, ‘s’); Digite um texto: teste de texto texto = teste de texto Cuidado!!! >> x4 = input (‘Digite um dado: ‘, ‘s’); Digite um dado: 1.38 Armazenará a cadeia de caracteres (string) (‘1.38’) na variável x4. Declaração de saída: disp e fprintf disp: esta função é usada para mostrar o resultado de uma expressão ou string sem atribuir valor para variável default ans. Não permite formatação! disp (expressão ou variável); Ex.: >> disp(x1) 1 2 3 4 >> disp('Boa tarde!') Boa tarde! >> texto=‘teste’; >> disp(texto) teste >> disp(x3) 1 2 3 4 5 6 7 8 9 10 11 12 >> disp(x4) 1.38 >> disp(4^3) 64 fprin*: esta função é usada para mostrar resultados formatados (saída formatada). fprinr(‘expressão’, dado); expressão: cadeia de caracteres (string) que será mostrada e/ou código de formatação (caractere de conversão). dado: dado ou variável que será exibido. Ex.: >> fprinr('O valor é: %d \n', 4^3) O valor é: 64 Caracteres de Conversão Caractere Função %d inteiro %f número real (float) %c um caractere %s cadeia de caracteres (string) Imprimindo vetores >> vec = 2:5; >> fprinr('%d\n', vec) 2 3 4 5 Sem o caractere de “nova linha”: >> fprintf('%d', vec) 2345>> Podemos resolver isso utilizando script (script2.m). % Demonstrar a saída de um vetor vec = 2:5; fprintf('%d ', vec) fprintf('\n') >> script2 2 3 4 5 >> Para matrizes, utilizar disp. (comando de repetição).