Exercícios feitos em sala
Criar matriz
% Declaração de variáveis
% Real A(50,50)
% Inteiro m, n, i, j
clear all;
clc;
% Entrada de dados - maneira convencional
disp(' ');
m = input('Informe a quantidade de linhas: ');
n = input('Informe a quantidade de colunas: ');
disp(' ');
for i = 1 : m
for j = 1 : n
A(i,j) = input(['Informe o elemento A' , num2str(i),num2str(j),' ']);
end
end
% Saída de dados - maneira compacta
disp(' ');
disp('Matriz informada: ');
disp(A);
Gerador de matriz identidade
Versão 1
% Programa para gerar matriz identidade
% Declaração de variáveis
% Inteiro A(50,50)
% Inteiro n, i, j
% Limpeza das varáveis definidas previamente
clear all
% Entrada de dados
n = input('Informe a quantidade de linhas: ');
% Processamento de dados
setprintlimit(99999);
for i = 1 : n
for j = 1 : n
if i==j
A(i,j) = 1;
else
A(i,j) = 0;
end
end
end
% Saída de dados
disp(' ');
disp('Matriz Indentidade gerada: ');
disp(A);
Versão 2
% Programa para gerar matriz identidade
% Declaração de variáveis
% Inteiro A(50,50)
% Inteiro n, i, j
% Limpeza das varáveis definidas previamente
clear all
% Entrada de dados
n = input('Informe a quantidade de linhas: ');
% Processamento de dados
setprintlimit(99999);
% Colocar 1 na diagonal
for i = 1 : n
A(i,i) = 1;
end
% Zerar parte triangular superior
for i = 1 n-1
for j = i+1: n
A(i,j) = 0;
end
end
% Zerar parte triangular inferior
for i = 2 : n-1
for j = 1 : i-1
A(i,j) = 0;
end
end
% Saída de dados
disp(' ');
disp('Matriz Indentidade gerada: ');
disp(A);
Versão 3
% Programa para gerar matriz identidade
% Declaração de variáveis
% Inteiro n
% Entrada de dados
n = input('Informe a quantidade de linhas: ');
% Processamento de dados
A=eye(n);
setprintlimit(99999);
% Saída de dados
disp(A);
Calcular média da resistência de peças ao longo de vários dias
% Declaração de variáveis
% Real MediaDia, R(50,50)
% Inteiro dias, pecas, i, j
clear all;
% Entrada de dados - maneira convencional
disp(' ');
dias = input('Informe o número de dias');
pecas = input('Informe o número de peças');
disp(' ');
for i = 1 : dias
for j = 1 : pecas
R(i,j) = input(['Informe a resistêcia do dia ', num2str(i), ' da peça ', num2str(j), ': ']);
end
end
% Processamento de dados
% Calcular e exibir a média para cada dia
for i = 1 : dias
% Inicializar a média do dia com zero
MediaDia = 0;
% Acumular todos os elementos da linha i
for j = 1 : pecas
MediaDia = MediaDia + R(i,j);
end
% Dividir o acumulador pela quantidade de peças
MediaDia = MediaDia / pecas;
% Exibir a média do dia
disp([' Média do dia ', num2str(i),' = ', num2str(MediaDia)]);
end
Interpolação quadrática de dados
% Declaração de variáveis
% Real yinterp, xinterp
% Real x(3), y(3), COEF(3,3), a(3)
% Inteiro i
clear all;
% Dados de entrada
% Valores de x conhecidos (anbcossas do problema)
disp(' ');
disp('Interpolaçâo quadrática ');
disp(' ');
for i = 1 : 3
x(i) = input(['Informe x', num2str(i),': ']);
end
% Valores de y conhecidos (ordenadas do problema)
disp(' ');
for i = 1 : 3
y(i) = input(['Informe y', num2str(i), ': ']);
end
% Valor de x a ser interpolado
disp(' ');
xinterp = input(' Informe o valor a ser interpolado: ');
% geração da matriz [COEF] com 1 e as abscissas x
for i = 1 : 3
COEF(i,1) = 1;
COEF(i,2) = x(i);
COEF(i,3) = x(i)^2;
end
% Processamento de dados - Cálculo das incógnitas {a}
% Resolver o sistema linear [COEF].{a}={Y}
a = COEF \ transpose(y);
% Saída de dados - Incógnitas
disp(' ');
disp('Incógnitas = Coeficiente do polinômio interpolador');
disp(a);
% Processamento de dados - Interpolação
yinterp = a(1) + a(2) * xinterp + a(3) * xinterp^2;
% Saída de dados - Interpolação
disp(' ');
disp(['y interpolado = ', num2str(yinterp)]);
Transposição de matrizes
O que é uma matriz transposta?
Para transpor uma matriz, deve-se utilizar a função transpose()
:
a = transpose(y);
Dessa forma, a variável a
conterá a matriz transposta da matriz y
.