Anda di halaman 1dari 34

BAB 1

PENGENALAN MATLAB

A. Pengertian Matlab
Matlab atau Matrix Laboratory merupakan bahasa pemrograman dengan kemampuan
tinggi dalam bidang komputer. Aplikasi yang dibuat oleh MathWorks.inc ini memiliki
kemampuan mengintegrasikan komputasi, visualisasi, dan pemrograman. Pada awalnya
Matlab dibuat untuk memberikan kemudahan mengakses data matrik pada proyek
LINPACK dan EISPACK. Saat ini Matlab memiliki ratusan fungsi yang dapat digunakan
sebagai problem solver mulai dari simple sampai masalah-masalah yang kompleks dari
berbagai disiplin ilmu.
Adapun penggunaan Matlab meliputi pada bidangbidang berikut:
a. Matematika dan Komputasi
b. Pembentukan Algorithm
c. Akusisi Data
d. Pemodelan, simulasi, dan pembuatan prototype
1. Analisa data, explorasi, dan visualisasi
2. Grafik Keilmuan dan bidang Rekayasa

B. Memulai Matlab
Saat memulai menjalankan Matlab, akan muncul tampilan seperti berikut ini:

a) Menu Bar
Baris yang berisikan menu-menu pada tampilan Matlab. Setiap menu mempunyai
ikon-ikon yang memudahkan menjalankan Matlab.
b) Current Directory
Window ini menampilkan isi dari direktori kerja saat menggunakan MATLAB.
Kita dapat mengganti direktori ini sesuai dengan tempat direktori kerja yang

diinginkan dengan mengklik icon yang terdapat di atas jendela Current


Directory.
c) Details
Window yng menampilkan rincian suatu file yang dipilih.
d) Jendela Perintah (Command Window)
Pada command window, berfungsi untuk mengetikkan perintah serta tempt
menampilkan outptut (keluaran). Setiap penulisan perintah selalu diawali dengan
prompt >>.
e) Workspace
Jendela ini berisi informasi pemakaian variabel di dalam memori Matlab. Untuk
melihat variabel yang aktif saat ini, kita dapat menggunakan perintah who.
f) Command History
Jendela ini berisi informasi tentang perintah yang pernah dituliskn sebelumnya. Pada jendela
ini dapat mengambil kembali perintah dengan menekan tombol panah ke atas atau mengklik
perintah pada jendela histori.
BAB 2
MENGENAL ARRAY DAN OPERASI MATRIK

A. Array dan Operasi Matrik


Skalar : data tunggal
Array/ vektor : sekumpulan data tunggal yang membentuk baris atau kolom
(1 dimensi)
Matrik : sekumpulan dat tunggal yang membentuk baris dan kolom
( 2 dimensi)
B. Operator
Di dalam Matlab, operator diklasifikasikan menjadi tiga bagian, yaitu:
1. Operator Aritmatika
Operator Arti
+ Penjumlahan
- Pengurangan
* Perkalian (matriks)
Perkalian untuk masing-masing elemen matriks (aturan
.*
array)
/ Pembagian kanan (matriks)
Pembagian kanan untuk setiap elemen matriks (aturan
./
array)
\ Pembagian kiri (matriks)
Pembagian kiri untuk setiap elemen matriks (aturan
.\
array)
^ Perpangkatan (matriks)
.^ Perpangkatan setiap elemen matriks (array)

2. Operator Relasional
Operator relasional digunakan untuk membandingkan operand-operand (nilai asal
yang digunakan didalam proses operasi) secara kuantitatif.
Operator Arti
== Sama dengan
~= Tidak sama dengan
< Kurang dari
> Lebih dari
<= Kurang dari sama dengan
>= Lebih dari sama dengan

3. Operator Logika
Operator logika biasanya digunakan untuk menyatakan sebuah kondisi yang
bernilai TRUE (1) atau FALSE (0). Terdapat beberapa jenis operator logika
sebagai berikut:
Operator Nama Arti
Bernilai TRUE jika operand kiri dan
&& Konjungsi (AND) kanan bernilai TRUE selain itu
FALSE
Bernilai FALSE jika operand kiri
|| Disjungsi (OR) dan kanan bernilai FALSE selain itu
TRUE
Kebalikan dari operand yang
~ Negasi (NOT)
diinputkan
Akan bernilai TRUE jika salah satu
xor Disjungsi Eksklusif operand bernilai berbeda dan benili
FALSE jika operand bernilai sama

C. Operasi Array dan Operasi Matrik

PERINTAH ARTI CONTOH


M=
M=k Skalar M = Saklar k
2
Simocolon(;)untuk
M=k; Hasil tidak muncul
menyembunyikan output
M=
M=[a1 a2 a3] Array dalam bentuk baris
1 2 3
M=
1
M=[b1;b2;b3] Array dalam bentuk kolom
2
3
D=
Membuat matrik 3 baris 3 1 2 3
D=[1 2 3;4 5 6;7 8 9]
kolom 4 5 6
7 8 9
E=
Membuat matrik 3 baris 3 1 3 2
E=[1 3 2;1 1 1;0 0 5]
kolom 1 1 1
0 0 5
G=
Penjumlahan matrik :
2 5 5
G=D+E Matrik D ditambah matrik
5 6 7
E
7 8 14
H=
Pengurangan matrik:
0 -1 1
H=D-E Matrik D dikurangi matrik
3 4 5
E
7 8 4
I=
3 5 19
Perkalian matrik:
I=D*E 9 17 43
matrik D dikali matrik E
15 29 67

