Buscar

Apostila Matlab - 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
48 
 
ESTRUTURAS DE REPETIÇÃO (“for” e “while”) 
ESTRUTURA DE REPETIÇÃO “for” 
Para utilizar a estrutura “for”, é preciso que sejam determinados previamente os valores iniciais e 
finais da variavel de condição, isto é, seja predefinida a quantidade de vezes em que o trecho do comando 
“for” será executado. Para repetir um número fixo de vezes um determinado conjunto de comandos, 
costuma-se utilizar o laço “for”. 
Seu formato no MATLAB pode ser expresso como: 
 for variável = valor_inicial: valor final 
 faça algo 
end 
 Para aprender na prática como utilizar o “for”, siga os passos abaixo: 
 
1º Passo: Na Janela de Comandos, digite for i =1:10 e pressione Enter. 
2º Passo: Digite disp(i) e pressione Enter. 
3º Passo: Digite disp(‘Leiaut – MATLAB Básico’) e pressione Enter. 
4º Passo: Digite end e pressione Enter. 
Entenda o uso do laço “for”. Perceba que a cada momento, a variável i recebe um valor diferente. 
No primeiro, i = 1, depois i = 2 e, assim por diante, até i = 10. A cada momento também, Leiaut – MATLAB 
Básico é impresso na Janela de Comandos, totalizando 10 vezes. Perceba no Workspace que a variável i 
apresenta valor 10. 
Observe o resultado encontrado na Janela de Comandos. 
 
 
 
 
 
 
 
 
 
4º Módulo do MATLAB Básico 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
49 
Deverá estar assim: 
 
 
 
 Para continuar praticando a estrutura de repetição “for” através de outro exemplo, siga os passos 
abaixo: 
1º Passo: Na Janela de Comandos, digite for i = 1:5 e pressione Enter. 
2º Passo: Digite i e pressione Enter. 
3º Passo: Digite x= i^2 e pressione Enter. 
4º Passo: Digite end e pressione Enter. 
Observe que apareceu o valor de i e de x para cada momento. Assim, no primeiro momento, i = 1, 
então x = 1. Depois, i = 2 e x = 4 e, assim por diante, até i = 5 e x = 25. Perceba que os valores i =5 e x = 25 
também são apresentados no Workspace. 
Observação: Pode-se dizer que o laço for é dividido em três partes: 
 Na primeira parte, a atribuição "i = 1" é realizada uma vez, antes de o laço ser inicializado; 
 Na segunda parte, é realizado o teste ou condição que controla o laço "i <= 5", com "i" variando de 
"1" a "5". A condição é, então, avaliada: se verdadeira, o corpo do laço "x= i^2" é executado; senão, 
o laço passa à terceira parte; 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
50 
 Na terceira parte do laço, a condição se torna falsa e o laço termina. 
 Por fim, o comando end é utilizado para delimitar o corpo do laço. 
Observação: Um laço ou loop “for” também pode ser utilizado em conjunto com outro laço for (laços 
aninhados). Ocorre quando há um laço dentro de outro. Para trabalhar com laços aninhados, siga os passos 
a seguir: 
1º Passo: Em Current Folder, selecione o caminho referente à pasta EXERCÍCIOS MATLAB LEIAUT. 
2º Passo: Pressione Ctrl + N para abrir o Editor. 
3º Passo: Digite for i = 1:4, e pressione Enter. 
4º Passo: Digite for j = 1:4, e pressione Enter. 
5º Passo: Digite A(i,j) = i + j; e pressione Enter. 
6º Passo: Digite B(i,j) = i - j; e pressione Enter. 
7º Passo: Digite end; e pressione Enter. 
8º Passo: Digite end; e pressione Enter. 
9º Passo: Digite disp(‘A=’); e pressione Enter. 
10º Passo: Digite disp(A); e pressione Enter. 
11º Passo: Digite disp(‘B =’); e pressione Enter. 
12º Passo: Digite disp(B); e pressione Enter. 
Observação: Lembre-se que o comando "disp(x)" mostra o conteúdo da variável "x". 
13º Passo: Clique em Save and run (setinha verde). 
14º Passo: Salve o arquivo com o nome que desejar na pasta EXERCÍCIOS MATLAB LEIAUT. 
15º Passo: Na Janela de Comandos, observe o resultado. 
 
 
 
 
 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
51 
Observe que apareceu: 
A = 
 2 3 4 5 
 3 4 5 6 
 4 5 6 7 
 5 6 7 8 
