Neste post será ensinado como fazer uma função no MatLab
Uma função no MatLab deve ser escrita em um script. Para isso, deve-se criar um novo script, apertando em New/Script na parte superior esquerda.
As saídas são variáveis que serão devolvidas pela função. No caso do exemplo há três saídas.
As entradas são variáveis necessárias para que a função seja executada. Há, também, três entradas neste exemplo.
O nome da função que esta sendo aqui definida é funcao. Ao salvar a função, cria-se um arquivo *.m que DEVE ter o mesmo nome da função, neste caso o arquivo gerado deverá ter o nome funcao.m.
Exemplo: Função que recebe três valores e calcula a soma e o produto deles:
Assim, para acessá-la no Command Window basta proceder conforme a seguir:
Veja que neste caso, a variável A recebeu a soma 10+3+2, e a variável B, o produto 10*3*2.
Um comando importante para a programação em MatLab é o for.
Uso do for em MatLab
A sintaxe geral é a seguinte:
for variavel = inicio:incremento:fim
...
%declarações
...
end
É possível usar a função for sem definir o incremento. Neste caso, por padrão, o incremento é 1.
Uso do if em MatLab
Outra função importante na programação é o uso do if. O if é uma condição imposta. Ele tem a seguinte sintaxe geral:
if a == b %Se a variável a for igual a b
a = 0;
elseif a > b %Caso a diferente de b e a maior que b
a = b;
else %Caso contrário (a diferente de b e a menor que b)
b = a
else %Caso contrário (a diferente de b e a menor que b)
b = a
end %fim da função
Comparação | Comando |
Igual | == |
Diferente | ~= |
Maior | > |
Menor | < |
Maior igual | >= |
Menor Igual | <= |
Exemplo usando o que foi aprendido:
Dada uma matriz M, criar uma função que verifique quantos valores se repetem nesta matriz.
Veja que esta função vai percorrendo cada elemento da matriz para verificar se acha outro igual a ele. Ao encontrar outro igual, a função finaliza com o uso do break e passa para o próximo elemento de referência.
Pode surgir a dúvida de que após o primeiro elemento igual, existam outros que também sejam iguais e com o uso do break, estes outros elementos estariam sendo ignorados. Isso não ocorre pois o elemento identificado como igual, será um elemento de referência em algum momento. Veja, abaixo, como o processo ocorre detalhadamente:
%Definindo uma matriz M
M = [1 2 5; 2 1 3; 1 2 1];
Já podemos perceber que há 5 elementos repetidos, sendo eles o 1 (3 vezes) e o 2 (2 vezes).
Chamando a função repete, a lógica ocorre da seguinte forma:
1 - A variável quanto recebe zero;
2 - Verifica-se quantas linha e quantas colunas tem a matriz M;
3 - Transforma-se a matriz M em um vetor coluna;
4 - tamanho recebe o tamanho do vetor;
5 - Pega-se o elemento k1 do vetor Vetor_M como elemento referência
5-1 - Percorre-se o vetor Vetor_M a partir do elemento escolhido até que se encontre outro igual;
5-2 - Ao encontrar outro igual, muda-se o elemento de referência para o próximo e procede-se novamente como 5-1.
A variável quanto guarda quantas vezes há elementos repetidos. A varável valor é um vetor com os elementos que possuem mais de um.
Veja o uso da função repete na matriz M definida acima.
>> M = [1 2 5; 2 1 3; 1 2 1]
M =
1 2 5
2 1 3
1 2 1
>> [quanto,valor] = repete(M)
quanto =
5
valor =
1 2 1 2 1
0 comentários:
Postar um comentário