Perkalian masing-masing I=
dari elemen matrikD 1 6 6
I=D.*E
dengan masing-masing 4 5 6
elemen matrik E 0 0 45
J=
Perkalian skalar (2) dengan 2 4 6
J=2*D masing-masing dari elemen 8 10 12
matrik D 14 16 18

K=
Perpangkatan matrik: 30 36 42
K=D^2
Matrik D pangkat 2 66 81 96
102 126 150
K=
Perpangkatan elemen
1 4 9
K=D.^2 matrik: setiap elemen
16 25 36
matrik D dipangkatkan 2
49 64 81
L=
Pembagian matrik: 0.5000 0.5000 0.3000
L=D/E
Matrik D dibagi matrik E 0.5000 3.5000 0.3000
0.5000 6.5000 0.3000
L=
Pembagian elemen matrik:
1.0000 0.6667 1.5000
L=D./E Pembagian elemen matrik
4.0000 5.0000 6.0000
D dengan elemen matrik E
Inf Inf 1.8000

M=
1.0e+016 *
Pembagian kiri matrik D
M=D\E
dengan matrik E 0.4504 -0.4504 -2.2518
-0.9007 0.9007 4.5036
0.4504 -0.4504 -2.2518
M=
Pembegian kiri setiap
1.0000 1.5000 0.6667
M=D.\E elemen matrik D dengan
0.2500 0.2000 0.1667
setiap elemen matrik E
0 0 0.5556
N=
1 4 7
N=D' Transpose dari matrik D
2 5 8
3 6 9
N=
Tranpose setiap elemen 1 4 7
N=D.'
matrik D 2 5 8
3 6 9
A=
Membuat matrik 2 baris 2
A=[5 2;6 4] 5 2
kolom
6 4
B=
B=[1 7 8 0] Array dalam bentuk matrik
1 7 8 0
ans =

1
B' Transpos matrik B
7
8
0
Mengganti elemen matrik
B=
B(1)=5 B pada kolom pertama
5 7 8 0
dengan angka 5
ans =
Mendefinisikan elemen
pada (r,c) / (baris keberapa, (1,1) 5
sparse(A)
kolom keberapa) dari (2,1) 6
matrik A (1,2) 2
(2,2) 4
Elemen pada baris pertama ans =
A(1,1)
dan kolom pertama 5
A=
Mengganti elemen pada
A(1,1)=7 baris pertama dan kolom
7 2
pertama dengan angka 7
6 4

C=
Columns 1 through 7
Konstruksi data pada
1 2 3 4 5 6 7
C=1:8 interval (1,8)/ mengurutkan
angka dari 1 sampai 8
Column 8
8
Bilangan ganjil dari 1 D =
D=1:2:8
sampai 8 1 3 5 7
ans =
Elemen-elemen yang ada
A(:,1) 7
pada kolom ke-1 matrik A
6
Elemen-elemen yang ada ans =
A(1,:)
pada baris ke-1 matrik A 7 2
Elemen pada baris ke-1 ans =
A(1,2)
kolom ke-2 dari matrik A 2
Elemen terakhir (pojok ans =
A(end)
kanan bawah) dari matrik A 4
ans =
length(A) Panjang matrik A
2
Ukuran dari matrik B (1 ans =
size(B)
baris 4 kolom) 1 4
Ukuran dari matrik A (2 ans =
size(A)
baris 2 kolom) 2 2
ans =
1 0 0 0
eye(4) Matrik identitas 0 1 0 0
0 0 1 0
0 0 0 1
ans =
diag(2) Diagonal matrik
2
ans =
Matrik yang semua 0 0 0
zeros(4,3) elemennya adalah 0 0 0 0
(matrik nol 4 baris 3 kolom) 0 0 0
0 0 0
ans =
inv(A) Invers matrik A 0.2500 -0.1250
-0.3750 0.4375
ans =
det(A) Determinan matrik A
16

ans =
1 13 5 7
Membuat Matrik segitiga
triu(A) 0 9 3 2
atas
0 0 1 8
0 0 0 7
ans =
1 0 0 0
Membuat matrik segitiga
tril(A) 8 9 0 0
bawah
5 1 1 0
2 3 5 7
isequal(A,B) Matrik A dan matrik B ans =
tidak sama sehingga 0
pernyataan itu salah (0)
isequal(A,A) Matrik A = matrik A itu ans =
sendiri sehingga 1
jawabannya 1 yaitu benar
ismember(A,B) Elemen dari matrik A dan ans =
B tidak ada yang sama 0 0
sehingga dilambangkan 0 0
dengan angka 0 (salah)
C=[1 2;3 4] C=
Membuat matrik 2 x 2 1 2
3 4
ismember(A,C) Elemen dari matrik A dan ans =
B yang sama 0 1
dilambangkan dengan 0 1
angka 1 (benar) dan yang
tidak sama dilambangkan
dengan angka 0 (salah)
union([5 2 6 4],[1 7 Gabungan dari A dan B ans =
0 1 2 4 5 6
8 0])
7 8
intersect([5 2 6 4],[1 Irisan dari A dan C (elemen ans =
2 4
2 3 4]) yang dimiliki A dan C)
setdiff([5 2 6 4],[1 2 Elemen A yang tidak ans =
5 6
3 4]) termuat di C
Contoh:
3 5 1 5
=[ ] =[ ]