B = 
 0 -1 -2 -3 
 1 0 -1 -2 
 2 1 0 -1 
 3 2 1 0 
 Nesse momento, você deverá fazer dois exemplos bem simples utilizando a estrutura de repetição 
“for” no Editor. 
 Observação: Poderiam ser feitos na Janela de Comandos mais rapidamente, mas faça no Editor 
para se acostumar mais com o ambiente. 
1º Passo: Em Current Folder, deixe selecionado o caminho referente à pasta EXERCÍCIOS MATLAB LEIAUT. 
2º Passo: Digite no Editor as duas linhas de código apresentadas abaixo (sem usar o “for” ainda). 
 
3º Passo: Clique em Save and run. Deixe selecionada a pasta EXERCÍCIOS MATLAB LEIAUT. 
4º Passo: Digite um nome para seu arquivo e clique em Salvar. 
5º Passo: Verifique o resultado através da Janela de Comandos. 
 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
52 
Deverá estar assim: 
 
 
6º Passo: Verifique o Workspace e perceba que foi criado um vetor linha “k” de 15 elementos, já que 
compreende os valores de 2 até 30, porém não todos, compreende 2, 4 , 6, 8, 10, 
12,14,16,18,20,22,24,26,28 e 30, pois colocamos incremento de 2. Foi criado também um vetor “a” 
recebendo os valores de cada elemento de k ao quadrado. 
7º Passo: Retorne para o Editor. 
8º Passo: Apague o “.” antes do “^”. 
9º Passo: Coloque para rodar, clicando na setinha verde. 
10º Passo: Perceba o erro apresentado na Janela de Comandos. 
 Você precisa ter em mente que “k” é uma matriz 1x15. Assim, ao tentar realizar a operação k^2 dá 
erro. Para ficar mais fácil de entender, lembre-se que k^2 = k*k , o que não é permitido nesse caso, já que 
as duas matrizes são 1x15. 
11º Passo: No Editor, digite o “.” antes do “^” novamente. 
Nesse segundo caso, você utilizará a estrutura “for” nesse arquivo. Para isso, siga os passos abaixo: 
1º Passo: Antes da variável “k”, digite for e, no fim do código, coloque end. 
Deverá estar assim: 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
53 
 
2º Passo: Coloque o programa para rodar, clicando na setinha verde. 
3º Passo: Perceba o resultado, observando a Janela de Comandos e também o Workspace. 
4º Passo: Na Janela de Comandos, digite clear e pressione Enter. 
5º Passo: Digite clc e pressione Enter. 
6º Passo: Retorne para o Editor e apague o “.” antes do “^”. 
7º Passo: Coloque o programa para rodar clicando na setinha verde. 
8º Passo: Verifique o resultado na Janela de Comandos. Perceba que o resultado obtido utilizando o “.” foi 
exatamente o mesmo de sem utilizar o “.” 
9º Passo: Reflita a diferença entre o resultado do primeiro caso (sem o “for”) e o segundo caso (com o 
“for”). 
Atenção: Você conseguiu descobrir qual foi a diferença? Se não percebeu, diremos agora a 
diferença! 
No primeiro caso, comojá dito, foi criado um vetor linha “k” com 15 elementos, já que os seus 
elementos compreendem os valores de 2 até 30, porém não todos, compreende 2, 4 , 6, 8, 10, 12, 14, 16, 
18, 20, 22, 24, 26, 28 e 30, pois colocamos incremento de 2. 
 Assim, k = [2,4,6,8,10,12,14,16,18,20,22,24,26,28,30]. Foi criado também um vetor linha “a” com 15 
elementos, em que cada elemento é o resultado do elemento correspondente do vetor “k” elevado ao 
quadrado. Assim, a = [4,16,36,64,100,144,196,256,324,400,484,576,676,784,900]. 
No segundo caso, a cada momento, “k” recebe um valor novo, isto é, primeiro 2 e, nesse momento, 
“a” recebe o valor 4. Depois, “k” recebe o valor 4 e “a” recebe 16 e, assim, sucessivamente, até 30, que é o 
resultado final de “k” e 900, referente a “a”, resultados estes apresentados no Workspace. 
 
 
ESTRUTURA DE REPETIÇÃO “while” 
 
