korsor

korsor

Minggu, 03 Juli 2011

PROGRAM ELIMINASI GAUS ( MATLAB)

%PROGRAM METODE ELIMINASI GAUSS
%OLEH : DESMAN PEDATI
%KELAS: E
clear all;
disp('==============================================')
disp('  ')
disp('-            PROGRAM METODE ELIMINASI GAUSS          -')
disp('———————————————----------------------')
disp(' ')
disp(' SEMUA DATA HARUS DI ISI')
m=input(' *** Banyaknya Baris (M)adalah_ ');
n=input(' *** Banyaknya Kolom (N)adalah_ ');
disp('  ')
disp('*** Masukkan Data Matriks  Sebanyak MxN');
for i=1:m %
    disp(['*** Data Matriks Baris ' num2str(i)])% UNTUK MENIMBULKAN NAMA BARIS MATRIKS
for j=1:n %
    disp([' ** Masukkan Data Matriks Cell ' num2str(i),num2str(j)])
A(i,j)=input('   - Data Matriks = ');%MATRIKS UTAMA dgn nama A.
end
disp('  ')      %SUPAYA INPUT DATA PER BARIS TERPISAH.
end
disp(' *** Masukkan Vektor Sebanyak N');
for k=1:n
   B(k)=input(' *** Masukkan Data Vektor = '); %MATRIKS kolom dng nama B.
A          %NAMA MATRIKS PERTAMA
B=B'
if m~=n
disp (['Baris - ',num2str(m),';Kolom - ',num2str(n)])
disp ('  ** Bukan Matriks Persegi')
disp('  ** Matrik [A] Tidak Mempunyai Invers..!')
return
end
detA=det(A);
if detA==0
disp('A adalah Matriks Singular')
disp('Matrik (A)tidak mempunyai invers..1')
return
end
disp('langkah awal : Membuat Matrik M = A[B]')
disp('—————————————————–')
A=[A B ]
for i=1:m
disp(['Eliminasi Kolom' num2str(i)])
disp('—————————————————–')
disp(['B' num2str(i) '/a' num2str(i)])
A(i,:)=A(i,:)./A(i,i)
io=i-1;
in=m-i;
for ii=1:io
disp(['B' num2str(ii) '-a' num2str(ii) num2str(i) '*B' num2str(i)])
A(ii,:)=A(ii,:)-A(i,:).*A(ii,i)
end
for jj=1:in
disp(['B' num2str(i+jj) '-a' num2str(i+jj) num2str(i) '*B' num2str(i)])
A(i+jj,:)=A(i+jj,:)-A(i,:).*A(i+jj,i)
end
end
disp('SOLUSI PERSAMAAN LINEAR ADALAH')
for i=1:m
disp(['X' num2str(i) '=' num2str(A(i,m+1))])
end

Tidak ada komentar:

Posting Komentar