Escolar Documentos
Profissional Documentos
Cultura Documentos
TP 9
Universidade de Aveiro
• Programação no Matlab
– Ciclos for
– Ciclos while
– A instrução If
– As funções all e any
• Vectorização de Algoritmos
• Reserva de Espaço para as variáveis
• Exercícios
• Exemplo
N
1
Calcular a seguinte soma S 2
n 1 n
• Ciclo while
• Exemplo
1
Calcular a soma dada por S 2
n 1 n
• Instrução if
– A instrução if destina-se a executar instruções de forma
condicional. Executa estas instruções se a
Sintaxe condição for verdadeira
if condição
Instruções
else
Instruções
end
S= 0,
for n= 1:N,
if isprime(n),
S= S + n;
end
end
• Cuidado
A condição da instrução if pode devolver um
“array” lógico. A instrução só é executada se todos os
elementos forem verdadeiros.
Exemplo A condição devolve o
x= [1 2]; y= [5 6];
vector
if x<y
[1 1]
disp('x<y');
else
disp('x>y');
end Neste caso é executada esta
TP9 Aplicacionais para Ciências e Engenharia
instrução 12
Programação no Matlab
• A instrução any
– Esta instrução devolve o valor verdadeiro se algum dos
elementos do vector for diferente de zero.
Exemplo
any([0 0 0])
ans = 0
any([0 2 0])
ans = 1
• A instrução all
– Esta instrução devolve o valor verdadeiro se todos os
elementos do vector forem diferentes de zero.
Exemplo
all([0 2 1])
ans = 0
all([-1 2 3])
ans = 1
• O que é a Vectorização ?
– O Matlab é uma ferramenta de cálculo concebida para o
cálculo numérico com matrizes e vectores.
– Contudo, acontece com frequência os cálculos não
aparecerem na forma vectorial, sendo necessário fazer essa
transposição.
• A forma não vectorizada de um algoritmo recorre
com frequência aos ciclos for efectuando os
cálculos elemento-a-elemento.
• Produto de matrizes
• Forma vectorizada do produto de duas matrizes
tic
N= 200; M= 30; L= 20;
A= rand(M,N); B= rand(N,L);
C= A*B;
toc