Laços “while” no MATLAB tomam a forma de “while afirmação é verdadeira/ faça algo/ end”. Em 
outras palavras, significa “faça algo” enquanto a afirmação é verdadeira. Geralmente, o bloco “faça algo” 
tem alguma parte que eventualmente tornará a afirmação falsa. 
Resumidamente, o “while” ou “enquanto” é executado enquanto alguma condição é satisfeita. 
 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
54 
Assim, pode ser apresentado do seguinte modo: 
while(condição) 
faça algo 
end 
 Para entender na prática como utilizar o comando “while”, siga os passos abaixo: 
1º Passo: Em Current Folder, deixe selecionado o caminho referente à pasta EXERCÍCIOS MATLAB LEIAUT. 
2º Passo: Digite a = 1; e pressione Enter. 
2º Passo: Digite b = 5; e pressione Enter. 
3º Passo: Digite while a < b e pressione Enter 
4º Passo: Digite a = a + 1 e pressione Enter. 
5º Passo: Digite b = b - 1 e pressione Enter. 
6º Passo: Digite end e pressione Enter. 
Deverá estar assim: 
 
8º Passo: Clique em Save and run para salvar o programa na pasta EXERCÍCIOS MATLAB LEIAUT e rodá-lo. 
Observação: A condição "a < b" é testada inicialmente. Enquanto esta condição for verdadeira, o 
laço será executado. A cada iteração, a condição é testada novamente. Quando o teste da condição resultar 
em falso, o laço terminará. 
9º Passo: Observe a Janela de Comandos. 
 
 
 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
55 
Deverá estar assim: 
 
 
Observação: Dissemos no código que enquanto “a” for menor que “b”, a variável “a” deverá ir 
sendo incrementada de 1 e “b”, decrementada de 1, até que a condição não seja mais verdadeira. 
Atenção: Perceba que, no primeiro momento, “a” vale 1 e, por ser menor que “b”, que vale 5, é 
incrementada para 2 e “b”, decrementada para 4. Como “a” ainda é menor que “b”, pois “a” está valendo 
2 e “b”, valendo 4, “a” é incrementada para 3 e “b”, decrementada para 3. Perceba que agora a=b=3. 
Assim, a condição de “a” ser menor que “b” não é mais verdadeira e, então, encerra-se o laço. Desse modo, 
no Workspace, o resultado é apresentado como a = 3 e b = 3. 
A ideia agora é desenvolver um código que calcule a média usando o comando “while”. Para isso, 
siga os passos abaixo. 
1º Passo: Em Current Folder, deixe selecionado o caminho referente à pasta EXERCÍCIOS MATLAB LEIAUT. 
2º Passo: Pressione Ctrl + N do seu teclado para abrir o Editor. 
3º Passo: Digite acumulador = 0; e pressione Enter. 
4º Passo: Digite n = 0; e pressione Enter. 
5º Passo: Digite while n<5, e pressione Enter. 
6º Passo: Digite numero = input(‘Digite o valor:’); e pressione Enter. 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
56 
Observação: Lembre-se que o comando input faz uma requisição ao usuário em tempo de 
execução e atribui a resposta do usuário a uma variável. 
7º Passo: Digite disp(‘O número digitado foi:’); e pressione Enter. 
8º Passo: Digite disp(numero); e pressione Enter. 
9º Passo: Digite n= n+1; e pressione Enter. 
10º Passo: Digite acumulador = acumulador + numero; 
11º Passo: Digite end e pressione Enter. 
12º Passo: Digite media = acumulador/n; e pressione Enter. 
13º Passo: Digite disp(‘A soma dos números é:’); e pressione Enter. 
14º Passo: Digite disp(acumulador); e pressione Enter. 
15º Passo: Digite disp(‘A média dos números é:’); e pressione Enter. 
16º Passo: Digite disp(media); e pressione Enter. 
 Deverá estar assim: 
 
