IDENTITAS KEPEMILIKAN
Nama : NIM : Kelas : No HP :
TABEL KONTROL PENILAIAN PERKULIAHAN
Kehadiran Kerapian Terlambat
Penugasan (Latihan)
Keaktifan Quis
UTS UAS
KATA PENGANTAR
Assalamu’alaikum Wr Wb
Alhamdulillah, segala puji hanya milik Allah SWT yang senantiasa memberikan kita nikmat-Nya yang tak terhingga, sehingga bahan ajar “Dasar-dasar Pemgrograman Komputer” ini bisa diselesaikan dengan baik. Harapan penulis, bahan ajar ini bisa digunakan dengan baik dan bermanfaat bagi mahasiswa baik saat perkuliahan maupun pengembangan kemampuan matematika komputasi ke depannya.
Bahan ajar ini dibagi menjadi 3 bagian:
1. Command Windows. Mahasiswa dihadapkan pada layar kerja dan contoh penyelesaian konsep/persoalan matematika menggunakan bahasa dasar Matlab.
2. M-File/Editor. Mahasiswa diajarkan membuat sebuah scribs dari algoritma pemrograman untuk menyelesaikan sebauh konsep matematika menggunakan struktur urut, percabangan, dan perulangan.
3. Guide. Mahasiswa diajarkan cara membuat tampilan desain form menggunakan atribut dan tool yang dimiliki oleh matlab. M-file yang sudah tersimpan akan dilajutkan ke pembuatan guide agar penyelesaian lebih efisien efektif, dan menarik.
Adapun konsep matematika yang diajarkan terdiri dari Teori Bilangan, Kalkulus, Matematika Diskrit, dan Statistika.
Semoga bahan ajar ini bermanfaat.
Mataram, 19 Oktober 2015.
Dosen Pengampuh,
Syaharuddin, S.Pd., M.Si NIDN. 0801018801
“Command Windows”
Tujuan Perkuliahan:
1. Mahasiswa memahami konsep dasar penggunaan Command Windows.
2. Mahasiswa mampu menggunakan Command Windows dalam menyelesaikan persoalan yang berkaitan dengan konsep system bilangan, matriks, grafik dan operasi fungsi, serta kalkulus (limit, turunan, dan integral.
3. Mahasiswa mampu mengembangkan bahasa dasar pemrograman dalam menyelesaikan masalah matematika
1.1 Matematika Diskrit
A. Sistem Bilangan
Sistem bilangan merupakan konsep awal dalam Bab ini yang akan diselesaikan di Command Windows. Adapun operator matematika di Command Windows Matlab dijelaskan pada Tabel 1 berikut.
Matematika Matlab
+ +
- -
x *
: /
Pangkat ^ Akar sqrt
Sisa Mod Mutlak abs
Contoh penggunaan operator matematika pada Command Windows sebagai berikut.
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Menulis 10 bilangan asli pertama >> A=[1:10]
A =
1 2 3 4 5 6 7 8 9 10
Operasi penjumlahan >> 2+3 ans = 5 Operasi pengurangan >> 2-3 ans = -1 Operasi perkalian >> 2*3 ans = 6 Operasi pembagian >> 2/3 ans = 0.6667
Sisa (modulo) >> mod(3,2)
ans = 1
Akar >> sqrt(3)
ans = 1.7321
Pangkat >> 2^3
ans = 8
“Command Windows”
Factorial: 3! >> factorial(3)
ans = 6
Memformat pecahan decimal ke biasa >> format rat
>> 0.375 ans = 3/8 Memformat pecahan biasa ke decimal >> format short
>> 7/9 ans = 0.7778
>> format long
>> 7/9 ans =
0.777777777777778 FPB bilangan 23 dan 45 >> gcd(23,45)
ans = 1
KPK bilangan 23 dan 45 >> 23*45/gcd(23,45) ans =
1035
B. Himpunan
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Mendefinisikan himpunan A
(bilangan asli kurang dari 11) dan B (bilangan ganjil kurang dari 20)
>> A=[1:10]
A =
1 2 3 4 5 6 7 8 9 10
>> B=[1:2:20]
B =
1 3 5 7 9 11 13 15 17 19
Kardinal A dan Kardinal B >> length(A) ans =
10
>> length(B) ans =
10
Banyaknya himpunan bagian A >> 2^length(A) ans =
1024
A gabungan B >> union(A,B)
ans =
Columns 1 through 10
1 2 3 4 5 6 7 8 9 10
Columns 11 through 15
11 13 15 17 19
A irisan B >> intersect(A,B)
ans =
1 3 5 7 9 A selisih B (A – B) >> setdiff(A,B)
ans =
2 4 6 8 10 B selisih A (B – A) >> setdiff(B,A)
ans =
11 13 15 17 19 A beda setangkup B >> setxor(A,B)
“Command Windows”
ans =
2 4 6 8 10 11 13 15 17 19
Menulis anggota dalam bentuk huruf
>> A=['a','b','c','d','e']
A = abcde
>> B=['a','e','i','o','u']
B = aeiou
>> union(A,B) ans =
abcdeiou
C. Logika
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Membuat pernyatan p dan q >> p=[1 1 0 0]'
p = 1 1 0 0
>> q=[1 0 1 0]' q =
1 0 1 0
Negasi p >> ~p
ans = 0 0 1 1
>> not(p) ans = 0 0 1 1 Konjungsi (p dan q) >> p&q ans = 1 0 0 0
>> and(p,q) ans =
1 0 0 0 Disjungsi (p atau q) >> p|q ans = 1 1
“Command Windows”
1 0
>> or(p,q) ans = 1 1 1 0
D. Graph
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Menulis matrik asal, tujuan,
dan jarak
>> Asal=[4 6 2 5 6 3 5 1 2 1 4];
>> Tujuan=[1 2 3 3 3 4 4 5 5 6 6];
>> Jarak=[45 41 51 32 29 15 36 21 32 99 38];
Menulis matriks arah >> G=sparse(Asal,Tujuan,Jarak) G =
(4,1) 45 (6,2) 41 (2,3) 51 (5,3) 32 (6,3) 29 (3,4) 15 (5,4) 36 (1,5) 21 (2,5) 32 (1,6) 99 (4,6) 38 Menggambar grafik praph
berarah
>>view(biograph(G,[],'Showweights','on'))
Menulis matriks lintasan terpendek
>> graphallshortestpaths(G) ans =
0 136 53 57 21 95 111 0 51 66 32 104 60 94 0 15 81 53 45 79 67 0 66 38 81 115 32 36 0 74 89 41 29 44 73 0
“Command Windows”
1.2 Aljabar Linier: Matriks
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Mendefinisikan matriks A & B
dengan ordo 3 x 3
>> A=[2 3 4; -2 3 0; 1 -1 3]
A =
2 3 4 -2 3 0 1 -1 3
>> B=[5 6 1; -1 0 2; 2 1 7]
B =
5 6 1 -1 0 2 2 1 7
A + B >> A+B
ans =
7 9 5 -3 3 2 3 0 10
A – B >> A-B
ans =
-3 -3 3 -1 3 -2 -1 -2 -4
B – A >> B-A
ans =
3 3 -3 1 -3 2 1 2 4
A x B >> A*B
ans =
15 16 36 -13 -12 4 12 9 20
Det (A) >> det(A)
ans = 32
Det (B) >> det(B)
ans = 55.0000
Transfose A >> A'
ans =
2 -2 1 3 3 -1 4 0 3
Invers A >> inv(A)
ans =
0.2813 -0.4063 -0.3750 0.1875 0.0625 -0.2500 -0.0313 0.1563 0.3750 Invers (A x B) >> inv(A*B)
ans =
-0.1568 0.0023 0.2818 0.1750 -0.0750 -0.3000 0.0153 0.0324 0.0159 A3 = A x A x A >> A^3
ans =
2 19 68 -34 -13 -64 33 -1 67
“Command Windows”
Setiap entri A pangkat 3 >> A.^3 ans =
8 27 64 -8 27 0 1 -1 27 Perkalian dengan konstanta >> 2*A-4*B
ans =
-16 -18 4 0 6 -8 -6 -6 -22 Menghitung nilai eigen dari A >> eig(A)
ans =
1.7773 + 2.0099i 1.7773 - 2.0099i 4.4454 Menentukan eigen value dan
vector eigen dari A
>> [v e]=eig(A) v =
0.7304 0.7304 0.4213 0.3227 + 0.5305i 0.3227 - 0.5305i -0.5829 -0.2827 - 0.0309i -0.2827 + 0.0309i 0.6948 e =
1.7773 + 2.0099i 0 0 0 1.7773 - 2.0099i 0 0 0 4.4454 Menyimpan matriks A ke Ms
Excell
>> xlswrite('Matrik A',A)
Membuka file matriks A dari Ms Excell
>> xlsread('Matrik A','sheet1') ans =
2 3 4 -2 3 0 1 -1 3
1.3 Statistika: Ukuran Pemusatan
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Mendefinisikan data >> Data=[56 30 25 54 34 56 78 90 87 65]
Data =
56 30 25 54 34 56 78 90 87
Rata-rata >> mean(Data)
ans = 57.5000
Median >> median(Data)
ans = 56
Standar Deviasi >> std(Data) ans =
23.0567
“Command Windows”
Varians >> var(Data)
ans = 531.6111 Mengurutkan dari yang terkecil >> sort(Data)
ans =
25 30 34 54 56 56 65 78 87 90
1.4 Grafik dan Operasi Fungsi
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Definisikan variable x >> syms x
Definisikan fungsi f(x) >> f=x^2-3*x-4 f =
x^2 - 3*x - 4 Definisikan fungsi g(x) >> g=x-3
g = x - 3
Menggambar f(x) >> ezplot(f)
>> grid on
-6 -4 -2 0 2 4 6
-10 0 10 20 30 40 50
x x2 - 3 x - 4
Menggambar g(x) >> ezplot(g)
>> grid on
-6 -4 -2 0 2 4 6
-10 -8 -6 -4 -2 0 2 4
x x - 3
Menggambar f(x) dan g(x) >> hold off
>> ezplot(f)
>> hold on
>> ezplot(g)
>> grid on
“Command Windows”
-6 -4 -2 0 2 4 6
-10 -8 -6 -4 -2 0 2 4
x x - 3
Substitusi 3 ke f(x) atau f(3) >> subs(f,3) ans =
-4 f(x) + g(x)
pretty = mempercantik penulisan
>> f+g ans =
x^2 - 2*x - 7
>> pretty(f+g) 2
x - 2 x - 7
f(x) - g(x) >> f-g
ans =
x^2 - 4*x - 1
f(x) . g(x) >> pretty(f*g)
2
- (x - 3) (- x + 3 x + 4)
f(x) / g(x) >> pretty(f/g)
2
- x + 3 x + 4 - --- x - 3
f o g (x) >> subs(f,g)
ans =
(x - 3)^2 - 3*x + 5
g o f (x) >> subs(g,f)
ans =
x^2 - 3*x - 7
f o g (-1) >> subs(f,subs(g,-1))
ans = 24 Invers dari g(x)
Catatan: invers = 1/g(x)
>> inv(g) ans = 1/(x - 3) Mencari solusi f(x) >> solve(f)
ans = 4 -1
>> factor(f) ans =
(x + 1)*(x - 4)
Menyederhanakan >> simplify(f/g)
ans =
x - 4/(x - 3)
>> simplify(g/f)
“Command Windows”
ans =
4/(5*(x + 1)) + 1/(5*(x - 4))
>> pretty(simplify(g/f)) 4 1 --- + --- 5 (x + 1) 5 (x - 4)
1.5 Kalkulus: Limit, Turunan, Integral
Perintah Matematika Sintaksis/Scribs dan Hasil/Output Definisikan variable x dan f(x) >> syms x
>> f=x^2-3*x-4;
Limit f(x) mendekati 2 >> limit(f,2) ans =
-6
Turunan pertama dan kedua f(x) >> diff(f) ans = 2*x - 3
>> diff(diff(f)) ans =
2
Gradien dengan x = 2 >> t=diff(f) t =
2*x - 3
>> m=subs(t,2) m =
1
Nilai f(x) dengan x = a >> y=subs(f,2) y =
-6
Persamaan garis singgung >> p=m*(x-2)+y p =
x - 8 Gambar garis singgung >> hold on
>> ezplot(f)
>> hold off
>> ezplot(f)
>> hold on
>> ezplot(p)
>> grid on
-6 -4 -2 0 2 4 6
-14 -12 -10 -8 -6 -4 -2
x x - 8
“Command Windows”
Menambahkan legend, judul, dan label >> legend('Persamaan Garis Singgung');
>> xlabel('Sumbu x')
>> ylabel('Sumbu y')
>> title('Aplikasi Turunan')
-6 -4 -2 0 2 4 6
-14 -12 -10 -8 -6 -4 -2
Sumbu x Aplikasi Turunan
Sumbu y
Persamaan Garis Singgung
Integral f(x) >> int(f)
ans =
-(x*(- 2*x^2 + 9*x + 24))/6
>> pretty(int(f)) 2
x (- 2 x + 9 x + 24) - --- 6
Integral f(x) dengan batas 0 sampai 5 >> int(f,0,5) ans =
-95/6 Menggambar luas daerah f(x) dengan
domain tertentu
x=[0:0.25:5];
>> L=subs(f,x);
>> area(L)
>> grid on
2 4 6 8 10 12 14 16 18 20
-8 -6 -4 -2 0 2 4 6
Menentukan luas daerah f(x) dengan batas 0 sampai 5.
>> L=abs(double(int(f,0,5))) L =
15.8333
“Command Windows”
1. Isilah sintaksis dan ouput dari table berikut
Perintah Matematika Sintaksis dan Output
Definisikan matriks A ordo 3 x 4 ……….
Definisikan matriks B ordo 5 x 2 ……….
A x B ……….
2A – 4B ……….
Ambil elemen matrik A baris ke-2 ……….
Ambil elemen matrik A kolom ke-3
Ambil elemen matrik A baris terakhir ……….
Ambil elemen matrik B baris ke-3 ……….
Ambil elemen matrik B kolom ke-1 ……….
Ambil elemen matrik B kolom terakhir ……….
Menghapus baris ke-2 pada matriks A ……….
Menghapus kolom ke-1 pada matriks B ……….
2. Gambarlah grafik persamaan garis singgung pada kurva f(x) = x2 – 5x – 6 dengan absis -3.
3. Gambarlah luas daerah integral pada fungsi f(x) = 2x2 – 4x + 7 dengan batas -3 sampai 3.
4. Gambarlah graph berarah dari titik asal ke titik tujuan berdasarkan table berikut ini.
No Asal Tujuan Jarak No Asal Tujuan Jarak
1 4 1 45 7 5 4 36
2 6 2 41 8 1 5 21
3 2 3 51 9 2 5 32
4 5 3 32 19 1 6 99
5 6 3 29 11 4 6 38
6 3 4 15
5. Temukan scribs untuk menggambar grafik berikut.
-6 -4 -2 0 2 4 6
-15 -10 -5 0 5
Domain f(x) = x2 - 7x + 6, g(x) = 2x-5
Range
Grafik f(x) dan g(x)
-6 -4
-2 0
2 4
6 -15
-10 -5
0 5 -1
0 1
f(x) = x2 - 7x + 6, g(x) = 2x-5
Domain Range
Grafik f(x) dan g(x)
Tugas 1
Untuk menambah pemahaman Anda kerjakan tuagas berikut ini:
“M-File”
TUJUAN PERKULIAHAN:
1. Mahasiswa mampu memahami macam-macam struktur bahasa pemrograman di Matlab.
2. Mahasiswa mampu merancang algoritma pemrograman dalam menyelesaikan masalah matematika
PENGANTAR:
M-file atau sering disebut editor merupakan komponen kedua dari matlab setelah Anda bermain di Command Windows. Di Command Wiondows Anda menulis scribs langsung output, tapi di editor Anda menulis scribs kemudian input dan output akan ditampilkan di Command Windows.
Belajar menulis scribs di editor akan mempermudah dalam proses pembuatan guide pada bagian yang akan Anda pelajari berikutnya.
Jika Anda ingin membuat sebuah m-file. Anda tinggal ketik kata edit di Command Windows, kemudian di enter, maka akan muncul layar seperti berikut.
>> edit
Gambar 2.1 Editor kosong.
Di editor, Anda akan membuat scribs (sintaksis) dari sebuah program aplikasi. Nah, Anda akan bertemu dengan kasus atau permasalahan yang berkaitan dengan 3 struktur bahasa, yakni:
1. Struktur urut, yaitu menyelesaikan masalah matematika dengan scribs terurut, tanpa ada kontrol.
2. Struktur percabangan, yaitu struktur bahasa dengan adanya kontrol seperti if … elseif … else, dan switch … case of.
3. Struktur perulangan, yaitu struktur bahasa dengan adanya kontrol seperti for dan while.
Ketiga struktur ini terkadang terpisah penggunaannya, terkadang juga digunakan secara bersamaan dalam membangun sebuah scribs.
“M-File”
2.1 Struktur Urut
Struktur urut merupakan struktur paling mudah dalam bahasa pemrograman. Karena tidak adanya control yang harus dilakukan pada penulisan scribs (sintaksis). Pada dasarnya, sebuah scribs terdiri dari beberapa langkah, yakni:
1. Definisikan variable inputan 2. Menulis perintah/rumus 3. Menulis output
Pada kegiatan 1 ini, Anda akan membuat sebuah scribs sederhana dengan struktur urut yakni menghitung luas dan keliling persegi panjang. Silahkan Anda buka editor.
Perintah matematika Perintah matlab
Membersihkan command windows clear all;
clc;
Menulis identitas/judul scribs disp = display = menunjukkan tulisan di Command Windows.
disp('Menghitung Luas dan Keliling Persegi Panjang');
disp('Programmer: Syaharuddin');
Input nilai panjang dan keliling p=input('Panjang = ');
l=input('Lebar = ');
Menulis rumus Luas=p*l;
Keliling=2*(p+l);
Menulis output disp(['Luas = ',num2str(Luas)]);
disp(['Keliling = ',num2str(Keliling)]);
Adapun sintaksis keseluruhan seperti berikut.
Setelah selesai Anda ketik scribs, silahkan tekan tombol eksekusi atau running yakni atau bisa juga tekan F5 di keyboard. Proses ini untuk menyimpan scribs Anda terlebih dahulu.
Buatlah folder bari dengan nama “Kumpulan M-File”, kemudian simpalah m-file Anda dengan nama “Persegi_Panjang” (ingat!, tidak boleh spasi), kemudian klik OK, maka akan muncul seperi berikut.
KEGIATAN 1
Menghitung Luas dan Keliling Persegi Panjang“M-File”
Silahkan Anda input nilai panjang, kemudian enter input lagi nilai lebar, kemudian enter lagi, maka akan keluar hasil luas dan keliling, seperti berikut.
Jika Anda ingin menginput nilai yang baru, silahkan ketik kembali nama m-file tadi, yakni
“Persegi_Panjang”, kemudian enter. Jika lupa nama m-file, Anda bisa ke editor lagi kemudian klik tombol running (F5).
Buatlah scribs untuk topic-topik berikut ini.
1. Luas dan Keliling Bangun Datar:
a. Lingkaran
b. Segi Empat: Persegi, Belah Ketupat, Layang-layang, Trapesium, Jajar Genjang
c. Segitiga: Segitiga siku-siku, Segitiga sama kaki, segitiga sama sisi, segitiga sembarang 2. Luas permukaan dan volume bangun ruang sisi datar:
a. Kubus dan Balok
b. Limas segiempat beraturan dan limas segitiga beraturan c. Prisma dengan bentuk alas persegi panjang
3. Menentukan suku ke-n dan jumlah suku ke-n dari:
a. Barisan Deret Aritmatika b. Barisan Deret Geometri
4. Menentukan nilai turunan pertama dan integral dari sebuah fungsi.
5. Menentukan nilai ukuran pemusatan (mean, median, modus, standar deviasi, dan varians) dari beberapa data.
6. Menentukan hasil operasi:
a. Operasi matriks: A + B, A – B, B – A, det(A), det(B), Invers (A), & Invers (B).
b. Operasi Fungsi: f(x) + g(x), f(x) - g(x), f(x) / g(x), f(x) . g(x), fog(x), gof(x).
Tugas 2.1
Untuk menambah pemahaman Anda kerjakanlah tugas berikut ini.
“M-File”
2.2 Struktur If … elseif… else … end
Struktur if digunakan dalam penyelesaian masalah yang melibatkan dua premis (pernyataan) yang saling bergantung. Dimana satu pernyataan sebagai akibat dan satu lagi sebagai sebab.
Contoh sederhana “Jika Aiman mendapat nilai 85, maka dia lulus”. Dalam kasus ini maka dikonstruksi model bahasa pemrogramannya sebagai berikut.
If sebab akibat else akibat end
Contoh:
NA=input(‘NA = ‘) If NA>=85
A=’Lulus’
else A=’Tidak Lulus’
end
Bentuk umum persamaan kuadrat yakni f(x) = ax2 + bx + c.
Menentukan jenis akan berarti menentukan nilai diskriminan, D = b2 – 4ac, sehingga diperoleh pembagian seperti berikut:
- D ≥ 0, maka akar-akarnya real.
- D > 0, maka akar-akarnya real berlainan.
- D = 0, maka akar-akarnya real kembar/sama - D < 0, maka akar-akarnya imajiner/khayal.
Perintah matematika Perintah matlab
Membersihkan command windows clear all;
clc;
Menulis identitas/judul scribs disp('Menentukan Jenis Akar-akar');
disp('Programmer: Syaharuddin');
Menulis input koefisien a, b, c a=input('Koef. a = ');
b=input('Koef. b = ');
c=input('Koef. c = ');
Menulis rumus D dan akar-akar D=b^2-4*a*c;
x1=(-b+sqrt(D))/2*a;
x2=(-b-sqrt(D))/2*a;
Melakukan kontrol atas nilai D sekaligus menulis output scribs
if D>=0
disp(['D = ',num2str(D)]);
disp('Jenis Akar Real');
disp(['x1 = ',num2str(x1)]);
disp(['x2 = ',num2str(x2)]);
else
disp(['D = ',num2str(D)]);
disp('Jenis Akar Imajiner');
disp(['x1 = ',num2str(x1)]);
disp(['x2 = ',num2str(x2)]);
end
KEGIATAN 2
Menentukan Jenis Akar-akar Persamaan Kuadrat“M-File”
Adapun scribs keseluruhan tertera di bawah ini. Setelah itu silahkan simpan dengan nama
“Persamaan_Kuadrat”. Silahkan lakukan inputan a, b, dan c kemudian enter. Berikut contohnya.
Buatlah scribs untuk topic-topik berikut ini.
1. Buatlah scribs untuk menentukan nilai akhir, grade dan keterangan kelulusan mahasiswa sesuai ketentuan berikut.
Inputan Persentase Nilai Akhir Grade Keterangan
Nilai Kehadiran 10% NA >= 80 A Sangat Baik
Nilai Tugas 15% NA >= 65 B Baik
Nilai Quis 20% NA >= 55 C Cukup
Nilai UTS 25% NA >= 45 D Tidak Baik
Nilai UAS 30% NA >= 0 E Sangat Tidak Baik
2. Pada scribs kegiatan 2 di atas, tambahkan sintaksis untuk menggambar grafik f(x) sehingga keluar output contoh seperti berikut.
Tugas 2.2
Untuk menambah pemahaman Anda kerjakanlah tugas berikut ini.
0 10 20 30 40 50
Menampilkan grafik setelah dirunning (enter)
“M-File”
2.3 Struktur For … end
Struktur berikutnya adalah for … end. Struktur ini termasuk struktur bahasa perulangan. Kalau struktur if hanya terpaut pada 1 kondisi sebagai syarat dan 1 kondisi sebagai akibat. Namun pada struktur for, perulangan akan terus dilakukan sampai akibat ditemukan. Adapun kontruksi struktur ini seperti berikut.
for i=awal:akhir perintah end
Contoh aplikasi struktur for digunakan dalam menentukan nilai factorial, simulasi limit, ketuntasan klasikal hasil belajar, barisan deret, dan sebagainya.
Konsep limit merupakan titik pangkal untuk menjelaskan turunan fungsi. Simulasi limit terdiri dari dua yakni limit kiri dan kanan. Persamaan simulasi limit seperti berikut.
) ( ) (
lim f x f c
c
x 
Contoh: lim 2 3 4 ( 2)2 3( 2) 4 4 6 4 6
2           
 x x
x
Silahkan tulis scribs simulasi limit kiri berikut:
clc;
clear all;
disp('===============================') disp('Program : Simulasi Limit Kiri') disp('Programer: Syaharuddin')
disp('===============================') syms x
f=input('f(x)= ');
c=input('c = ');
d=[c-10:0.25:c+10];
ezplot(f,d)
d=[c-10:0.25:c];
n=length(d);
fprintf('%5s %10s \n','x','f(x)') for i=1:n
hold on
plot(d(i),0,'.r') hold on
plot(d(i),subs(f,d(i)),'.r') legend('Simulasi Limit Kiri');
xlabel('Sumbu x');
ylabel('Sumbu y');
grid on pause(0.2)
fprintf('%8.2f %8.2f\n',d(i),subs(f,d(i)));
end
L=double(limit(f,c));
text(c,subs(f,c),[' <--- Limit = ',num2str(L)])
KEGIATAN 3
Simulasi Limit Kiri“M-File”
Silahkan tekan F5 untuk running sekaligus simpan dengan nama “Simulasi_Limit_Kiri”.
Kemudian simulasikan contoh soal di atas.
Lakukanlah simulasi fungsi berikut ini.
1. x x
x 7
lim 2
3 
 2. x
xlim sin
30
 3.
3 lim 5
2
1 
 x
x x
x
Menghitung ketuntasan klasikal adalah salah satu upaya yang dilakukan saat kegiatan belajar mengajar untuk mengetahui tingkat ketuntasan belajar di kelas. Biasanya, kegiatan ini dilakukan saat melakukan penelitian tindakan kelas (PTK). Seoranga siswa dikatakan lulus, jika nilainya lebih atau sama dengan KKM (Kriteria Ketuntasan Minimal). Kemudian dari siswa yang lulus tersebut baru bisa dihitung ketuntasan klasikal dengan persamaan:
%
100
 Jumlah Siswa Seluruhnya Lulus yang Siswa Jumlah
Klasikal Jadi, inputan dalam simulasi ini adalah:
1. Nilai Siswa 2. Nilai KKM
Sedangkan outputnya adalah:
1. Siswa yang tuntas dan tidak tuntas 2. Ketuntasan klasikal
3. Grafik ketuntasan
KEGIATAN 4
Simulasi Ketuntasan Klasikal Belajar Siswa“M-File”
Silahkan ketik scribs ketuntasan klasikal berikut. Kemudian simpan dengan nama
“Ketuntasal_Klasikal”.
clc;clear all;
disp('====================================================') disp('Program : Simulasi Ketuntasan Klasikal Nilai Siswa') disp('Programer: Syaharuddin')
disp('====================================================') x=input('Data = ');
k=input('KKM = ');
n=length(x);
ts=[];
tdk=[];
fprintf('%5s %10s\n',' Nilai',' Keterangan') for i=1:n;
if x(i)>=k t(i)=1;
ts=[ts i];
fprintf('%8.2f %8.2f\n',x(i),t(i));
else
t(i)=0;
tdk=[tdk i];
fprintf('%8.2f %8.2f\n',x(i),t(i));
end end
T=sum(t);
P=(T*100)/n;
disp('Ket: 1 = Tuntas, 2 = Tidak Tuntas') disp(['Hasil Analisis']);
disp(['1. Banyak Siswa = ',num2str(n)])
disp(['2. Siswa Tuntas = ',num2str(ts),', Jumlah = ',num2str(T)]) disp(['3. Ketuntasan Klasikal = ',num2str(P)])
disp(['4. Siswa Tidak Tuntas = ',num2str(tdk),', Jumlah = ',num2str(n-T)])
plot(x,'-*');
hold on
plot([1 n],[k k],'-r') grid on
xlabel('Nomor Absen Siswa') ylabel('Nilai Siswa')
title('Grafik Analisis Ketuntasan Hasil Belajar') legend(['Klasikal = ',num2str(P),'%'])
Setelah Anda simpan, lakukanlah simulasi dengan data berikut ini.
Data 65 67 65 78 76 89 90 98 87 78 88 99 65 45 67 78 77 66 65 76 87 98 67 54 83 54 83 KKM 65
Dalam melakukan inputan nilai, selalu dimulai dengan kurung siku “[“, kemudian ditutup dengan kurung siku juga “]”.
Contoh:
Data = [65 67 65 78 76 89 90 98 87 78 88 99 65 45 67 78 77 66 65 76 87 98 67 54 83 54 83]
“M-File”
====================================================
Program : Simulasi Ketuntasan Klasikal Nilai Siswa Programer: Syaharuddin
====================================================
Data = [65 67 65 78 76 89 90 98 87 78 88 99 65 45 67 78 77 66 65 76 87 98 67 54 83 54 83]
KKM = 65
Nilai Keterangan 65.00 1.00 67.00 1.00 65.00 1.00 78.00 1.00 76.00 1.00 89.00 1.00 90.00 1.00 98.00 1.00 87.00 1.00 78.00 1.00 88.00 1.00 99.00 1.00 65.00 1.00 45.00 0.00 67.00 1.00 78.00 1.00 77.00 1.00 66.00 1.00 65.00 1.00 76.00 1.00 87.00 1.00 98.00 1.00 67.00 1.00 54.00 0.00 83.00 1.00 54.00 0.00 83.00 1.00
Ket: 1 = Tuntas, 2 = Tidak Tuntas Hasil Analisis
1. Banyak Siswa = 27
2. Siswa Tuntas = 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20 21 22 23 25 27, Jumlah = 24
3. Ketuntasan Klasikal = 88.8889
4. Siswa Tidak Tuntas = 14 24 26, Jumlah = 3
>>
Lakukan simulasi dengan data berikut ini.
Data 65 67 65 78 87 98 67 76 89 99 65 72 71 72 73 84 85 76 54 87 93 92 90 100 98 94 98 KKM 85
Catatan:
KKM sebesar 65 sudah ditentukan secara nasional, sedangkan setiap Satuan Tingkat Pendidikan (masing-masing sekolah) boleh menentukan KKM yang lebih tinggi dari itu.
0 5 10 15 20 25 30
40 50 60 70 80 90 100
Nomor Absen Siswa
Nilai Siswa
Grafik Analisis Ketuntasan Hasil Belajar
Klasikal = 88.8889%
“M-File”
Buatlah scribs untuk topic-topik berikut ini.
1. Buatlah scribs untuk melakukan Simulasi limit kanan. Berikut contoh tampilan output.
2. Simulasi barisan Fibonacci. Berikut contoh tampilan output.
Tugas 2.3
Untuk menambah pemahaman Anda kerjakanlah tugas berikut ini:
“M-File”
2.4 Struktur While … end
Struktur while end digunakan untuk melakukan kontrol dengan syarat tertentu. Berbeda dengan struktur for. Kalau struktur for pengulangan dilakukan tergantung dari syarat yang diberikan, misalnya dari 1 sampai n, jika sudah sampai n maka iterasi dihentikan. Sedangkan struktur while, iterasinya tidak bisa ditentukan, program sendiri yang akan menemukan sampai kapan iterasi akan berhenti tergantung dari syarat yang diberikan.
Salah satu contoh kasus yang menggunakan struktur while yakni “Simulasi Algoritma Euclid”.
Adapun persamaan Algoritma Euclid sebagai berikut.
b = p1.a + s1 a = p2. s1 + s2 s1 = p3.s2 + s3
…
sn = p(n+2).s(n+1) + 0
Dari konsep di atas, a dan b (a < b) adalah inputan. Sedangkan s = sisa, p = pembagi. Jadi, iterasi akan berhenti jika sisa (s) = 0. Tujuan algoritma ini adalah mencari FPB, sedangkan KPK nantinya akan diperoleh dengan persamaan:
PFB b KPK a
Silahkan tulis scribs Algoritma Euclid beriku ini.
clc;
clear all;
disp('=====================================') disp('Program : Simulasi Teorema Eucliden') disp('Programer : Syaharuddin')
disp('=====================================') a=input('a = ');
b=input('b = ');
t=[a b];
if b>0&a>0 while a~=0
r=mod(b,a);
h=(b-r)/a;
disp([num2str(b),' = ',num2str(h),' x ',num2str(a),' + ',num2str(r)])
b=a;
a=r;
end
disp(['Jadi FPB (',num2str(t(1)),',',num2str(t(2)),') = ',num2str(b)]);
else b<0&a<0
disp('Maaf Salah Input');
end
KEGIATAN 5
Menentukan FPB & KPK: Algoritma Euclid“M-File”
Lakukan simulasi dengan bilangan a = 324 dan b = 431, maka akan siperoleh hasil seperti berikut.
Silahkan lakukan simulasi dengan bilangan-bilangan berikut, serta lengkapi tabel berikut.
Bilangan b Bilangan a FPB KPK
3454 3123
4234 3241
5423 4235
6758 6321
98765 8976
Buatlah scribs untuk topic-topik berikut ini.
Lakukan modifikasi pada scribs “Simulasi Algoritma Euclid” di atas sehingga nilai KPK juga dioutputkan. Perhatikan contoh berikut.
Tugas 2.4
Untuk menambah pemahaman Anda kerjakanlah tugas berikut ini:
Setelah Anda modifikasi, kemudian isilah tabel di atas pada kolom KPK.
“M-File”
2.5 Struktur Switch … Case
Struktur terakhir pada bagian ini adalah struktur switch … case. Struktur percabangan ini digunakan jika adanya pilihan kasus atau program aplikasi. Jadi, Anda akan membuat beberapa pilihan dan dalam setiap pilihan terdapat scribs untuk masing-masing program aplikasi.
Misalnya, Anda akan membuat scribs untuk barisan deret aritmatika dan geometri. Dimana masing-masing scribs inputannya adalah nilai suku pertama (a = U1), suku kedua (U2), dan urutan suku (n).
1. Barisan Deret Aritmatika
) ) 1 ( 2 2(
) 1 (
b n n a
Sn
b n a Un
dengan b = U2 – U1
2. Barisan Deret Geometri
1 1 ,
) 1 (
1 1 ,
) 1 (
1
 
 
 
 
 
r r r Sn a
r r r Sn a
ar Un
n n n
dengan r = U2 / U1
Tulislah scribs berikut.
clc;clear all;
disp('Program : Simulasi Barisan Deret');
disp('Programer : Syaharuddin');
disp('Pilihan:');
disp('1. Barisan Deret Aritmatika');
disp('2. Barisan Deret Geometri');
p=input('Pilihan = ');
disp('==============================================');
switch p case 1
a1=input('Suku ke-1 = ');
a2=input('Suku ke-2 = ');
n=input('n = ');
b=a2-a1;
disp(['Beda = ',num2str(b)]);
if n<1
disp('Tidak Terdefinisi');
else
t=[a1:b:n*b];
Un=a1+(n-1)*b;
Sn=(n/2)*(a1+Un);
disp(['Barisan: ',num2str(t)]);
disp(['Jadi, Un = ',num2str(a1),' + (',num2str(n),'-1) x ',num2str(b),' = ',num2str(Un)]);
disp(['Jadi, Sn = (',num2str(n),'/2) x (',num2str(a1),' + ',num2str(Un),') = ',num2str(Sn)]);
end case 2
KEGIATAN 6
Simulasi Barisan Deret Aritmatika & Geometri“M-File”
a1=input('Suku ke-1 = ');
a2=input('Suku ke-2 = ');
n=input('n = ');
r=a2/a1;
disp(['Rasio = ',num2str(r)]);
t=[a1:r:n*r];
Un=a1*(r^(n-1));
disp(['Barisan: ',num2str(t)]);
disp(['Jadi, Un = ',num2str(a1),' x
(',num2str(r),'^(',num2str(n),'-1) = ',num2str(Un)]);
if r>1
Sn=(a1*((r^n)-1))/(r-1);
disp(['Jadi, Sn = [',num2str(a1),' x
(',num2str(r),'^',num2str(n),'-1)]/',num2str(r),'-1 = ',num2str(Sn)]);
else r<1
Sn=(a1*(1-(r^n)))/(1-r);
disp(['Jadi, Sn = [',num2str(a1),' x (1-
',num2str(r),'^',num2str(n),')]/1-',num2str(r),' = ',num2str(Sn)]);
end end
Simpanlah scribs Anda dengan nama “Barisan_Deret”. Kemudian saat Anda running, maka akan muncul seperti berikut.
- Jika Anda tulis 1, maka Anda akan ke Barisan Deret Aritmatika - Jika Anda tulis 2, maka Anda akan ke Barisan Deret Geometri Silahkan tekan Enter, dan input nilai sesuai pada simulasi.
“M-File”
Buatlah scribs untuk topic-topik berikut ini.
Buatlah scribs untuk menggabungkan semua simulasi yang sudah Anda buat pada kegiatan 1 sampai kegiatan 5 sesuai ketentuan berikut.
Cabang/Pilihan Sub Cabang (Case) 1. Kalkulus 1. Simulasi Lmit Fungsi
2. Simulasi Turunan & Integral 3. Geometri 1. Bangun Datar
2. Bangun Ruang 4. Statistika 1. Distribusi Frekuensi
2. Ukuran Pemusatan 3. Ketuntasan Klasikal 4. Nilai Akhir Mahasiswa 5. Bilangan 1. Barisan Fibonacci
2. Barisan Deret 3. Algoritma Euclid 6. Aljabar 1. Persamaan Kuadrat
2. Operasi Fungsi 3. Operasi Matriks Contoh kontruksi scribs:
clc;clear all;
disp('Program : Simulasi Switch Case');
disp('Programer : Syaharuddin');
disp('Cabang:');
disp('Daftar Pilihan Cabang');
p=input('Pilihan = ');
disp('==============================================');
switch p case 1
disp('Sub Cabang');
q=input('Pilihan = ');
switch q case 1 scribs case 2 scribs end
case 2
disp('Sub Cabang');
q=input('Pilihan = ');
switch q case 1 scribs case 2 scribs end
case n end
Tugas 2.5
Untuk menambah pemahaman Anda kerjakanlah tugas berikut ini.
“M-File”
1. Buatlah scirbs untuk menggambar grafik seperti berikut ini.
Struktur Urut.
-6 -4 -2 0 2 4 6 8 10
-50 -40 -30 -20 -10 0 10
Domain Fungsi
Range Fungsi
f(x) = -1x2 + 3x + 4
Akar = -1 4
Grafik Fungsi Kuadrat
2. Buatlah scribs untuk membuat table distribusi frekuensi data menggunakan aturan Sturges.
Perhatikan contoh output berikut.
3. Buatlah scribs (program) dari:
a. Simulasi Konsep Pembagian (Struktur for)
b. Menentukan nilai factorial, permutasi dan kombinasi (Struktur for)
c. Penyelesaian Persamaan non Linier menggunakan Metode Biseksi, Regula Falsi, Newton Rhapson.
Uji Kompetensi
Untuk menambah pemahaman Anda kerjakanlah uji kompetensi berikut ini.
“GUIDE Matlab”
TUJUAN PERKULIAHAN:
1. Mahasiswa mampu membuat interface (guide) program aplikasi sederhana.
2. Mahasiswa mampu mengembangkan interface untuk berbagai struktur bahasa pemrograman dalam menyelesaikan persoalan matematika.
3. Mahasiswa mampu membuat MainMenu untuk menggabungkan program aplikasi.
4. Mahasiswa mampu membuat aplikasi project (type.exe) dari program aplikasi yang sudah digabung lewat MainMenu.
PENGANTAR
:
Guide adalah salah satu komponen dari Matlab untuk membuat interface (desain form) proses penyelesaian persoalan matematika yang lebih efisien dan menarik. Tidak seperti m-file hanya bisa bermain di Command Windows. Di sini, Anda akan membuat form (lembar kerja) untuk masing-masing program aplikasi dengan menggunakan atribut yang sudah disediakan oleh Matlab. Silahkan Anda buka Matlab dan ketikkan di Command Windows scrib berikut:
>> guide
Kemudian tekan Enter, maka akan muncul kotak dialog berikut ini.
Gambar 1. Tampilan Awal Guide
Pada gambar di atas terdapat 2 menu yaitu (1) Create New GUI yakni untuk membuat guide baru dan (2) Open Exixting GUI yakni untuk membuka guide yang sudah pernah Anda buat sebelumnya yang tersimpan dalam PC/Labtop Anda. Jika Anda ingin membuat Guide baru, silahkan pilih Blank GUI (Default), kemudian pilih OK. Maka akan muncul tampilan Guide kosong dan Anda siap membuat program aplikasi dengan menggunakan atribut yang ada. Untuk mengetahui nama-nama atribut, silahkan Anda jalankan kursor maka akan muncul dengan sendirinya hint dari masing-masing atribut. Anda cukup klik sekali di atribut, kemudian klik sekali lagi di lembar kerja maka atribut tersebut siap dipakai.
Sebelum lebih lanjut Anda membuat guide, silahkan simpan program aplikasi Anda terlebih dahulu dengan meng-klik tombol simpan pada guide atau klik File  Save  OK. Tapi ingat menulis nama porgram aplikasi tidak boleh spasi, harus menggunakan underscot (garis bawah) jika terdiri dari 2 kata atau lebih. Cara menyimpan yang lain adalah melakukan running dengan menekan tombol F5 di keyboard Labtop/PC Anda.
“GUIDE Matlab”
Gambar 2. Guide Kosong Adapun fungsi dari masing-masing atribut:
No Gambar Nama (Hint) Fungsi
1 Push Button Sebagai tombol (proses, hapus, keluar, dll)
2 Slider Untuk minimumkan tampilan jika butuh layar lebar
3 Radio Button Untuk meletakkan pilihan
4 Check Box Untuk meletakkan pilihan
5 Edit Text Sebagai tempat input atau output
6 Static Text Sebagai label / nama properti yang digunakan 7 Pop-up Menu Sama dengan Check Box, hanya pilihan di hint.
8 List Box Sebagai output dalam jumlah banyak string.
9 Toggle Button Sama dengan Push Button
10 Table Membuat output dalam bentuk tabel.
11 Axes Untuk menggambar grafik/histogram
12 Panel Untuk menyatukan atribut dalam satu kelompok
13 Button Group Untuk menyatukan atribut dalam satu kelompok 14 Activex Control Untuk memunculkan beberapa control penting.
Lembar Kerja Tempat menaruh atribut
Running Atribut
“GUIDE Matlab”
Adapun fungsi beberapa sub tollbar dari Guide Matlab sebagai berikut:
No Gambar Nama (Hint) Keyboard Fungsi
1 New Figure Ctrl+N Membuat guide baru
2 Open Pigure Ctrl+O Membuka guide yang sudah ada.
3 Save Pigure Crtl+S Menyimpan guide
4 Cut Ctrl+X Memindahkan atribut dalam guide
5 Copy Ctrl+C Mengkopi atribut dalam guide
6 Paste Ctrl+V Menempelkan atrbitu dalam guide
7 Redo Ctrl+Z Mengulang mundur perintah
8 Undo Ctrl+Y Mengulang maju perintah
9 Align Object - Mengatur tata letak atribut
10 Menu Editor - Membuat main menu (toolbar)
11 Tab Order Editor - Mengunci/mencari atribut
12 Tool Bar Editor - Menambahkan toolbar ke guide
13 Editor - Menampilkan editor
14 Property Inspector - Mengganti/mengatur karakter atribut
15 Object Browser - Mencari atrbitu
16 Run Figure Ctrl+T / F5 Melakukan eksekusi / running
Dalam pembuatan program aplikasi khususnya di bagian III ini, Anda akan banyak menggunakan atribut: Push Button, Static Text, Edit Text, ListBox, Axes, Table, dan GroupBox. Sedangkan untuk Tollbar yang sering akan digunakan adalah New, Save, Menu Editor, Tool Bar Editor, dan Run.
3.1 Struktur Urut
Struktur urut adalah struktur paling sederhana dalam bahasa pemrograman. Karena step dari struktur tediri dari:
1. Definisikan Fungsi/Variabel Inputan 2. Rumus (perintah)
3. Definisikan Output
Hal ini tidak seperti struktur yang lain harus melakukan kontrol terlebih dahulu.
Program Aplikasi : Grafik Fungsi
Atribut : StatisText (3), Edit Text (2), Push Button (3), Button Group (3), Axes (1)
Manfaat : Menggambar grafik pada interfal tertentu.
KEGIATAN 1
“GUIDE Matlab”
Langkah-langkah Kerja:
1. Desainlah guide seperti berikut:
2. Pilih tombol “Gambar F(x)” kemudian klik kanan, pilih View CallBacks  CallBacks, maka akan muncul m-file. Ketikkan scribs berikut ini.
3. Pilih tombol “Hapus” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
4. Pilih tombol “Keluar” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
5. Silahkan tekan F5 atau klik tombol running. Kemudian simulasikan fungsi berikut ini.
F(x) = x2 – 3x – 4
Batas = [-3:0.1:5] ; dibaca: Batas Cartesius dari -3 sampai 5 dengan delta x = 0.1
“GUIDE Matlab”
Maka akan tampil seperti berikut ini. (Perhatikan cara input fungsi dan interval).
6. Tampilkanlah Toolbar pada guide Anda agar bisa melakukan banyak modifikasi. Silahkan klik Toolbar Editor, maka akan muncul kotak dialog berikut.
7. Pilih item di Predefined Tools, kemudian klik Add, terakhir klik OK. Silahkan running program aplikasi Anda, kemudian lakukan simulasi dengan fungsi tadi.
“GUIDE Matlab”
8. Kemudian silahkan pilih Rotate 3D, klik pada grafik maka akan diperoleh output seperti berikut.
9. Silahkan lakukan simulasi dengan berbagai macam fungsi yang lain. Selamat mencoba.
“GUIDE Matlab”
Program Aplikasi : SPL dengan Metode Invers
Atribut : StatisText (1), Edit Text (1), Push Button (5), Table (1), ListBox (1) Manfaat : Menentukan solusi SPL menggunakan Metode Invers
Perhatikan gambar berikut. Kemudian aturlah komponen seperti pada gambar.
Langkah-langkah Kerja:
1. Desainlah guide seperti pada gambar di atas.
2. Pilih atribut “Edit1” kemudian klik kanan, pilih View CallBacks  CallBacks, maka akan muncul m-file. Ketikkan scribs berikut ini.
function edit1_Callback(hObject, eventdata, handles) n=str2double(get(handles.edit1,'String'))
M=ones(n,n+1)*nan;
set(handles.uitable1,'Data',M,'columnwidth',{25})
3. Pilih tombol “Keluar” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
p=questdlg('Yakin Anda Keluar?','Tutup Aplikasi','Ya','Tidak','default')
switch p
case{'Ya'}
delete(handles.figure1) end
KEGIATAN 2
“GUIDE Matlab”
4. Pilih tombol “Hapus” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
function pushbutton4_Callback(hObject, eventdata, handles) set(handles.listbox1,'string','');
set(handles.uitable1,'data','');
set(handles.edit1,'string','');
5. Pilih tombol “Simpan Data” kemudian klik kanan, pilih View CallBacks  CallBacks.
Ketikkan scribs berikut ini.
function pushbutton7_Callback(hObject, eventdata, handles) x=get(handles.listbox1,'String');
[file direktori]=uiputfile({'*.xls';'*.xlsx';'*.xlsm'},...
'Simpan Data ke File Ms Axcell');
eval([ 'cd ''' direktori ''';']);
xlswrite(file,x,'Matriks')
6. Pilih tombol “Load Data” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
function pushbutton3_Callback(hObject, eventdata, handles) [file direktori]=uigetfile({'*.xlsx'});
M=xlsread(file,-1);
[n m]=size(M) for i=1:m
E(:,i)=true;
end
set(handles.uitable1,'data',M,'ColumnWidth',{50},'ColumnEditable', E)
7. Pilih tombol “Hitung” kemudian klik kanan, pilih View CallBacks  CallBacks. Ketikkan scribs berikut ini.
function pushbutton2_Callback(hObject, eventdata, handles) M=get(handles.uitable1,'data');
A=M(1:end,1:end-1) B=M(:,end)
I=inv(A) x=I*B
tampilan={('Matriks ')};
tampilan=[tampilan;num2str(M)];
tampilan=[tampilan;{('Matriks A (Koefisien Variabel)')}];
tampilan=[tampilan;num2str(A)];
tampilan=[tampilan;{('Matriks B (Hasil)')}];
tampilan=[tampilan;num2str(B)];
tampilan=[tampilan;{('Matriks I')}];
tampilan=[tampilan;num2str(I)];
tampilan=[tampilan;{('Penyelesaian:')}];
tampilan=[tampilan;(x)];
set(handles.listbox1,'string',tampilan);
8. Klik kanan pada Table, kemudian pilih Table Property Editor. Buatlah kolom sebanyak 25 dengan meng-klik “Insert”, Width = 50, dan centang Editable. Silahkan klik “Apply” dan OK.
“GUIDE Matlab”
9. Silahkan tekan F5 atau klik tombol running. Kemudian simulasikan SLP berikut ini.
2x – 3y + z = -3 x – 2y + 3z = 0 3x – y + 5z = 6
SPL di atas menggunakan 3 variabel, maka ketikkan 3 di edit. Kemudian tekan Enter. Setelah itu silahkan isi masing-masing koefisien di table. Perhatikan gambar berikut ini.
“GUIDE Matlab”
10. Kemudian tombol Load Data digunakan jika Anda sudah menyimpan data koefisien dari SPL yang akan Anda selesaikan. Jadi, data yang tersimpan tersebut akan diambil dipindahkan langsung ke tabel, kemudian diproses. Perhatikan contoh di bawah ini.
11. Silahkan pilih data Anda (perhatikan type penyimpanan Ms Excell Anda), klik Open, kemudian data di-select (di-blok), terakhir klik OK.
12. Selanjutnya silahkan klik tombol Hitung. Jika Anda ingin menyimpan hasil perhitungan tersebut, silahkan klik tombol “Simpan Data”. Nama file yang akan disimpan sesuai keinginan Anda.
13. Lakukan simulasi dengan contoh kasus yang lain. Selamat Mencoba.
“GUIDE Matlab”
Program Aplikasi : Metode Trapesium
Atribut : StatisText (5), Edit Text (4), Push Button (3), Table (1), ListBox (1), Axes (1), GroupBox (1), Panel (3)
Manfaat : Menentukan luas daerah menggunakan metode trapezium serta menggambar grafiknya.
Langkah-langkah Kerja:
1. Desainlah guide seperti berikut ini.
Ganti property “Name” dengan “Luas Daerah: Metode Trapesium”.
2. Lakukan pengaturan pada Table seperti gambar berikut ini.
3. Pada tombol “Hitung”, tuliskan scribs berikut.
syms x
a=get(handles.edit1,'string');
b=str2double(get(handles.edit2,'string'));
c=str2double(get(handles.edit3,'string'));
KEGIATAN 3
“GUIDE Matlab”
d=str2double(get(handles.edit4,'string'));
e=[b:d:c];
n=length(e);
f=subs(a,e);
t=length(e);
q=sum(f);
r=q-(f(1)+f(n))
l=d/2*(f(1)+(2*(r))+f(n));
g=int(a);
h=subs(g,c);
j=subs(g,b);
m=h-j;
er=abs((l-m)/m)*100;
u=1:t;
v=[u' e' f'];
set(handles.uitable1,'data',[v]);
x={['======Error Relatif======']};
x=[x;{['Luas Hampiran = ',num2str(l)]}];
x=[x;{['Luas Eksak = ',num2str(m)]}];
x=[x;{['Error = ',num2str(er)]}];
set(handles.listbox1,'string',x);
hold off
d1=[b-3:c+3];
ezplot(a,d1);
hold on d2=[b:c];
area(d2,subs(a,d2));
hold on
plot([b-3 c+3],[0 0]);
grid on
title('Grafik Luas Daerah');
legend(['Luas = ',num2str(l)]) 4. Pada tombol “Hapus”, tuliskan scribs berikut.
set(handles.edit1,'string',' ') set(handles.edit2,'string',' ') set(handles.edit3,'string',' ') set(handles.edit4,'string',' ') set(handles.listbox1,'string',' ') set(handles.uitable1,'data',[]) hold off
plot(0,0)
5. Pada tombol “Keluar”, tuliskan scribs berikut.
p=questdlg('Yakin Anda Keluar?','Tutup Aplikasi','Ya','Tidak','default')
switch p
case{'Ya'}
delete(handles.figure1) end
6. Silahkan tambahkan Toolbar. Lihat caranya pada Kegiatan 1. Kemudian lakukan simulasi setelah running. Perhatikan gambar berikut ini.
“GUIDE Matlab”
1. Titik Potong 2 Fungsi
Buatlah program aplikasi untuk menggambar 2 buah grafik sehingga terlihat titik potong keduanya. Perhatikan tampilan program aplikasi berikut ini.
Tugas 3.1
Untuk menambah pemahaman Anda buatlah program aplikasi berikut ini.
“GUIDE Matlab”
2. Kalkulator Fungsi
Perhatikan tampilan program aplikasi berikut.
Program aplikasi ini digunakan untuk menghitung operasi fungsi sesuai denfan tombol yang ada di gambar. Kemudian hasil dari operasi tersebut langsung digambar grafiknya. Selamat Mencoba…!
3. Himpunan
Perhatikan tampilan program aplikasi berikut.
Program aplikasi ini digunakan untuk menentukan hasil operasi himpunan dengan inputan Himpunan Semesta (S), himpunan A dan B.
“GUIDE Matlab”
3.2 Struktur If … elseif …else … end
Pada bagian ini, Anda akan membuat program aplikasi dengan struktur if … elseif … else … end.
Contohnya program aplikasi “Persamaan dan Fungsi Kuadrat”.
Program Aplikasi : Persamaan dan Fungsi Kuadrat
Atribut : StatisText (5), Edit Text (3), Push Button (2), Button Group (3), Axes (1), Table (1)
Manfaat : Menentukan nilai diskriminan, titip balik, akar-akar persamaan, jenis akar, dan menggambar grafik fungsi kuadrat.
Langkah-langkah Kerja:
1. Desainlah guide seperti berikut:
2. Klik kanan pada Tabel1, pilih Table Property Editor. Silahkan ketik pada kolom Name kata
“Parameter” dan “Nilai”. Sedangkan pada kolom Width ketik 100 dan 50. Kemudian klik Apply  OK.
3. Pilih tombol “Hitung” kemudian ketikkan scribs berikut ini.
a=str2double(get(handles.edit2,'string'));
b=str2double(get(handles.edit3,'string'));
c=str2double(get(handles.edit4,'string'));
D=b^2-4*a*c; xp=-b/2*a; yp=-D/4*a;
x1=(-b+sqrt(D))/2*a; x2=(-b-sqrt(D))/2*a;
KEGIATAN 4
“GUIDE Matlab”
X=[x1-10:0.1:x2+10]; f=a.*(X.^2)+b.*X+c;
plot(X,f) grid on
xlabel('Sumbu X'); ylabel('Sumbu Y');
if D>=0
H={'Diskriminan = ',num2str(D)};
H=[H;{'Simetri (xp) = ',num2str(xp)}];
H=[H;{'Titik Balik (yp) = ',num2str(yp)}];
H=[H;{'Akar (x1) = ',num2str(x1)}];
H=[H;{'Akar (x2) = ',num2str(x2)}];
H=[H;{'Jenis Akar = ','Real'}];
set(handles.uitable2,'Data',H);
else
H={'Diskriminan = ',num2str(D)};
H=[H;{'Simetri (xp) = ',num2str(xp)}];
H=[H;{'Titik Balik (yp) = ',num2str(yp)}];
H=[H;{'Akar (x1) = ',num2str(x1)}];
H=[H;{'Akar (x2) = ',num2str(x2)}];
H=[H;{'Jenis Akar = ','Imajiner'}];
set(handles.uitable2,'Data',H);
end
4. Pilih tombol “Hapus” ketikkan scribs berikut ini.
set(handles.edit2,'string','');
set(handles.edit3,'string','');
set(handles.edit4,'string','');
set(handles.uitable2,'Data','');
hold off plot(0,0);
5. Silahkan tekan F5 atau klik tombol running. Kemudian simulasikan fungsi berikut ini.
F(x) = x2 – 3x – 4  a = 1, b = -3, c = -4
Silahkan lakukan simulasi dengan berbagai macam fungsi yang lain.
Selamat mencoba.