6 4 7 8

Selesaikan permasalahan berikut dengan menggunakan Matlab a.


A*B
b. A.*B
T
c. A
d. Invers A

BAB 3
SISTEM PERSAMAAN LINIER

A. Bentuk Umum Sistem Persamaan Linier


11 1 + 12 2 + + 1 = 1 21 1 + 22 2 + + 2 = 2 .
11 + 2 2 ++ =

B. Bentuk Matriks
11 12 1 1 1

21 22 2 2

[ ] [] = [ ]

1 2

C. Contoh
Selesaikan permasalahan berikut ini:
8 + 2 = 20 3 + 5 = 16

Jawab:
Ubah dalam bentuk matrik
8 2 20

][]=[ ]
[3 5 16

A X B
AX=B
-1
X=A B
X=inv(A)*B
X=A\B

Penyelesaian dengan Matlab:


Solusi dengan perkalian invers

Atau dengan cara pembagian kiri

BAB 4
TIPE DATA
A. Tipe Data Dasar
1. Bilangan Bulat
Bilingan bulat adalah bilangan yang tidak desimal atau pecahan. Di Matlab Tipe
ditulis: integer atau int.
2. Bilangan Riil
Bilangan riil adalah bilangan yang bisa ditulis dalam bentuk desimal. Bilangan riil
meliputi bilangan rasional dan bilangan irasional. Di dalam Matlab Tipe ditulis:
real
3. Bilangan Tetap
Bilangan yang bernilai tetap selama algoritma dijalankan (konstan). Di dalam
Matlab tipe ditulis: const
4. Karakter
Data tunggal yang mewakili semua huruf, angka, dan simbol. Tidak dapat
dioperasikan secara matematis. Jangkauan meliputi semua karakter dalam kode
ASCII. Tipe ditulis: char
5. Logika
Memberi nilai pada perbandingan atau kombinasi perbandingan. Jangkauannya
meliputi true dan false. Tipe ditulis: boolean
B. Tipe Data Bentukan
1. Array
Wadah untuk menampung beberapa nilai data yang sejenis.
2. String
Deretan karakter yang membentuk satu kata atau kalimat. Bisany diapit dua tanda
kutip.
3. Rekaman
Wadah untuk menampung elemen data yang tipenya tidak harus sama. Biasanya
mewakili satu jenis objek.
C. String
Tipe data yang terdiri dari huruf dan kode ASCII yang ditampilkan representasinya.
Diawali dan diakhiri dengan apostrof (.........).
String merupakan array numberik yang dapat dimanipulasi seperti: dimbil beberapa,
dibalik, ditranpose, dan digabung.
Fungsi
1. Disp
Manmpilkan string tanpa nama variabelnya dan harus berisi string.
2. Input
Menampilkan string sebagi keterangan input.
3. Fprint
Menmpilkan di layar atau menyimpan output dalam file.

Konversi String
Perintah Konversi String
char string ke ASCII
double ASCII ke string
fprint menulis teks terformat ke file
int2str integer ke string
num2str bilangan ke string
str2num string ke bilangan

Contoh:
> nim=14101050115
> disp(['nim saya adalah ',num2str(nim)])
> nama=input('masukkan nama anda:','s')
> disp(['nama yang anda masukkan='])
> disp(nama)
> z='ini cuma mo nyoba aja...';
> y='semoga berhasil';
> fprintf('%s\n',z)
> fprintf('%s\n',z,y)
> fprintf('%s%s\n',z,y)
> Nama=input('Ketikkan Nama Anda: ','s');
> Umur=input('Masukkan Umurmu: ','s');
> disp([Nama,' selamat datang di program ini']);
> disp(['Umur Anda sekarang masih ',num2str(Umur),' tahun']);
BAB 5
M-FILE

M-file dibuat di jendela editor. M-File bersisi banyak perintah (command) yang dapat
disimpan dalam bentuk skrip teks. M-File bisa dijalankan otomatis dengan cara mengetikkan
nama M-File di command window.
Memulai M-File
1. Ketik edit (tanpa tanda petik) pada command window kemudian enter

2. Klik ikon new script pada menu Home.

Setelah melakukan salah satu perintah diatas akan muncul tampilan M-File
sebagai berikut:
Menyimpan M-File

Untuk menyimpan M-File dengn klik ikon Save di pojok kanan atas atau dengan
Ctrl+S
Berikutnya akan muncul dialog Save As. Pilih direktori tempat menyimpan
M-File, ketikkan nama file yang diinginkan tetapi hanya satu kata saja jika beberapa kata
gunakan underscore _ untuk menghubungkan kata-kata tersebut, lalu klik Save.

Menjalankan M-File

Untuk menjalankan M-File dengan cara menuliskan nama M-File yang telah disimpan
tadi di command window, atau bisa dengan menekan F5 pada keyboard atau klik ikon
Run pada editor.
Contoh:
%Program menghitung lingkaran:lingkaran.m %untuk
menghitung luas dan keliling lingkaran %Menampilkan
judul program
clc;
disp('Menghitung Luas dan Keliling Lingkaran');
disp('---------------*********--------------') phi=22/7;
%Meminta masukan user
r=input('panjang jari-jari lingkaran:');
%Menghitung luas lingkaran luas=phi*(r^2);
%Menghitung keliling lingkaran
keliling=2*phi*r;
%menampilkan keluaran
disp(['Luas lingkaran= ',num2str(luas)]) disp(['keliling
lingkaran= ',num2str(keliling)])

Tampilan dalam M-File

Beberapa Rumus pengulangan dalam M-File:


A. Pengulangan for
Dipakai untuk mengulangi perintah (sekelompok perintah) secara pasti (tertentu),
dimana banyaknya perulangan biasanya sudah ditentukan terlebih dahulu. Secara
umum sintak untuk perulangan for adalah:

For ekspresi/ variabel


Blok perintah
End
B. Loop While
Mengerjakan sekelompok perintah pengulangan selama ekspresi yang diberikan
sebagai evaluasi adalah benar. Dalam pengulangan while banyaknya perulangan
belum dapat diketahui. Secara umum sintak untuk perulangan while adalah:

while ekspresi/ variabel


Blok perintah
End

C. Loop Switch-else
Loop switch digunakan apabila sederetan perintah harus dikerjakan dengan
didasarkan pada penggunaan berulang-ulang suatu tes dengan argumen yang sama.

Switch ekspresi
Case test ekspresi 1
Deret perintah 1
Case test ekspresi 2
Deret perintah 2
........
Otherwise
Deret peerintah n
End

D. Konstruksi if-else-end

if ekspresi
peerintah jika benar
else
perintah jika salah
end
E. Kontruksi if-elseif-else-end

if ekspresi
perintah jika ekspresi 1 benar elseif
ekspresi
perintah jika ekspresi 2 benar
else
perintah jika salah
End

Contoh
%operasi aljabar clc;
disp(['Bentuk aljabar pertama: 5x + 10y - 2z']);
disp(['Bentuk aljabar kedua: 7x - 5y + 9z']); pilih='Y';
while upper(pilih)=='Y'; disp(['----***Operasi
Aljabar***----']); disp(['ditanya']);
disp(['(1) penjumlahan dari dua bentuk aljabar']); disp([ '(2) Bentuk
aljabar pertama dikurangi bentuk aljabar
kedua']);
disp(['(3) Bentuk aljabar kedua dikurangi bentuk aljabar
pertama']);
disp(['(4) Keluar']);
pilihan=input('masukkan pilihan anda [1.....4]'); switch
pilihan
case 1
a=input('masukkan koefisien dari x pada bentuk aljabar
pertama:');
b=input('masukkan koefisien dari y pada bentuk aljabar
pertama:');
c=input('masukkan koefisien dari z pada bentuk aljabar
pertama:');
d=input('masukkan koefisien dari x pada bentuk aljabar
kedua:');
e=input('masukkan koefisien dari y pada bentuk aljabar
kedua:');
f=input('masukkan koefisien dari z pada bentuk aljabar
kedua:');
syms x y z hasil=(a*x+b*y+c*z)+
(d*x+e*y+f*z) %menampilkan hasi operasi
disp(['hasil operasi = ', char(hasil)]) case 2
a=input('masukkan koefisien dari x pada bentuk aljabar
pertama:');

b=input('masukkan koefisien dari y pada bentuk aljabar


pertama:');
c=input('masukkan koefisien dari z pada bentuk aljabar
pertama:');
d=input('masukkan koefisien dari x pada bentuk aljabar
kedua:');
e=input('masukkan koefisien dari y pada bentuk aljabar
kedua:');
f=input('masukkan koefisien dari z pada bentuk aljabar
kedua:');
syms x y z hasil=(a*x+b*y+c*z)-
(d*x+e*y+f*z) %menampilkan hasi operasi
disp(['hasil operasi = ', char(hasil)]) case 3
a=input('masukkan koefisien dari x pada bentuk aljabar
pertama:');
b=input('masukkan koefisien dari y pada bentuk aljabar
pertama:');
c=input('masukkan koefisien dari z pada bentuk aljabar
pertama:');
d=input('masukkan koefisien dari x pada bentuk aljabar
kedua:');
e=input('masukkan koefisien dari y pada bentuk aljabar
kedua:');
f=input('masukkan koefisien dari z pada bentuk aljabar
kedua:');
syms x y z hasil=(c*x+d*y+f*z)-
(a*x+b*y+c*z) %menampilkan hasi operasi
disp(['hasil operasi = ', char(hasil)]) case 4
disp('**Terimakasih telah menggunakan program ini**'); return ;
otherwise
disp('--Try Again--');
end
pilih=input('masukkan data lagi [Y/T]?','s');
end

BAB 6
POLYNOMIAL

1. ROOTS
Digunakan untuk mencari akar-akar dari polynomial. Dengan rumus: roots(p). p =
polynomial
2. CONV dan DECONV
Conv untuk menghitung hasil kali dua polynomial. Dengan rumus: conv(a,b). Deconv
untuk menghitung hasil bagi polynnomial. Dengan rumus: deconv(a,b) a = polynomial 1
b = polynomial 2
3. POLYDER
Menghitung turunan dari suatu polynomial. Dengan rumus: polyder(p) p =
polynomial
4. POLYVAL
Menghitung nilai dari suatu polynomial. Dengan rumus: polyval(f,a) f = fungsi
polynomial
a =nilai polynomial
5. POLYFIT
Menggambar dua buah polynomial. Dengan rumus: polyfit(x,y,n) x,y =
vektor
n= derjat polynomial
6. RESIDU
Menghitung sisa dari sebuah polynomial setelah dibagi.

Berikut ini contoh dari rumus-rumus polynomial


Soal:

a x3 2x2 3x 4
b x3 4x2 9x 16
c 2x3 x2 2x 5
2
dx 3x 7
5
e 7x 2x4 4x3 3x2 3x 6; 2 x 5
x 1,2,..10 f x4 x3 x2 x 8; saat
x 1,1.5,2,...,10 g x6 6x5 20
x4 50 x3 75x2 84 x 64 h x3 2x2 3x 4
Tentukan:
1. a.b
2. c.d
3. e(2), e(3), e(4), e(5)
4. f(x)
5. g/h dan c/d
6. g'
7. g'(3)
8. Jika x=[1 3 5 7], y=[0.5 2.5 4 11], n=3. plot kurva polynomial tersebut!
9. a'/b' saat x=3
10. c'/d' saat x=3, 3.5, 4, 4.5, .,10

Jawab:
> a=[1 2 3 4];
> b=[1 4 9 16];
> c=[2 -1 2 5];
> d=[1 -3 7];
> e=[7 2 -4 3 -3 6];
> f=[1 1 1 1 8];
> g=[1 6 20 50 75 84 64];
> h=[1 2 3 4];

1. >> conv(a,b) ans =


1 6 20 50 75 84 64
2. >> conv(c,d) ans =
2 -7 19 -8 -1 35
3. >> polyval(e,2) ans =
236
> polyval(e,3) ans =
1779
> polyval(e,4) ans =
7466
> polyval(e,5) ans =
22691
4. >> n=[1:10] n =
Columns 1 through 9
1 2 3 4 5 6 7 8 9
Column 10
10
>> polyval(f,n)
ans =
Columns 1 through 5
12 38 128 348 788
Columns 6 through 10
1562 2808 4688 7388 11118

>> n=[1:0.5:10]
n =
Columns 1 through 6
1.0000 1.5000 2.0000 2.5000 3.0000 3.5000
Columns 7 through 12
4.0000 4.5000 5.0000 5.5000 6.0000 6.5000
Columns 13 through 18

7.0000 7.5000 8.0000 8.5000 9.0000 9.5000


Column 19
10.0000
>> polyval(f,n)
ans =
1.0e+004 *
Columns 1 through 6
0.0012 0.0020 0.0038 0.0071 0.0128 0.0217
Columns 7 through 12
0.0348 0.0534 0.0788 0.1125 0.1562 0.2116
Columns 13 through 18
0.2808 0.3658 0.4688 0.5923 0.7388 0.9110
Column 19
1.1118
5. >> deconv(g,h) ans =
1 4 9 16
>> deconv(c,d) ans =
2 5
6. >> i=polyder(g)
i =
6 30 80 150 150 84
7. >> polyval(i,3) ans =
7932
8. >> x=[1 3 5 7];
> y=[0.5 2.5 4 11];
> p=polyfit(x,y,3)
p =
0.1250 -1.1875 4.1250 -2.5625
>> plot(x,y),grid on

9. >> a1=polyder(a)
a1 =
3 4 3
>> b1=polyder(b)
b1 =
3 8 9
> j=deconv(a1,b1)
j =
1
> polyval(j,3) ans =
1
10.>> c1=polyder(c) c1 =
6 -2 2
>> d1=polyder(d)
d1 =
2 -3
k=deconv(c1,d1) k =
3.0000 3.5000
> x=[3:0.5:10];
> polyval(k,x) ans =
Columns 1 through 6
12.5000 14.0000 15.5000 17.0000 18.5000 20.0000
Columns 7 through 12
21.5000 23.0000 24.5000 26.0000 27.5000 29.0000
Columns 13 through 15
30.5000 32.0000 33.5000
BAB 7
APLIKASI MATLAB DALAM MENYELESAIKAN SOAL
MATEMATIKA

Matlab juga dapat digunakan untuk menyelesaikan soal matematika yang dapat kita
temui dalam kehidupan sehari-hari, misalnya pada penyelesaian Sistem Persamaan Linier,
bentuk aljabar, menghitung luas benda, dan lain-lain.
Dalam menyelesaikan soal matematika harus mengetahui konsep dari sol terlebih
dahulu.
Contoh 1:
clc
disp('Nomor 4.');
disp('Soal cerita yang berhubungan dengan polinomial'); disp('Jika
suatu persegi panjang lebarnya adalah (x + 6)'); disp('dan panjangnya
adalah (x - 5). Diketahui luasnya adalah 50cm^2.');
disp('Berapakah nilai x?');
disp('Penyelesaian:......');
disp('lebar = x + 6'); disp('panjang
= x - 5'); disp('Luas = 50');
l=[1 6]; p=[1 -5];
Luas=conv(l,p)
disp(' 50 = x^2 + x - 30');

Contoh 2:
%menyelesaikan SPLDV clc
disp('Nomor 1.'); disp('Diketahui SPLDV
berikut'); disp('y + 2x = 8');
disp('2y - 7x = -6');
disp('Tentukan himpunan penyelesaian SPLDV!');
disp('-------------------------------------');
disp('Penyelesaian:....');
%meminta masukan user
a=input('masukkan koefisien y dari persamaan linier dua variabel yang
pertama: ');
b=input('masukkan koefisien x dari persamaan linier dua variabel yang
pertama: ');
c=input('masukkan konstanta dari persamaan linier dua variabel yang
pertama: ');
d=input('masukkan koefisien y dari persamaan linier dua variabel yang
kedua: ');

e=input('masukkan koefisien x dari persamaan linier dua variabel yang


kedua: ');
f=input('masukkan konstanta dari persamaan linier dua variabel yang
kedua: ');
M=[b a;e d]; N=[c;f];
HP=M\N x=HP(1,:);
y=HP(2,:);
disp(['jadi himpunan penyelesaiannya adalah x = ',num2str(x),' dan y =
',num2str(y)]);
Contoh 3:
%operasi aljabar
clc;
disp(['Tentukan penjumlahan bentuk aljabar berikut!']);
disp(['-3m + 4n - 6 dengan 7n - 8m +10']);
%meminta masukkan dari user
a1=input(['Berapa koefisien dari a pada bentuk aljabar
pertama?:']);
b1=input(['Berapa koefisien dari b pada bentuk aljabar
pertama?:']);
c1=input(['Berapa konstanta pada bentuk aljabar pertama?:']);
a2=input(['Berapa koefisien dari a pada bentuk aljabar kedua?:']);
b2=input(['Berapa koefisien dari b pada bentuk aljabar kedua?:']);
c2=input(['Berapa konstanta dari bentuk aljabar kedua?:']);
%mengoperasikan bentuk aljabar
syms m n
hasil=a1*m+b1*n+c1+a2*n+b2*m+c2
%menampilkan hasi operasi
disp(['hasil operasi = ', char(hasil)])
BAB 8
APLIKASI MATLAB UNTUK MEDIA PEMBELAJARAN
(KUIS MATEMATIKA)

Matlab juga dapat digunakan sebagai sarana media pembelajaran, salah satunya adalah
kuis. Kuis dalam Matlab dapat membuat kuis yang hampir sama dengan kuis-kuis yang
sering kita temui.
Cara membuat kuis dengan matlab:
1. Memilih soal-soal apa yang akan dimasukkan dalam kuis dan menyelesaikan soal-
soal tersebut untuk dimasukkan dalam kunci jawaban. Dalam contoh dibawah ini,
kelompok saya menggunakan materi operasi aljabar.
2. Aturlah sedemikian rupa sesuai keinginan agar kuis tersebut terlihat rapi dan
menarik.
3. Tentukan skor setiap nomor yang nantinya akan digunakan sebagai hasil akhir kuis
tersebut. Caranya dengan membuat sebuah variabel yang awalnya 0. Misalnya
setiap soal yang dijawab benar akan diberi skor 10 dan untuk soal yang dijawab
salah, skor akan dikurangi 5. Dalam contoh dibawah, variabel k untuk jawaban
yang benar (k = k+1), dan variabel s untuk jawaban yang salah (s = s+1). Diakhir
nanti jumlah jawaban benar dan jumlah jawaban salah akan dimasukkan rumus
t=(k*10)-(s*5), dengan t adalah skor dari kuis pilihan ganda.
Skor untuk soal uraian, contoh dibawah menggunakan variabel k1 untuk jawaban
benar dan s1 untuk jawaban salah. setelah selesai mengerjakan soal uraian, k1 dan
s1 dimasukkan ke rumus k1=(10*k1)-(s1*5)
Untuk nilai akhir kuis adalah nilai=t+u.
4. Jangan lupa tampilkan kunci jawabannya jika yang dipilih adalah jawaban yang
salah

Contoh:
function [pilih]=nama(pilih)
input('********************SELAMAT DATANG********************'); disp('di
Program kami, kelompok 4')
disp('anggota kelompok:')
disp('Lian Hendi Saputra NPM: 14.1.01.05.0004')
disp('Try Aldianto Wibisono NPM: 14.1.01.05.0023')
disp('Mega Yulianita NPM: 14.1.01.05.0100')
disp('Istiqomah Rohimatul Azizah NPM: 14.1.01.05.0115')
input('---------------- SIAP MENGERJAKAN??? ------------------');
input('======================================================');
nama=input('Masukkan Nama Anda:','s');
clc; disp('_______________________________________________________');
disp('-----------PROGRAM ULANGAN HARIAN MATEMATIKA-----------');
disp('>Program ini terdiri dari soal pilihan ganda dan essay<'); disp('Untuk
jawaban benar akan mendapat nilai 10'); disp('sedangkan jawaban salah akan
dikurangi 5');
disp([nama,', Kerjakan pilihan dibawah ini secara urut mulai dari nomor 1
sampai nomor 3']);
disp('1. Pilihan Ganda'); disp('2.
Essay'); disp( '3. Exit');
k=0;
s=0;
n=input('Masukkan pilihan anda.....'); if n==1
disp('---------------------------------------------------');
disp('********************Pilihan Ganda******************');
disp('WARNING! ="JANGAN GUNAKAN HURUF KAPITAL!!!!!!!!!!!!!"'); disp('1.
Tentukan penjumlahan bentuk aljabar berikut!'); disp('-12m + 4n - 6
dengan 7n - 8m +10');
disp('a. 4-4*n-5*m'); disp('b.
4-4*m-5*n'); disp('c. 4+11*n-
20*m'); disp('d. 4+11*m-20*n');
A=-12;
B=4;
C=-6;
D=7;
E=-8;
F=10; syms m n
a=4-4*n-5*m; b=4-4*m-
5*n; c=4+11*n-20*m;
d=4+11*m- 20*n; syms m n
hasil=(A*m+E*m)+(B*n+D*n)+(C+F);
jawab=input('Masukkan jawaban anda: ');
if jawab==c
input('Jawaban anda benar');
else
input('Jawaban anda salah');
end

if jawab==c input('skor +10');


k=k+1;
else
input('skor -5'); s=s+1;
input(['Kunci jawaban: ',char(hasil),' (c)']);
end
disp(['2. Bu Marhawi membeli 14 kg tepung, 17 kg wortel, dan 4 kg
tomat.']);
disp(['Karena terlalu lama disimpam 4 kg tepung, 3 kg wortel, dan 3 kg
tomat']);
disp(['ternyata rusak/ busuk. Tentukan tepung, wortel, dan tomat
yang tersisa']);
disp(['jika harga tepung, wortel, dan tomat secara berurutan adalah x
rupiah']);
disp(['y rupiah, dan z rupiah, nyatakan barang yang dibeli Bu
Marhawi']);
disp(['tersebut dalam bentuk aljabar.']); disp('a.
10*x + 14*y + z');
disp('b. 10*y + 14*x + z'); disp('c.
10*x + 14*y'); disp('d. 10*x +
10*y'); A=14;
B=17;
C=4;
D=4;
E=3;
F=3;
syms x y z
a=10*x + 14*y + z; b=10*y +
14*x + z; c=10*x + 14*y;
d=10*x + 10*y; syms x y z
hasil=(A*x+B*y+C*z)-(D*x+E*y+F*z);
jawab=input('Masukkan jawaban anda: ');
if jawab==a
input('Jawaban anda benar');
else
input('Jawaban anda salah');
end
if jawab==a input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;
input(['Kunci jawaban: ',char(hasil),' a']);
end
disp(['3. Tentukan hasil perkalian dari 5x^2(6x - 3y)']); disp('a.
30*x^3 - 15*x*y');
disp('b. 30*x^2 - 15*x^2*y'); disp('c.
30*x^3 + 15*x^2*y'); disp( 'd. 30*x^3
- 15*x^2*y'); A=5;

B=6;
C=-3; syms x y
a=30*x^3 - 15*x*y; b=30*x^2 -
15*x^2*y; c=30*x^3 + 15*x^2*y;
d=30*x^3 - 15*x^2*y; syms x y
hasil=(a*x^2*6*x)+(a*x^2*-3*y);
jawab=input('Masukkan jawaban anda: ');
if jawab==d
input('Jawaban anda benar');
else
input('Jawaban anda salah');
end
if jawab==d input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;
input(['Kunci jawaban: ',char(hasil),' (d)']);
end
disp(['4. Bentuk aljabar pertama: 7x + 4y']);
disp(['Bentuk aljabar kedua: 8x - 6y']);
disp(['Hasil penjumlahan dari kedua bentuk aljabar di atas']);
disp(['adalah......']);
disp('a. 15x - 2y'); disp('b.
15x + 10y' ); disp('c. x -
2y'); disp( 'd. x + 10y');
A=7;
B=4;
C=8;
D=-6; syms x y
hasil=(A*x+B*y)+(C*x+D*y); jawab=input('Masukkan
jawaban anda: ');
if jawab==a
input('Jawaban anda benar');
else
input('Jawaban anda salah');
end
if jawab==a input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;
input(['Kunci jawaban: ',char(hasil),' a']);
end
disp(['5. Tentukan perkalian dari kedua bentuk aljabar
berikut:']);
disp(['Bentuk aljabar pertama: 7x^2 + 4y + 9']);
disp(['Bentuk aljabar kedua: 8x - 6y']);
disp('a. 15x^3 + 56x^2y + 32x - 24y^2 + 72x - 2y');

disp('b. 56x^3 - 42x^2y + 32yx - 24y^2 + 72x - 54y' );


disp('c. 56x^3 - 42x^2 +32y - 24y^2 + 72x - 54y'); disp( 'd.
56x^2 - 42x + 32yx - 24y^2 + 72x - 54y'); A=7;
B=4;
C=9;
D=8;
F=-6; syms x y

hasil=(A*x^2*D*x)+(A*x^2*F*y)+(B*y*D*x)+(B*y*F*y)+(C*D*x)+(C*F*y);
jawab=input('Masukkan jawaban anda: ');
if jawab==b
input('Jawaban anda benar');
else
input('Jawaban anda salah');
end
if jawab==b input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;
input(['Kunci jawaban: ',char(hasil),' b']);
end
disp(['6.Bang Toyib memiliki dua jenis hewan ternak, yaitu sapi dan
ayam']);
disp([' Banyaknya sapi dan ayam yang dimiliki pak Toyib secara
berturut-turut']);
disp([' adalah 27 sapi dan 1.500 ayam. Seluruh sapi dan ayam tersebut
akan']);
disp([' dijual kepada seorang pedagang ternak. jika harga satu sapi
dinyatakan']);
disp([' dengan x rupiah dan satu ayam dinyatakan dengan y
rupiah,']);
disp([' Tuliskan bentuk aljabar harga hewan ternak pak
Toyib!']);
disp(['x = harga seekor sapi']); disp(['y
= harga seekor ayam']); disp(['a. 1500x +
27y']); disp(['b. 27x + 1500y']);
disp(['c. 27 + 1500' ]); disp(['d. x +
y']); hasil=27*x+1500*y;
jawab=input('Masukkan jawaban anda ===>'); if
jawab==a
input('Jawaban Anda Benar');
else
input('Jawaban Anda Salah');
end
if jawab==a input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;

input(['kunci jawaban : ',char(hasil),' (a)']);


end
disp(['7.Tentukan hasil pengurangan operasi bentuk aljabar
berikut:']);
disp([' Bentuk aljabar pertama: x^2 + 13x - 30' ]); disp(['
Bentuk aljabar kedua: 5x^2 -7x - 5']); disp(['a. -4x^2 + 20x
- 25']);
disp(['b. 2x^2 - 10x - 25']);
disp(['c. x^2 - 20x + 10']); disp(['d.
4x^2 + 10x - 30']); a=1;
b=13; c=-30;
d=5; e=-7; f=-
5;
hasil=(a*x^2-d*x^2)+(b*x-e*x)+(c-f);
jawab=input('Masukkan jawaban anda ===>');
if jawab==a
input('Jawaban Anda Benar');
else
input('Jawaban Anda Salah');
end
if jawab==a input('skor +10');
k=k+1;
else
input('skor -5'); s=s+1;
input(['kunci jawaban : ',char(hasil),' (a)']);
end
disp(['8.Tentukan hasil penjumlahan operasi bentuk aljabar
berikut:']);
disp([' Bentuk aljabar pertama: 16x - 12y + 4']); disp(['
Bentuk aljabar kedua: 5x - 9y + 2z']); disp(['a. 11x + 21y
- z + 4']);
disp(['b. 2x - 11y - z + 2']); disp(['c.
21x - 21y + 2z + 4']); disp([ 'd. 21x +
21y - 2z - 2']); a=16;
b=-12; c=4;
d=5; e=-9; f=2;
hasil=(a*x+b*y)+(d*x+e*y+f*z)+(c);
jawab=input('Masukkan jawaban anda ===>');
if jawab==c
input('Jawaban Anda Benar'); else
input('Jawaban Anda Salah');
end
if jawab==c input('skor +10');
k=k+1;
else

input('skor -5'); s=s+1;


input(['kunci jawaban : =',char(hasil),' (c)']);
end
t=(k*10)-(s*5) disp('
--------------------------------------------------------
------');
disp('*********************** SELAMAT
****************************');
disp(nama);
disp(['nilai sementara anda: ',num2str(t)]);
end
n=input('Masukkan Pilihan Anda: '); k1=0;
s1=0; if n==2
disp(['9. Tentukan perkalian dari kedua bentuk aljabar
berikut:']);
disp(['Bentuk aljabar pertama: 2x + 4y + 9']);
disp(['Bentuk aljabar kedua: x - 3y + 11']); a=2;
b=4;
c=9;
d=1; f=-3; g=11;
syms x y

hasil=(a*x*d*x)+(a*x*f*y)+(a*x*g)+(b*y*d*x)+(b*y*f*y)+(b*y*g)+(c*d
*x)+(c*f*y)+(c*g);
j=input( 'Masukkan jawaban anda: '); if
j==hasil
input('jawaban Anda Benar');
else
input('Jawaban Anda Salah');
end
if j==hasil
input('skor +10'); k1=k1+1;
else
input('skor -5'); s1=s1+1;
input(['Kunci jawaban: ',char(hasil)]);
end
disp(['10. Hasil penjumlahan dari bentuk aljabar pertama: 5x + 10y -
2z']);
disp(['dan bentuk aljabar kedua: 7x - 5y + 9z adalah....']); a=5;
b=10; c=-2;
d=7; e=-5;
f=9;
syms x y z hasil=(a*x+b*y+c*z)+(d*x+e*y+f*z);
j=input('Masukkan jawaban anda: ');

if j==hasil
input('Jawaban Anda Benar');
else
input('Jawaban Anda Salah');
end
if j==hasil
input('skor +10'); k1=k1+1;
else
input('skor -5'); s1=s1+1;
input(['Kunci jawaban: ',char(hasil)]);
end
u=(10*k1)-(s1*5)
disp(['nilai essay anda: ',num2str(u)]);
nilai=t+u
disp('--------------------------------------------------------
---');
disp('************************ SELAMAT
*************************')
disp(nama);
disp(['nilai total anda: ',num2str(nilai)]);
end
n=input( 'Masukkan Pilihan Anda: '); if n==3
disp('======= TERIMAKASIH TELAH MENGGUNAKAN PROGRAM KAMI
======='); else
disp('Maaf, Pilihan yang anda maksud tidak ada');
end

Anda mungkin juga menyukai