Atenção: A vírgula “,” depois do n<5 é opcional, quando estamos trabalhando com o “while”. O 
“for” também permite que usemos a vírgula, caso desejemos. 
17ºPasso: Clique em Save and run. 
18º Passo: Selecione a pasta EXERCÍCIOS MATLAB LEIAUT e clique em Salvar. 
19º Passo: Dirija-se à Janela de Comandos. 
20º Passo: Observe que apareceu a mensagem para digitar o valor. Digite 2 e pressione Enter. 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
57 
Observação: Pelo fato de ter sido programado para pedir ao usuário para digitar um valor 
enquanto n < 5, será pedido 5 vezes ao usuário para digitar um valor, já que a variável “n” inicia em 0 e vai 
até 4, totalizando 5. 
21º Passo: Apareceu novamente para digitar o valor. Digite 4 e pressione Enter. 
22º Passo: Apareceu novamente para digitar o valor. Digite 10 e pressione Enter. 
23º Passo: Apareceu novamente para digitar o valor. Digite 20 e pressione Enter. 
24º Passo: Apareceu novamente para digitar o valor. Digite 31 e pressione Enter. 
Observe que apareceram as seguintes mensagens: 
A soma dos números é: 67 
A média dos números é: 13.4000 
Atenção: Você deverá fazer os três exercícios que serão apresentados a seguir. Apenas o terceiro 
contemplará laço “while”. No entanto, os dois primeiros servirão como base para a compreensão do 
terceiro. 
 
 
 
 
 
 
 
 
 
 
 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
58 
EXERCÍCIO 
 
Se P tem coordenadas x e y, escrevemos P (x,y). Assim, calcule a distância entre os pontos 
 P1 (1,5) e P2 (4,7), isto é, calcule o valor da hipotenusa do triângulo retângulo, conforme mostra a figura 
a seguir. 
 
 
 
 
 
 
 
Resolução: 
 Podemos calcular a distância d do seguinte modo: 
 
 
 
 
 
 
 
 
Observação: S1 e S2 correspondem aos valores dos catetos do triângulo retângulo. 
 
 
P1 
P2 
𝒅 = ඥ𝒔𝟏𝟐 + 𝒔𝟐𝟐 
𝑑 = ඥ(4 − 1)ଶ + (7 − 5)ଶ 
𝑑 = √13 
𝑑 = 3,6056 
 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
59 
Agora você aprenderá como encontrar esse valor d através do MATLAB. Para isso, siga os passos 
abaixo: 
1º Passo: Digite p1 = [1 5] e pressione Enter. 
2º Passo: Digite p2 = [4 7] e pressione Enter. 
3º Passo: Digite sub = p2-p1 e pressione Enter. 
4º Passo: Digite quad_sub = sub.^2e pressione Enter. 
5º Passo: Digite sum(quad_sub) e pressione Enter. 
Observação: A função “sum” foi usada para somar os elementos do vetor. 
6º Passo: Digite d = sqrt(ans) e pressione Enter. 
Observação: A função “sqrt” foi usada para tirar a raiz quadrada do valor apresentado por ans. 
 Observe que apareceu como resultado d = 3.6056, exatamente o valor calculado acima. 
Você deve estar se perguntando se não poderia encontrar esse valor de distância de uma forma 
mais rápida. Sim, é possível, e você fará isso agora. Você fez o percurso maior apenas com fins didáticos 
para que entendesse cada passo do cálculo. Para resolver de uma forma muito mais rápida, siga os passos 
abaixo: 
1º Passo: Digite p1 = [1 5] e pressione Enter. 
2º Passo: Digite p2 = [4 7] e pressione Enter. 
3º Passo: Digite d = sqrt (sum ((p2-p1).^2)) e pressione Enter. 
 Observe que já apareceu o resultado d = 3.6056. Perceba quão rápido foi desse modo! 
 
EXERCÍCIO 
 
Observação: Você deverá tentar fazer esse exercício sozinho. Caso não consiga depois de muito 
tentar, poderá olhar a resolução, expressa na página a seguir. 
Desenvolva um código utilizando o Editor que solicite ao usuário para que entre com as 
coordenadas de dois pontos P1 e P2 e que calcule e apresente na Janela de Comandos a distância entre 
esses pontos, utilizando 𝒅 = ඥ𝒔𝟏𝟐 + 𝒔𝟐𝟐. Utilize a função “fprintf” para apresentar o resultado na 
Janela de Comandos. O resultado deverá ser apresentado contendo 4 casas decimais. Após o resultado 
ser apresentado na Janela de Comandos, deverá ser solicitado novamente para que o usuário entre com 
as coordenadas dos pontos. Esse processo de solicitar as coordenadas dos pontos e calcular a distância 
entre o pontos deverá acontecer 3 vezes. 
MATLAB Básico – Autoria: Família Carielo 
Escola Técnica LEIAUT Cariele 
Av. Governador Carlos de Lima Cavalcante, nº 168 – Derby / Recife - PE 
Rua Joaquim Felipe, nº 119 – Boa Vista/ Recife - PE 
 
60 
 
Código:

Continue navegando