FAKULTAS TEKNIK
UPN “VETERAN” JAWA TIMUR
SOAL LAPRES :
1. Buatlah program perhitungan matriks yang meliputi matriks transpose, matriks
penjumlahan, matriks pengurangan, matriks perkalian, matriks determinan, dan
matriks invers (Setiap praktikan wajib berbeda). Dengan pemilihan kondisi :
a) NPM ganjil menggunakan Switch case
b) NPM genap menggunakan If Then
2. Buatlah grafik tiga dimensi dari matrik (setiap praktikan wajib berbeda) !
3. Buatlah penyelesaian dengan menggunakan program, dari persamaan
dibawah ini :
x + y + NPM = 2
x + NPMy + 3z = 6
NPMx + y + 6z = 8
(NPM hanya 2 angka dari belakang)
4. Buatlah program plot dari pengulangan kondisi dalam pengulangan kondisi
(setiap praktikan wajib berbeda), dengan ketentuan :
a) NPM ganjil menggunakan for do di dalam while do
b) NPM genap menggunakan while do di dalam for do
84
JAWABAN
1. Buatlah program perhitungan matriks yang meliputi matriks transpose, matriks
penjumlahan, matriks pengurangan, matriks perkalian, matriks determinan, dan
matriks invers (Setiap praktikan wajib berbeda). Dengan pemilihan kondisi :
A. Algoritma
1.) Memulai Program
2.) Masukkan program yang diinginkan
3.) Untuk pemilihan kondisi dengan case dari 1 sampai 6 dengan variabel a
1. jika 1 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks transpose
1. Input data [1 3 45 7 ;9 5 7 4;4 1 5 3 ]
2. Penyelesaian rumus b'
3. Hasil yang akan ditampilkan matriks transpose
2. Jika 2 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks penjumlahan
1. Input data A = [1 2; 3 4]; B = [5 6; 7 8];
2. Penyelesaian rumus A+B
3. Hasil yang akan ditampilkan
3. Jika 3 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks pengurangan
1. Input data C = [7 29; 0 1]; D = [6 4; 11 9];
2. Penyelesaian rumus C-D
3. Hasil yang akan ditampilkan matriks pengurangan
4. Jika 4 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks perkalian
1. Input data a = 7; B = [3 6; -3 8; 0 9];
2. Penyelesaian rumus a*B
3. Hasil yang akan ditampilkan matriks perkalian
85
5. Jika 5 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks determinan
1. Input data E = [1 2 3 4 5; 6 7 9 1; 1 2 3 3 4; 1 2 6 7 8; 1 4 7 9 8]
2. Penyelesaian rumus det_E = det(E
3. Hasil yang akan ditampilkan matriks determinan
6. Jika 6 merupakan program yang diinginkan
a. Akan ditampilkan program penyelesaian matriks invers
1. Input data A = [1 2; 4 5]
2. Penyelesaian rumus A_inv=inv(A)
3. Hasil yang akan ditampilkan matriks invers
7. Jika pilihan tidak sesuai
a. Akan ditampilkan pemilihan variabel tidak sesuai masukkan ulang
4.) Program telah selesai
86
B. Flowchart
Start
Yes Input
Case (1) B = [1 3 45 7 ;9
5 7 4;4 1 5 3 ]
No
Proces
b'
Output
Matrix Transpose
Yes Input
Case (2) A = [1 2; 3 4];
B = [5 6; 7 8];
No
Proces
A+B
Output
Matrix Penjumlahan
Yes Input
Case (3) C = [7 29; 0 1];
D = [6 4; 11 9];
No
Proces
C-D
Output
Matrix Pengurangan
A B
87
A B
Yes
Input
Case (4) a = 7;
B = [3 6; -3 8; 0 9];
No
Proces
a*B
Output
Matrix Perkalian
Yes Input
E = [1 2 3 4 5; 6 7 8
Case (5)
9 1; 1 2 3 3 4; 1 2 6
7 8; 1 4 7 9 8]
No
Proces
det_E =
det(E)
Output
Matrix Determinan
Yes Input
Case (6) a = 7;
B = [3 6; -3 8; 0 9];
No
Proces
a*B
Output
Matrix
Perkalian
Yes Output
Otherwise Program
Tidak ada
No
End
88
C. Listing
clc;
clear;
disp('PERHITUNGAN MATRIKS')
disp('************************')
disp(' ')
disp ('1. MATRIX TRANSPOSE');
disp ('2. MATRIX PENJUMLAHAN');
disp ('3. MATRIX PENGURANGAN');
disp ('4. MATRIX PERKALIAN');
disp ('5. MATRIX DETERMINAN');
disp ('6. MATRIX INVERS');
disp (' ');
disp ('silahkan masukkan pilihan anda')
a=input('Select in = ');
switch a
case (1)
disp(' ');
disp('MATRIX TRANSPOSE');
disp('===================');
disp(' ')
b = [1 3 45 7 ;9 5 7 4;4 1 5 3 ]
b'
case (2)
disp(' ');
disp('MATRIX PENJUMLAHAN');
disp('===================');
disp(' ')
A = [1 2; 3 4];
B = [5 6; 7 8];
A+B
89
case (3)
disp(' ');
disp('===================');
disp('MATRIX PENGURANGAN');
disp(' ')
C = [7 29; 0 1];
D = [6 4; 11 9];
C-D
case (4)
disp(' ');
disp('===================');
disp('MATRIX PERKALIAN');
disp(' ')
a = 7;
B = [3 6; -3 8; 0 9];
a*B
case (5)
disp(' ');
disp('===================');
disp('MATRIX DETERMINAN');
disp(' ')
E = [1 2 3 4 5; 6 7 8 9 1; 1 2 3 3 4; 1 2 6 7 8; 1 4 7 9 8]
E
det_E = det(E)
det_E
case (4)
disp(' ');
disp('===================');
disp('MATRIX INVERS');
disp(' ')
A = [1 2; 4 5]
90
A
A_inv=inv(A)
A_inv
otherwise
disp('Pilihan tidak terdaftar');
disp('=======================');
disp('Untuk mengulang');
disp('Tekan Enter')
tmd;
end
91
D. Hasil run
92
Gambar 1.4. Hasil Run Matrix Perkalian
93
Gambar 1.5. Hasil Run Matrix Penguragan
94
Gambar 1.6. Hasil Run Matrix Penjumlahan
95
Gambar 1.7. Hasil Run Matrix Transpose
96
Gambar 1.8. Hasil Run Matrix Invers
97
2. Buatlah grafik tiga dimensi dari matrik (setiap praktikan wajib berbeda) !
A. Algoritma
1.) Memulai Program
2.) Masukkan program yang diinginkan
3.) Program akan memproses rumus xx.^2-yy.^2;
4.) Program akan menampilkan plot dengan statement figure, surf, dan plot
5.) Program telah selesai
98
B. Flowchart
Start
Input
x = [-3:1:3];
y = [-3:1:2];
Proces
zz=xx.^2-yy.^2;
[xx,yy]=meshgrid(x,y);
surf(xx,yy,zz);
Output
Plot dalam
bentuk 3D
End
99
C. Listing
x = [-3:1:3];
y = [-3:1:2];
[xx,yy]=meshgrid(x,y);
zz=xx.^2-yy.^2;
figure
surf(xx,yy,zz);
xlabel('X axis');
ylabel('Y axis');
100
D. Hasil Run
101
3. Buatlah penyelesaian dengan menggunakan program, dari persamaan
dibawah ini :
A. Algoritma
1.) Memulai Program
2.) Masukkan program matriks right division yang diinginkan
3.) Program akan menginput data a = [1 1 0;1 65 3;65 1 6] b = [2; 6; 8]
4.) Perogram akan memproses data dengan rumus x = a\b
5.) Program akan menampilkan hasil persamaan linear tiga variabel
6.) Program telah selesai
102
B. Flowchart
Start
Input
a = [1 1 0;1 65 3;65
1 6]
b = [2; 6; 8]
Proces
x = a\b
Output
Penyelesaian
linear tiga
variabel
End
103
C. Listing
clear;
clc;
a = [1 1 0;1 65 3;65 1 6]
b = [2; 6; 8]
x = a\b
104
D. Hasil Run
Gambar 3.2. Hasil Run Pnyelesaian Matriks Tiga Variabe dengan Matlab
105
4. Buatlah program plot dari pemilihan kondisi dalam pemilihan kondisi (setiap
praktikan wajib berbeda), dengan ketentuan :
A. Algoritma
1.) Memulai Program
2.) Masukkan program yang diinginkan
3.) Program while akan menampilkan input batasan akhir pertama (n)
a. Program for do akan menampilkan batasan akhir kedua (k)
1. Setelah semua batasan akhir ditentukan input data akan berupa
n<1
n = n + 1;
k = 0.5:o
2. Setelah semua batasan akhir ditentukan rumus data akan berupa
F = l*k
4.) Program akan menampilkan hasil komputasi plot
5.) Program telah selesai
106
B. Flowchart
start
Input
Batas akhir (n)
No
While ( n )
Yes
Proces
n<1
n = n + 1;
For k
Proces
k = 0.5:o
F = n*k;
plot(F,k,'-r',F,k,'ok');
Output
Hasil perhitungan disertai
dengan plot grafik gaya
End
107
C. Listing
clear all
clc
disp('=============================');
disp(' Hukum Hooke ');
disp('=============================');
n = input ('masukkan perubahan panjang pegas : ');
o = input ('masukkan perubahan konstanta pegas : ');
disp('******************************');
fprintf('%1s%12s%10s\n','Panjang','Konstanta','Gaya');
disp('================================');
while n < 1
n = n + 1;
disp('==============================')
for k = 0.5:o
F = n*k;
fprintf ('%5.2f%10.0f%15.2f\n',n,k,F);
end;
end;
k = 0.5:o;
n < 1;
n = n + 1;
F = n*k;
plot(F,k,'-r',F,k,'ok');
108
D. Hasil Run
109
Gambar 4.3. Hasil Run Program Plot dengan Matlab
110