Top Banner
Ripai, S.Pd., M.Si WebMail :[email protected] WebBlok :www.ripaimat.wordpress.com BAHAN AJAR KOMPUTER PEMOGRAMAN BASIC BERBASIS MATRIK LABARATORIUM Matematika merupakan kosep fikir atau ide rasional yang bersifat abestrak, terkontruksi dari fenomena alam sebagai upaya untuk menyelesaikan berbagai permasalahan alam kehidupan. Permasalahan kehidupan yang lebih kompleks tidak dapat diselesaikan hanya dengan metode analitik matematik.Diperlukan metode numerik dan simulasi.Untuk itu Matematika komputasi merupakan solusi bagaimana menyelesaikan permasalahan matematika dan alam kehidupan menggunakan teknologi komputer.Hal ini penting dikuasai oleh pencinta matematika agar matematika yang abestrak dapat menjadi lebih konkrit. Untuk tujuan tersebut, KOMPUTER DAN PEMOGRAMAN BASIC menjadi pondasibagaimana memahami bahasa dasar komputer untuk membuat suatu program komputasi matematika
191

Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Apr 22, 2018

Download

Documents

dinhkhanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Ripai, S.Pd., M.SiWebMail :[email protected] WebBlok :www.ripaimat.wordpress.com

BAHAN AJARKOMPUTER PEMOGRAMAN BASIC

BERBASIS MATRIK LABARATORIUM

Matematika merupakan kosep fikir atau ide rasional yang bersifat abestrak, terkontruksi dari fenomena alam sebagai upaya untuk menyelesaikan berbagai permasalahan alam kehidupan. Permasalahan kehidupan yang lebih kompleks tidak dapat diselesaikan hanya dengan metode analitik matematik.Diperlukan metode numerik dan simulasi.Untuk itu Matematika komputasi merupakan solusi bagaimana menyelesaikan permasalahan matematika dan alam kehidupan menggunakan teknologi komputer.Hal ini penting dikuasai oleh pencinta matematika agar matematika yang abestrak dapat menjadi lebih konkrit.

Untuk tujuan tersebut, KOMPUTER DAN PEMOGRAMAN BASIC menjadi pondasibagaimana memahami bahasa dasar komputer untuk membuat suatu program komputasi matematika

Page 2: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

KATA PENGANTAR

Bismillahirrahmanirrahim.

Puji syukur kehadirat Allah SWT yang telah memberikan limpahan rahmat,

taufik dan hidayah-Nya sedemikian sehingga buku bahan ajar Mahasiswa

dalam mata kuliah Komputer Pemograman Basic ini dapat terselesaikan.

Bahan ajar ini disajikan dalam bentuk yang sederhana dengan pendekatan

proses pembuatanprogram komputasi yang digunakan sebagai pegangan atau

accuan dalam pelaksanaan perkuliahan Komputer Pemograman Basic.

Penulis menyadari bahan ajar ini masih jauh dari kesempurnan, Oleh karena itu

saran dan kritik yang bersifat membangun daripembaca sangat kami harapkan

guna penyempurnaan buku bahan ajar ini .

Akhirnya penulis berharap semoga buku bahan ajar ini dapat memberikan andil

dalam rangka ikut mencerdaskan kehidupan bangsa sebagaimana yang

diamanatkan dalam pembukaan UUD 1945.

Mataram, 2012

Penulis

Ripai, S.Pd., M.Si

Ripai, S.Pd., M.Si

143

Page 3: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

SILABUS MATA KULIAH

Mata Kuliah : Komputer Pemograman BasicSKS : 3Kode :Standar Kompetensi : Mahasiswa dapat membuat program

komputasi matematika untuk mensimulasikan dan menyelesaikan permasalahan matematika.

Kompetensi Dasar : 1. Mahasiswa dapat membuat suatu Algoritma program pada topik-topik matematika dan pembelajaran matematika.

2. Mahasiswa dapat membuat suatu algoritma komputasi pada topik-topik matematika dan pembelajaran matematika.

3. Mahasiswa dapat menguasai bahasa dasar komputasi matematika untuk menyelesaikan permasalahan matematika pada topik-topik kalkulus dasar, aljabar matriks, Statistika matematika, pengantar dasar matematika, matematika diskrit dan teori bilangan.

4. Mahasiswa dapat membuat pemograman dengan strukutr if, for, while dan switch

5. Mahasiswa dapat melakukan pemograman komputasi matematika berbasis GUI (grafik User InterfaceI).

Topik : 1. Pengantar Pemograman Komputer Basic2. Algoritma Pemograman Komputasi

Matematika.3. Pemograman Comand Window pada topik

Kalkulus Dasar, Matriks, Statsitika Matematika, Matematika Diskrit, Pengantar Dasar Matematika dan Teori Bilangan

4. Pemograman M-file dengan struktur if, for, while, switch

5. Pemograman GUI dalam membuat aplikasi matematika.

INTRUKSIONAL PELAKSANAAN PERKULIAHANRipai, S.Pd., M.Si

143

Page 4: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Prt Topik Intruksional

1 Pengantar perkuliahan

1. Dapat memahami ruang lingkup computer pemograman Basic

2. Dapat mengetahui sasaran belajar unutk tiap pertemuan2 1. Algoritma

Program2. Flow Chat

3. Akumulator dan Konter

3. Dapat menjelaskan pengertian algoritma program4. Dapat membuat algoritma program

5. Dapat menuliskan output suatu program jika flow Chat diberikan

6. Dapat menentukan variabel akumulator dan konter dalam suatu program

3 Pemograman Comand Window pada topik Kalkulus Dasar

1. Dapat mendefiniiskan fungsi dan mengambar grafiknya berdasarkan

2. Dapat mengevaluasi nilai suatu fungsi3. Menneukan aitmatika fungsi4. Dapat menentukan komposisi fungsi

4 Pemograman Comand Window pada topik kalkulus Dasar

1. Dapat menentukn limit, turunan inetral suatu fungsi2. Dapat menenukan asimtot tegak dan datar suatu fungsi3. Dapat menentukan gradient dan garis singgung suat

kurva4. Dapat menentukan luas daerah di bawah kurva

5 1.Pemograman Comand Window pada topik Aljabar Matriks

1. Dapata mendefinsikan matriks 2. Dapat mengakses elemen matriks3. Dapat menentukan invers, determinan, kofaktor suatu

matriks4. Dapat mengunakan metode invers untuk

menyelesaikan SPL multi variabel5. Dapat melakukan aritmatika matriks6. Dapat menentukan eigen vector, value suatu matriks7. Dapat mendefinsikan matriks graph dan menetukan

lintasan terpendek6 Pemograman

Coman Windows Pada topik Statistika Matematika

1. Dapat mendefinsikan data dan mengambarkan graiknya

2. Dapat menentukan parameter statistic seperti rataan, modus, median, standar deviasi, varians

3. Dapat menentukan nilai t tabel, z tabel, chi tabel, dan f tabel

4. Dapat mengambar grfaik distribusi student, normal, chi-kuadrat dan fhiser

7 Pemograman Comand windows pada topik matematika

1. Dapat mengambar fungsi floor, ceiling, round dan absoulut

2. Dapat menenukan bilangan prima, komposit, bulat positif dan bulat negative

3. Dapat menentukan FPB dan KPK dua buah bilanganRipai, S.Pd., M.Si

143

Page 5: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Prt Topik Intruksional

diskrit, teori bilangan dan pengantar dasar matematika

4. Dapat melakukan komputasiuntuk memeriksa kebenaran beradasrkan logika matematika

8 UJIAN TENGAH SEMESTER

9 Pemograman M file dengan strukutr if

Dapat merancnag pemograman dengan struktur if untuk menyekesaikan masalah trikotoomi bilangan real, akar persamaan kuadrat dan penilaian hasil belajar

10 Pemograman dengan strukutr for

Dapat merancang pemograman dengan strukutr for untuk mensimulasikan definisi factorial, permutasi dan limit fungsi

11 Pemograman dengan strukiut while

Dapat merancang pemograman dengan strukutr while untuk mensimulasikan definisi pembagian dan algoritma Eucliden

12 Pemograman dengan strkutr switch

Dapat merancang pemograman dengan struktur switch untuk megabungkan program-program komputasi yang telah dibuat sebelumnya

Dapat merancang program unutk menghitung luas dan keliling bangun datar

13 Pemograman GUI

Dapat membangun pemograman berbasis GUI untuk mensimulasikan algoritma Eucliden dan factorial

14 Pemograman GUI

Dapat membangun program unutk mensimulasikan garis singgung pada kurva dan deret mascluarin dan tayor

15 Pemograman GUI

Dapat membangun program unutk menganalisis hasil belajar siswa .

16 UAS Ujian Akhir Semester

Ripai, S.Pd., M.Si

143

Page 6: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Komputer berasal dari kata count yang bebarti menghitung. Komputer

merupakan teknologi yang lahir sebagai jawaban atas tantangan berbagai

permasalahan kehidupan yang membutuhkan solusi perhitungan matematis

yang cepat, tepat dan benar. Leluhur komputer adalah kalkulator, akan tetapi

karena kalkulator tidak bisa menyelesiikan masalah yang kompleks maka

komputer diciptakan yang pada awalnya diperuntukkan khusus untuk

membantu proses perhitungan matematis. Akan tetapi, saat ini komputer

telah dikembangkan menjadi yang lebih luas dalam aplikasinya.

Pemograman berarti membuat suatu perencanaan perhitungan matematis

menggunakan computer (komputasi matematika). Sedangkan Basic berarti

dasar yang terkait dengan bahasa dasar computer untuk melakukan

perhitungan matematis. Sebagai contoh bahasa dasar untuk menuliskan

matriks

adalah A=[5 9 8;6 7 8;8 9 9] dan untuk menghitung

inversnya adalah inv(A) dengan hasil komputasinya adalah

ans =

-0.3103 -0.3103 0.5517

0.3448 -0.6552 0.2759

Ripai, S.Pd., M.Si

1 Pengantar Komputer Pemograman Basic

143

Page 7: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

-0.0690 0.9310 -0.6552

Contoh lainnya adalah bagaimana mengambar grafik fungsi .

Bahasa dasar computer yang dapat diterapkan adalah sebagai berikut:

syms x

f=sin(x)/x;

ezplot(f)

dengan output grafik fungsi adalah

-6 -4 -2 0 2 4 6

-0.2

0

0.2

0.4

0.6

0.8

1

x

sin(x)/x

Selaian mengetahui bahasa dasar tersebut, mahasiswa juga harus memiliki

kemampuan untuk membangun suatu program perhitungan komputasi

matematika. Terdapat empat strukutr dasar pemograman computer, yaitu

struktur if, for, while dan switch. Berikut diberikan contoh bentuk program

komputasi struktur for untuk mensimulasikan pengertian secara intuitif

limit kanan fungsi.

syms x f=input('f(x)= ');c=input('c = ');

Ripai, S.Pd., M.Si

143

Page 8: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

X=[c-10:0.25:c+10];ezplot(f,X)d=[c+10:-0.25:c];n=length(d);for i=1:n hold on plot(d(i),0,'.r') hold on plot(d(i),subs(f,d(i)),'.r') pause(0.2)endL=double(limit(f,c));text(c,subs(f,c),['<--- Limit = ',num2str(L)])

Output dari eksekusi program tersebut adalah sebagai berikut

-8 -6 -4 -2 0 2 4 6 8 10 12

0

50

100

150

200

x

x2+5 x+6

<--- Limit = 20

Semua bahasa dasar program komputasi menjadi harus di kuasai mahasiswa

setelah mengikuti perkuliahan ini. Khususnya untuk mahasiswa pendidikan

matematika, kemampuan komputer menjadi penting untuk mensimulasikan

berbagai konsepp matematika sehingga dalam pengajaran matematika di

sekolah, dapat mengembangkan berbagai aplikasi untuk mensimulasikan

materi-materi matematika sehingga materi matematika yang umumnya

Ripai, S.Pd., M.Si

143

Page 9: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

dianggap sulit dan abestrak akan terasa lebih konkrit dan rasional Terdapat

beberapa hal modal dasar untukk bisa menguasai teknik pemograman

komputer, yaitu menguasai Algoritma program, Menguasai Bahasa dasar/basic

komputer dan menguasai teorii matematika yang akan dikomputasikan. Jika

salah satunya tidak terpenuhi, maka pemograman komputer tidak akan dapat

tercapai. Dalam kuliah komputer pemograman Basic ini, akan diberikan uraian

dasar-dasar teknik pemograman. Intruksional yang harus dikuasai mahasiswa

tiap pertemuan sebagaimana yang terdapat pada halaman sebelum topic ini.

Ripai, S.Pd., M.Si

143

Page 10: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirahim.

Algoritma berasal dari kata Algorithm (Ingris) yang diambil dari kata Al-

Khawarizmi (Arab) merupakan nama seorang ilmuan matematika islam Abu

Musa Al-khawarizmi. Al-Khawarizmi merupakan ilmuan yang mendefinisikan

bilangan hidu arab 1, 2, 3, 4, 5, 6, 7, 8, 9, 0. Dimana dalam komputer bilangan

yang dioperasikan merupakan bilangan hindu arab tersebut. Disebut bilangan

hidu arab, karena Al-kharizmi yang merupakan bangsa Arab mendefinisikan

bilangan tersebut dari beberapa simbol yang ada pada peradaban umat Hindu

dimana pada masa tersebut, Al-Khawarimi banyak berdiskusi dengan ilmuan

matematika hindu.

Algoritma program adalah suatu prosedur logis yang memuat tahapan-

tahapan penyelesaian suatu masalah (Suryadi, 1994). Suatu algoritma

yang diuraikan secara tepat akan memerikan proses penyelesaian

masalah berjalan sesuai harapan. Sebagai contoh algoritma program

seseorang akan berangkat sekolah. Maka prosedur logis yang bisa

diterapkan adalah sebagai berikut:

Algoritma 2.11. Bangun tidur2. Pergi mandi3. Berpakaian4. Berkemas5. Sarapan6. Berangkat

Ripai, S.Pd., M.Si

2 Algoritma Program

143

Page 11: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Dari uraian algoritma di atas, merupakan urutan logis yang didasarkan

atas kebiasaan seseorang berangkat sekolah. Jika step ke-2 ditukar

posisinya dengan step ke-3., tentunya akan menjadi tidak logis

sehingga urutan tersebut tidak dapat disebut sebagai suatu algoritma

program. Contoh lainnya suatu algoritma program jika seseorang akan

menghitung nilai dari akar-akar persamaan kuadrat sebagai berikut:

Algoritma 2.2 : Menghitung akar real persamaan kuadrat Step 1. Tentukan nilai a, b, cStep 2. Hitung nilai dari D = b2 – 4 a cStep 3. Periksa apakah D ≥ 0, jika benar, maka

Step 4. Hitung

Step 5. Tulis akar persamaan sebagai x1 dan x2

Step 6. Kondisi lainnya yakni ingkaran dari step 3 yaitu D < 0 Step 8. Tulis akar-akar persamaan imajinerStep 9. Akhiri program

Algoritma di atas merupakan urutan logis dalam menentukan akar persamaan

kuadrat. Jika step 1 ditukar posisinya dengan step 2, tentunya tata cara kerja

tersebut tidak logis, karena mustahil dpat ditentukan nilai D jika a, b dan c

belum diketahui. Step 4, 5 dan 6 tertulis sejajar dan lebih maju dari step 3. Hal

ini menunjukkan bahwa step 4, 5 dan 6 hanya akan dikerjakan jika kondisi step

3 terpenuhi. Jika kondisi step 3 tidak terpenuhi, maka pengerjaan akan

berlanjut ke step 8. Karena step 8 merupakan perintah yang berada di bawah

step 7 dimana kondisi step 3 tidak berlaku.

Contoh:

Misalkan dimiliki persamaan kuadrat f(x) = x2 – x + 4 maka penyelesaian

akar persamaan kuadrat dengan mengunakan algoritma di atas adalah

sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 12: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

a = 1; b = -1; c = 4

D = (-1)2 – (4)(1) (4) = 1-16 = -15

Akar persamaan kuadrat imajiner

Sesuai dengan algoritma di atas, pertama-tama nilai a = 1, b = -1 dan c = 4

didefinisikan kemudian dihitung nilai dari D = -15. Karena kondisi pada step 3

tidak terpenuhi yakni D < 0, maka step 4, 5 dan 6 diabaikan dan pengerjaan

langsung loncat ke step 8. Hal ini disebabkan karena step step 8 merupakan

pengerjaan selanjutnya jika step 3 tidak terpenuhi dan step 7 terpenuhi.

Contoh

Buatlah algoritma program untuk mengimplementasikan sifat trikotomi

bilangan real.

Solusi:

Sifat trikotomi bilangan real menyatakan bahwa, jika x dan y adalah

sembarang bilangan real, maka terdapat 3 kemungkinan hubungan

yang terjadi anatar x dan y, yaitu x = y, x > y dan x < y. Untuk itu bentuk

algoritma yang dapat kita terapkan adalah sebagai berikut:

Algoritma 2.3. Trikotomi Bilangan Real

Step 1. Definisikan sembarang bilangan real, sebut sebagai x dan y

Step 2. Periksa apakah x = y, jika benar

Step 3. Tulis “ x sama dengan y”

Step 4. Jika step 2 salah, periksa apakah x > y, jika benar

Step 5. Tulis “ x lebih besar dari y”

Step 5. Kondisi lainnya, yakni step 2 dan 4 salah

Step 6. Tulis “ x kurang dari y”

Step 6. Akhiri Program

Ripai, S.Pd., M.Si

143

Page 13: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Algoritma di atas merupakan suatu urutan pengerjaan logis dan insyaAllah

akan menjamin output hasil pengerjaan sesuai dengan sifat trikotomi bilangan

real sebagaimana yang terdapat dalam kalkulus maupun analisis real.Misalkan

pada step 1 didefinisikan x = 5 dan y = 6 maka pengerjaan berdasarkan

algoritma di atas adalah dilakukan pemeriksaan apakah x = y sebagaimana

pada step 2, karena bernilai salah maka step 3 di abaikan dan program akan

loncat ke step 4 dan memeriksa apakah x> y, dan diperoleh kenyataan x>y

bernilai salah, program meloncati step 5 dan mengerjakan step 7. Hal ini

disebabkan karena step 7 berada di bawah kontrol step 6. Jika algoritma

tersebut diterapkan dalam pemograman komputer, maka akan diperoleh

hasil sebagai berikut:

x = 5;

y = 6;

x lebih kecil dari y

TOPIK DISKUSITentukan output program berikut jika di berikan nilai Tugas/U1 = 45; Mid/U2 =

76 dan UAS/U3 = 70.

Algoritma 2.4. Konversi nilai

Step 1. Masukkan nilai U1, U2 dan U3

Step 2. Hitung NA = 0.2 x U1 + 0.3 x U2 + 0.5 x U3

Step 3. Seleksi apakah NA > =80, jika benar

Step 4. Tulis “ Nilai Akhir = NA dengan grade A

Step 5. Jika tidak, seleksi apakah NA >= 65, jika benar

Step 6. Tulis “ Nilai akhir = NA dengan grade B”

Step 7. Jika tidak, seleksi apakah NA >=55, jika benar

Step 8. Tulis “Nilai Akhir = NA dengan grade C”

Step 9. Jika tidak, seleksi apakah NA>=40, jika benar

Ripai, S.Pd., M.Si

143

Page 14: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Step 10. Tulis “ Nilai Akhir = NA dengan grade D”

Step 11. Dalam kondisi lainnya tulis “ Nilai akhir = NA dengan grade E”

Flow ChatFlow Chat adalah suatu diagaram alur yang menggambarkan suatu algoritma

program. Dalam flow chat digunakan simbol-simbol sebagai berikut:

Algoritma penentuan akar persamaan kuadrat di atas, jika dituliskan dalam

bentuk flow chat adalah sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 15: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Gambar 1.1 Flow Chat Program penentuan akar persamaanContohKontruksilah bentuk flow chat dari lagoritma trikotomi bilangan real.

Solusi:

Mencermati bentuk algortima tersebut, maka bentuk flow chat yang dapat

diterapkan adalah sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 16: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Gambar 1.2 Flow Chat Trikotomi bilangan real

Contoh:

Buatlah flow chat untuk jumlah 10 bilangan asli pertama

Solusi:

Untuk dapat menyelesaikan permasalahan ini, diperlukan pengetahuan

tentang definisi bilangan Asli, operasi biner, variable akumulator dan variable

konter. Bilangan asli didefinisikan sebagai N = {1, 2, 3, . . .}. Konsep

pendefinisian sebagai bilangan Asli tersebut, bukan berarti ada bilangan tidak

Ripai, S.Pd., M.Si

143

Page 17: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

asli atau palsu. Akan tetapi didasari dari kenyataan bahwa dalam peradaban

manusia dibidang sosial dan budaya, himpunan bilangan {1, 2, 3, . . .}

merupakan himpunan bilangan yang pertama kali dirumuskan atau dikenal

manusia. Konsep asli disini sejalan dengan pemahaman pernyataan suku sasak

asli, yang berarti bahwa leluhur orang tersebut adalah orang yang pertama kali

mendiami atau tinggal dan mengembangkan budaya dan social di bumi

Lombok Nusa tenggara Barat.

Operasi biner merupakan operasi yang dilakukan dengan mengoperasikan dua

buah bilangan. Misalkan dalam penjumlahan bilangan asli tersebut, setiap kita

akan melakukan operasi biner untuk dapat menentukan dengan proses 1 + 2 =

3, kemudian 3 + 3 = 6, kemudian 6 + 4 = 10, 10 + 5 = 15 dan seterusnya.

Selanjutnya Akumulator merupakan variabel yang nilainya terus bertambah

sesuai dengan banykanya proses pengulangan dari proses yang berlangsung

Misalnya seorang anak yang menabung sisa uang jajan sekolahnya, maka

tabungannya tersebut dinamakan akumulator. Konter adalah akumulator yang

penambahan nilainya tetap satu. Misalnya seorang pengangkut pasir yang

memasukkan kerikil pada suatu kaleng untuk mengetahui banyaknya kali

mengangkut pasir, maka kaleng tersebut dinamakan konter.

Berdasarkan uraian di atas, maka dapat dikontruksi algoritma program

menghitung 10 bilangan asli pertama dengan variabel program sebagai berikut:

A = Himpunan bilangan asli

J = Variabel akumulator sebagai tempat menyimpan hasil penjumlahan biner

i = Variabel konter sebagai pengalamatan elemen himpunan bilangan Asli

Ripai, S.Pd., M.Si

143

Page 18: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Flow Chat di pada gambar 1.3 merupakan suatu prosedur logis penyelesaian

jumlah 10 bilangan asli berdasarkan konsep operasi biner sebagaimana

biasanya seseorang melakukan proses penjumlahan. Jika disimulasikan, maka

proses perhitungan dan perubahan nilai variabel adalah sebagai berikut:

Gambar 1.3 Flow Chat program menghitung 10 bilangan asli pertama

A = 1

J = 0

J = J + A = 0 + 1 = 1

A≠ 10

A = A + 1 = 1 + 1 = 2

J = J + A = 1 + 2 = 3

Ripai, S.Pd., M.Si

143

Page 19: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

A≠ 10

A = A + 1 = 2 + 1 = 3

J = J + A = 3 + 3 = 6

A≠ 10

A = A + 1 = 3 + 1 = 4

J = J + A = 6 + 4 = 10

A ≠ 10

A = A + 1 = 4 + 1 = 5

J = J + A = 10 + 5 = 15

A ≠ 10

A = A + 1 = 5 + 1 = 6

J = J + A = 15 + 6 = 21

A ≠ 10

A = A + 1 = 6 + 1 = 7

J = J + A = 21 + 7 = 28

A ≠ 10

A = A + 1 = 7 + 1 = 8

J = J + A = 28 + 8 = 36

A ≠ 10

A = A + 1 =8+ 1 = 9

J = J + A = 36 + 9 = 45

A ≠ 10

A = A + 1 =9+ 1 = 10

J = J + A = 45 + 10 = 55

A = 10

Ripai, S.Pd., M.Si

143

Page 20: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Jumlah = J = 55

Contoh

Tentukan konsep matematika yang diterapkan dalam flow chat berikut ini jika

variabel BS = Bilangan sembarang; n = banyaknya bilangan sembarang; J =

Jumlah.

Solusi dari permasalahan tersebut diberikan sebagai latihan mahasiswa dan

lakukanlah simulasi dengan memilih n= 10.

Contoh:

Ripai, S.Pd., M.Si

143

Page 21: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Perhatikan flow Chat berikut, kemudian tentukan output program jika diberikan

data x = 5, 3, 0, 6, 6, 4, 7.

Solusi:

Memperhatikan diagram tersebut dan x = 5, 3, 0, 6, 6, 4, 7 maka analisis output

sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 22: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

x = 5 3 0 6 6 4 7

T = 0

n = 7

karena x(1) > x(2) benar T = 5

x = 3 3 0 6 6 4 7

x = 3 5 0 6 6 4 7

karena x(1) > x(3) benar T = 3;

x =0 5 0 6 6 4 7;

x = 0 5 3 6 6 4 7

karena x(1) > x(4) salah tidak ada proses

karena x(1) > x(5) salah tidak ada proses

karena x(1) > x(6) salah tidak ada proses

karena x(1) > x(7) salah tidak ada proses

karena x(2) > x(3) benar T = 5 ;

x = 0 3 3 6 6 4 7;

x = 0 3 5 6 6 4 7

karena x(2) > x(4) salah tidak ada proses

karenax(2) > x(5) salah tidak ada proses

karena x(2) > x(6) salah tidak ada proses

Ripai, S.Pd., M.Si

143

Page 23: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

karena x(2) > x(7) salah tidak ada proses

karena x(3) > x(4) salah tidak ada proses

karena x(3) > x(5) salah tidak ada proses

karena x(3) > x(6) benar T = 5;

x = 0 3 4 6 6 4 7;

x = 0 3 4 6 6 5 7

karena x(3)> x(7) salah tidak ada proses

karena x(4) > x(5) salah tidak ada proses

karena x(4) > x(6) benar T = 6;

x = 0 3 4 5 6 5 7;

x = 0 3 4 5 6 6 7

karena x(5) > x(6) salah tidak ada proses

karena x(5) > x(7) salah tidak ada proses

karena x(6) > x(7) salah tidak ada proses

menampilkan data x x = 0 3 4 5 6 6 7

Ripai, S.Pd., M.Si

143

Page 24: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

berdasarkan analisis di atas, maka jika algoritma tersebut diterapkan dalam

komputer, insyaAllah output eksekusi program adalah sebagai berikut:

TUGAS 2

Buatlah suatu algoritma program dan plow chat untuk menghitung

1. Keliling dan luas semua jenis bangun datar

2. Luas permukaan dan volume semua jenis bangun ruang

3. Luas daerah di bawah kurva dengan menggunakan integral

reimant

Ripai, S.Pd., M.Si

143

Page 25: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Matrik Laboratorium (MATLAB) merupakan bahasa basic pemograman

komputer dengan bahasa program paling tinggi, yang berarti bahwa dalam

pengunaanya perististilahan bahasa basic/dasar yang digunakan paling

mudah. Pemograman komputer basic berbasis MATLAB memiliki 3 ruang

pemograman, yaitu Comand Windows, M File dan GUI. Pada bagian ini akan di

bahas tentang pemograman pada command windows.

Comand window merupakan tempat memberikan skrip perintah dan tempat

melihat output program. Contoh sebagai berikut:

Ripai, S.Pd., M.Si

3 Pemograman Fungsi Matematika Pada Comand Window MATLAB

143

Page 26: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Gambar 2.1 Tamplan command window MATLAB

Pada command window, perintah >> A=[3 4 5 6;6 5 4 8;8 9 6 5;6 8 5 4] adalah

pendefinisian matriks berordo 4 x 4 dan diperoleh output sebagai berikut

A =

3 4 5 6

6 5 4 8

8 9 6 5

6 8 5 4

Yang berarti bahwa, pada komputer telah terdefinisi suatu matriks A dengan

elemen-elemen sebagaimana di atas.

Selanjutnya terlihat perinta mencari invers matriks A dengan perintah inv(A)

dengan ouput sebagai berikut

ans =

-0.1215 0.0187 0.7664 -0.8131

-0.1682 0.1028 -0.7850 1.0280

0.4299 -0.3738 0.6729 -0.7383

-0.0187 0.2336 -0.4206 0.3364

Berikut kemudian terlihat ada perintah det(A) yang berarti meminta komputer

memberikan output determinan matriks A dan diperoleh hasi

>> det(A)

ans =

107.0000

Berikut adalah beberapa bahasa dasar dalam pemograman fungsi matematika

yang dapat di bangun pada comand window. Mahasiswa diminta mencobanya Ripai, S.Pd., M.Si

143

Page 27: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

pada command window dengan cara menuliskan skrip komputasinya pada

command window. Output yang diperoleh dipastikan sama dengan output

pada tabel kolom output sebagaimana yang diberikan. Penjelasan konsep

matematikanya disesuaikan pada kolom konsep matematika yang diberikan.

3.1 Pendefinisian Fungsi Dengan Perintah syms x

Pendefinisian fungsi aljabar yang memuat variable x diawali dengan

memberikan perintah syms x. syms merupakan singkatan dari sy = simbol, m =

matematika dan s merupakan bentuk jamak sedangkan x adalah variabel

simbolnya.

No Konsep Matematika Perintah Pada Comand Window

Output

1 Pendefinisian x sebagai simbol Matematika

syms x

2 Pendefinisian fungsi f(x) = x2-5x+6

f=x^2-5*x+6 f =x^2-5*x+6

3 Mengambar contoh grafik fungsi f(x) = x2-5x+6

ezplot(f)

-6 -4 -2 0 2 4 6

0

10

20

30

40

50

60

70

80

x

x2-5 x+6

4 Membuat garis-garis koordinat grafik fungsif(x) = x2-5x+6

grid on

-6 -4 -2 0 2 4 6

0

10

20

30

40

50

60

70

80

x

x2-5 x+6

Ripai, S.Pd., M.Si

143

Page 28: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Konsep Matematika Perintah Pada Comand Window

Output

5 Mengambar grafik fungsi f(x) = x2-5x+6 pada domain 0≤x≤5 dengan ∆x = 0.25

ezplot(f, [0:0.25:5])

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

0

1

2

3

4

5

6

x

x2-5 x+6

Menghitung nilai dari f(-3) dari fungsi f(x) = x2-5x+6

subs(f,-3) ans = 30

7 Bentuk faktor dari fungsi f(x) = x2-5x+6

factor(f) ans = (x-2)*(x-3)

8 Menentukan titik potong fungsi f(x) = x2-5x+6 pada sumbu x

akar=solve(f) akar = 3 2

9 Melukiskan posisi titik potong fungsi f(x) = x2-5x+6 pada sumbu x

hold on plot(3,0,'or') hold on plot(2,0,'or')

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

0

1

2

3

4

5

6

x

x2-5 x+6

9 Menentukan koefesien dari fungsi polynomial f(x) = x2-5x+6

sym2poly(f) ans = 1 -5 6

10 Mendefinisikan fungsi g=(x^2-5*x+6)/(x-2) g = (x^2-5*x+6)/(x-2)

11 Menuliskan dalam bentuk yang lebih baik fungi

pretty(g)

12 Menyederhanakan bentuk fungsi

simplify(g)

ans = x-3

Ripai, S.Pd., M.Si

143

Page 29: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Konsep Matematika Perintah Pada Comand Window

Output

13 Mengambar grafik fungsi

dengan warna merah pada domain 0≤x 5 dengan ∆x=0.25 bersamaan dengan gambar grafik fungsi f(x) = x2-5x+6 sebelumnya.

hold ond=[0:0.25:5];plot(d,subs(g,d),'r')

Warning: Divide by zero.In sym.subs at 155

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

0

1

2

3

4

5

6

x

x2-5 x+6

14 Menuliskan keterangan grafik

legend('Grafik f(x)','Grafik g(x)')

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

0

1

2

3

4

5

6

x

x2-5 x+6

f(x)=x2-5*x+6g(x)=x-3

15 Penjumlahan f(x)+g(x)

f+gpretty(f+g)simplify(f+g)

16 Penguranganf(x)-g(x)

f-gpretty(f-g)simplify(f-g)pretty(simplify(f-g))

ans =x^2-5*x+6-(x^2-5*x+6)/(x-2)

ans =x^2-6*x+9

17 Pembagianf(x):g(x)

f/g ans = x-2

18 Perkalianf(x)g(x)

f*gpretty(f*g)simplify(f*g)pretty(simplify(f*g))

ans =(x^2-5*x+6)^2/(x-2)

Ripai, S.Pd., M.Si

143

Page 30: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Konsep Matematika Perintah Pada Comand Window

Output

ans =(x-3)*(x^2-5*x+6)

19 Ivers fungsi f(x)1/f(x)Catatan: bukan fungsi invers dari fungsi f(x)

Inv(f)pretty(inv(f))

ans =1/(x^2-5*x+6)

20 Invers fungsi g(x)1/g(x)Catatan: bukan fungsi invers dari fungsi g(x)

Inv(g)pretty(inv(g))

ans =1/(x^2-5*x+6)*(x-2)

21 Komposisi fungsigof =g(f(x))

subs(g,f)pretty(subs(g,f))

ans =((x^2-5*x+6)^2-5*x^2+25*x-24)/(x^2-5*x+4)

22 Komposisi fungsifog=f(g(x))

subs(f,g)pretty(subs(f,g))

ans =(x^2-5*x+6)^2/(x-2)^2-5*(x^2-5*x+6)/(x-2)+6

22 Mengammbar fungsi g(x) dalam bentuk system koordinat polar

ezpolar(g)

1

2

3

4

30

210

60

240

90

270

120

300

150

330

180 0

r = (x2-5 x+6)/(x-2)

Ripai, S.Pd., M.Si

143

Page 31: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Konsep Matematika Perintah Pada Comand Window

Output

23 Mendefinisikan fungsi inplisit x2+y2=4

syms x yh=x^2+y^2-4pretty(h)

h= x^2+y^2-4

24 Mengambar fungsi inplisit x2+y2=4

ezplot(h)grid on

x

y

x2+y2-4 = 0

-6 -4 -2 0 2 4 6-6

-4

-2

0

2

4

6

3.2. Pendefinisian fungsi dengan perintah inlineSelain dengan perintah syms x, kita juga dapat medefinisikan fungsi dengan

perintah inline. Berikut diberikan contoh penggunaanya.

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

1 Pendefinisian persamaan fungsi f(x)=x2-5x+6

f=inline('x.^2-5.*x+6','x') f = Inline function: f(x) = x^2-5*x+6

2 Pendefinisian fungsi g(x) = xe-x + 1

g=inline('x.*exp(-x)+1','x') g = Inline function: g(x) = x.*exp(-x)+1

3 Membuat domain fungsi pada selang 0≤x≤5 dengan ∆x = 0.25

x=[0:0.25:5] x = Columns 1 through 11 0 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 2.25 2.50 Columns 12 through 21 2.75 3.00 3.25 3.50 3.75 4.00 4.25 4.50 4.75 5.00

4 Mengambar grafik fungsi f(x)

Mengabungkan Grafik

Mengambar grafik fungsi g(x) dengan warna merah

Membuat garis-garis koordinat

plot(x,f(x))

hold on plot(x,g(x),'r') grid on 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

-1

0

1

2

3

4

5

6

Domain fungsi

Ran

ge fu

ngsi

Belajar membuat grafik fungsi

f(x)g(x)

Ripai, S.Pd., M.Si

143

Page 32: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

Membuat keterangan absis

Membuat keterangan ordinat

Membuat judul grafik fungsi

Membuat keterangan grafik

xlabel('Domain fungsi') ylabel('Range fungsi')

title('Belajar membuat grafik fungsi')legend('f(x)','g(x)')

5 Menentukan nilai x sehingga f(x) = 0 dengan mengambil nilai awal pencarian x0 = -1 dan x0 = 5

fzero(f,-1)fzero(f,5)

ans = 2.0000ans = 3.0000

6 Menghitung nilai f(5)

f(5) ans = 6

7 Mendefinisikan fungih(x,y)=x2 + y2

h=inline('x.^2+y.^2','x','y') h =

Inline function: h(x,y) = x.^2+y.^2

8 Menghitung nilai h untuk x= 1 dan y =2

h(1,2) h(1,2)ans = 5

9 Membuat domain fungsi x dan y pada interval 0 ≤ x ≤ 20dan o ≤ y ≤ 20 dengan ∆x = 0.1

x=[0:0.1:20];y=[0:0.1:20];

Tidak ada utput, karena tanda “ ;” yang diberikan merupakan perintah untuk tidak menampilkan hasil dari perintah yang diberikan.

10 Mengambar grafik fungsi h(x,y) pada domain x dan y yang telah didefinisikan sebelumnya

z=h(x,y);plot3(x,y,z)

05

1015

20

0

5

10

15200

200

400

600

800

3.3 Mendefinisikan fungsi berdasarkan dataSelain dengan menggunakan bentuk syms dan inline, maka teknik

komptasi untuk membangun fungsi dan grafik berdasarkan suatu data

yang diketahui dapat dilakukan dengan cara sebagai berikut:

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

1 Mendefinsikan x=[3 3 4 6 7 8 5 7 9 10 11 9 x =

Ripai, S.Pd., M.Si

143

Page 33: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

domain fungsi x = {3, 3, 4, 6, 7, 8, 5, 7, 9, 10, 11, 9, 12, 8, 7, 12, 13, 8, 13 15}

12 8 7 12 13 8 13 15] 3 3 4 6 7 8 5 7 9 10 11 9 12 8 7 12 13 8 13 15

2 Mendefinisikan range fungsi f={6, 5, 8, 7, 7, 9, 4, 8, 15, 12, 9, 8, 8, 14, 15, 12, 10, 12, 9, 11}

f=[6 5 8 7 7 9 4 8 15 12 9 8 8 14 15 12 10 12 9 11]

f = Columns 1 through 19 6 5 8 7 7 9 4 8 15 12 9 8 8 14 15 12 10 12 9 Column 20 11

Mengambar grafik fungsi dengan tanda *

Membuat keterangan absis

Membuat keterangan ordinat

Membuat judul grafik

plot(x,f,'*')

xlabel('domain fungsi')

ylabel('Range fungsi')

title('Latihan membuat grafik')

2 4 6 8 10 12 14 164

6

8

10

12

14

16

domain fungsi

Ran

ge fu

ngsi

Latihan membuat grafik

4 Melukiskan grafik dalam bentuk batang garis

bar(x,f,'r')

2 4 6 8 10 12 14 160

5

10

15

domain fungsi

Ran

ge fu

ngsi

Latihan membuat grafik

5 Mengambar grafik f pada domain x dengan bentuk diagram lingkaran

pie(x,y) 2%2%2%4%

4%

5%

3%

4%

5%

6%

6%

5% 7%5%

4%

7%

8%

5%

8%

9%

3.4 Mendefinisikan Fungsi Polynomial Berdasarkan Koefesien Persamaan

Ripai, S.Pd., M.Si

143

Page 34: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Apabila dalam fungsi polynomial, diketahui koefesien fungsinya, maka kita dapat

mendefinisikan persaman fungsi dan mengambar grafik serata teknik komputasi

matematika lainnya dengan cara sebagai berikut:

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

1 Pendefinisian fungsi f(x)=x2 -5x+6

f=[1 -5 6] f = 1 -5 6

2 Menghitung nilai f(0)

polyval(f,0) ans =6

3 Mengambar grafik f pada domain 0≤x≤5 dengan ∆x = 0.25

x=0:0.25:5;y=polyval(f,x);plot(x,y)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1

0

1

2

3

4

5

6

4 Menentukan akar persamaan dari f(x)

roots(f) ans = 3.0000 2.0000

5 Menuliskan persamaan fungsi

poly2sym(f) ans = x^2-5*x+6

3.4 Mendefinisikan Fungsi Trigonometri

Pendefinisian fungsi trigonometri dapat dilakukan dengan cara sebagai berikut:

Tabel 2.5 Komputasi fungsi trigonometri

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

1 Mendefinisikan domain fungsi sinus

syms x f=sin(x)

f = sin(x)

2 Menghitung nilai dari sin 30

subs(f,30) ans = -0.9880

3 Menghitung nilai dari sin 300

subs(f,30.*pi./180) ans = 0.5000

4 Mengambar contoh grfaik fungsi sinus

ezplot(f)

-6 -4 -2 0 2 4 6

-1

-0.5

0

0.5

1

x

sin(x)

Ripai, S.Pd., M.Si

143

Page 35: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP KALKULUS PERINTAH PADA Command Window MATLAB

OUTPUT

5 Menggambar grafik fungsi f pada domain [0:60]

x=[0:60];ezplot(f,x)

0 10 20 30 40 50 60

-1

-0.5

0

0.5

1

x

sin(x)

6 Bentuk jumlah sinus syms x yexpand(sin(x+y))

ans =cos(x)*sin(y) + cos(y)*sin(x)

7 Bentuk selisih sinus expand(sin(x-y)) ans =cos(y)*sin(x) - cos(x)*sin(y)

8 Bentuk jumlah kosinus

expand(cos(x+y)) ans = cos(x)*cos(y) - sin(x)*sin(y)

9 Bentuk selisih sinus expand(cos(x-y)) ans=cos(x)*cos(y) + sin(x)*sin(y)

10 Bentuk jumlah tangent

pretty(expand(tan(x+y)))

11 Bentuk selisih tangent

pretty(expand(tan(x-y)))

12 Bentuk perkalian scalar

expand([sin(2*x),cos(2*y)])

ans = [ 2*cos(x)*sin(x), cos(y)^2 - sin(y)^2]

13 Bentuk sederhana dari sin x2 + cos x2

simplify(sin(x)^2 + cos(x)^2)

ans=1

Dengan cara yang sama, dapat dikontruksi untuk fungsi-fungsi trigonometri lainnya. Berikut

diberikan tabel perintah dasar pendefinisian fungsi trigonometri.

No Fungsi Deskripsi Pendefinisian komputasi

1 acos Inves kosinus acos (x)

2 acosh Invers hiperbola kosinus acosh(x)

3 acot Invers kotangen acot(x)

4 acoth Invers hiperbola kotangen acoth(x)

5 acsc Invers Kosekan acsc(x)

6 acsch Invers hiperbola kosekan acsch(x)

7 asec Invers Sekan asec(x)

8 asech Invers hiperbola sekan asech(x)

Ripai, S.Pd., M.Si

143

Page 36: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Fungsi Deskripsi Pendefinisian komputasi

9 asin Invers Sinus asin(x)

10 asinh Invers hiperbila sinus asinh(x)

11 atan Invers hiperbola tangent atan(x)

12 atanh Inver hiperbola tangent atanh(x)

13 cos Kosinus cos(x)

14 cosh Kosinus hiperbola cosh(x)

15 cot Kotangen cot(x)

16 coth Kotangen hiperbola coth(x)

17 csc Kosekan csc(x)

18 csch Kosekan hiperbola csch(x)

19 sec Sekan sec(x)

20 sech Sekan hiperbola sech(x)

21 sin Sinus sin(x)

22 sinh Sinus hiperbola sinh(x)

23 tan Tangent tan(x)

24 tanh Tangent hiperbola tanh(x)

TUGAS 2Kerjakan intruksi berikut ini dengan benar, dan dikumpulkan pada pertemuan

berikutnya!

Intruksi:

1. Buatlah masing-masing minimal 5 buah fungsi polynomial dan fungsi

rasional kemudian lakukan komputasi sebagaimana pada kegiatan 1.1

dan 1.2

2. Buatlah data fungsi sekurang-kurangnya 3 dengan banyaknya data

minimal 30 dan lakukan komptasi sebagaimana pada kegiatan 1.3

Ripai, S.Pd., M.Si

143

Page 37: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

3. Batlah minimal 5 buah fungsi polynomial yang diketahui koefesien

fungsinya dan lakukan komputasi sebagaimana pada kegiatan 2.4

4. Buatlah minimal 3 buah fungsi untuk masing-masing dari 24 jenis fungsi

trigonometri sebagaimana yang terdapat pada tabel sebelumnya

kemudiab lakukan komputasi untuk menentukan grafik, dan

mengevaluasi suatu nilai tertentu.

Bismillahirrahmanirraim.

Pada pertemuan sebelumnya, telah di bahas pemograman command windows

untuk mendefinisikan fungsi matematika. Setiap mahasiswa harus dapat

memastikan dirinya bahwa materi sebelumnya tersebut telah tuntas di kuasai.

Pada pertemuan kali ini akan dibahasa tentang bagaimana pemograman

komputasi untuk kalkulus dasar pada comad window. Perkualiahan ini

diselenggarakan dengan asumsi mahasiswa telah menguasai konsep kalkulus

dasar yang meliputi, limit fungsi, Asismtot kurva, Maksimum dan minimum

fungsi, diperensial dan garis singgung pada kurva serta integral dan luas

daerah di bahwah kurva. Bagi mahasiswa yang belum tuntas materi tersebut,

diharapkan untuk belajar individu atau berdiskusi dengan mahasiswa lainnya.

4.1 Pemograman Limit Fungsi

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Pendefinisian fungsi rasional

syms xf1=3*x^2 + 6*x -1; f2= x^2 + x - 3;f=f1/f2

f =(3*x^2+6*x-1)/(x^2+x-3)

Ripai, S.Pd., M.Si

4 Pemograman Kalkulus Dasar Pada Comand Window MATLAB

143

Page 38: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

pretty(f)

2 Gambar grafik fungsi f(x)

ezplot(f)

-6 -4 -2 0 2 4 6-4

-2

0

2

4

6

8

x

(3 x2+6 x-1)/(x2+x-3)

3 Menghitung nilai limit(f,x,-3,'left') ans =8/3

4 Menghitung nilai limit(f,x,-3,'right') ans =

8/3

5 Menghitung nilai limit(f,-3) ans =8/3

6 Menghitung nilai limit(f,x,inf) ans =3

7 Menghitung nilai limit(f,x,-inf) ans =3

8 Simulasi double(limit(f,x,-2.3799,'left'))

ans = 6.0290

9 Hitung double(limit(f,x,-2.7399,'right'))

ans =

2.8757

10 Simulasi x=[-10:0.25:-2.7399];ezplot(f,[-10 10]) hold onplot(x,subs(f,x),'.r')

-10 -8 -6 -4 -2 0 2 4 6 8 10

-1

0

1

2

3

4

5

6

7

x

(3 x2+6 x-1)/(x2+x-3)

X: -9.75Y: 2.742

Ripai, S.Pd., M.Si

143

Page 39: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

11 Simulasi x1=[-10:0.25:-2.7399];x2=[-2.7399:0.25:0.5]; x=[-10:0.001:10];ezplot(f1/f2,x)hold onplot(x1,subs(f,x1),'.r')hold onplot(x2,subs(f,x2),'*y') -10 -8 -6 -4 -2 0 2 4 6 8 10

-1

0

1

2

3

4

5

6

7

X: -6.5Y: 2.649

x

(3 x2+6 x-1)/(x2+x-3)

4.2 Menentukan Asimtot Kurva

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Definisikan fungsi syms xf1=3*x^2 + 6*x -1; f2= x^2 + x - 3;f=f1/f2pretty(f)

f =(3*x^2+6*x-1)/(x^2+x-3)

2 Gambar grafik fungsi f(x)

ezplot(f)

-6 -4 -2 0 2 4 6-4

-2

0

2

4

6

8

x

(3 x2+6 x-1)/(x2+x-3)

3 Menentukan asimtot Horizontal kurva

y=limit(f, inf) y =3

4 Menentukan asimtot vertical kurva

x=solve(f2) x = -1/2+1/2*13^(1/2) -1/2-1/2*13^(1/2)

5 Mengambar garis asimtot horizontal

hold onplot([-2*pi 2*pi], [3 3],'g')

Ripai, S.Pd., M.Si

143

Page 40: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

6 Mengambar garis asimtoto Vertikal

plot(double(x(1))*[1 1], [-5 10],'r')plot(double(x(2))*[1 1], [-5 10],'r')

-6 -4 -2 0 2 4 6-4

-2

0

2

4

6

8

x

(3 x2+6 x-1)/(x2+x-3)

4.3 Menentukan Nilai Maksimum dan Minimum Kurva

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Definisikanfungsi syms xf1=3*x^2 + 6*x -1; f2= x^2 + x - 3;f=f1/f2pretty(f)

f =(3*x^2+6*x-1)/(x^2+x-3)

2 Gambar grafik fungsi f(x)

ezplot(f)

-6 -4 -2 0 2 4 6-4

-2

0

2

4

6

8

x

(3 x2+6 x-1)/(x2+x-3)

3 Mencari turunan pertama dari f

df=diff(f) df =(6*x+6)/(x^2+x-3)-(3*x^2+6*x-1)/(x^2+x-3)^2*(2*x+1)

4 Bentuk sederhana dari df

df= simplify(df) df =-(3*x^2+16*x+17)/(x^2+x-3)^2

5 Mempercantik fungsi df

pretty(df)

6 Mencari nilai x sehingga df(x)=0

x=solve(df) x = -8/3-1/3*13^(1/2) -8/3+1/3*13^(1/2)

Ripai, S.Pd., M.Si

143

Page 41: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

7 Menggambar koordinat titik ekstrikMenuliskan keterangan posisi Minimum LokalMenuliskan keterangan posisi Maksimum Lokal

plot(double(x), double(subs(f,x)),'ro') text(-5.5,3.2,'Minimum Lokal' text(-2.5,2,'Maksimum Lokal')

-6 -4 -2 0 2 4 6-4

-2

0

2

4

6

8

x

(3 x2+6 x-1)/(x2+x-3)

Local minimumMinimum Lokal

Maksimum Lokal

4.4 Pemograman Turunan fungsi dan Garis Singgung Pada Kurva

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Definisikan x dan h sebagai symbol matematika

syms x h

2 Menentukan nilai limit((sin(x+h)-sin(x))/h,h,0) ans =cos(x)

3 Pendefinisian fungsi f(x)=x2 -5x+6

f=x^2-5*x+6 f =x^2-5*x+6

4 Mengambar grafik fungsi f pada domain -10≤x≤10

ezplot(f,[-10 10])

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

20

40

60

80

100

120

140

160

x

x2-5 x+6

5 Turunan pertama dari fungsi f dan sebut hasilnya sebagai fungsi df

df=diff(f) df =2*x-5

6 Turunan ke-2 dari fungsi f

diff(f,2) ans =2

7 Menentukan nilai x sehingga f(x) minimum

x=solve(df) x =5/2

8 Menulsikan dalam bentuk decimal dari x

x=double(x) x = 2.5000

Ripai, S.Pd., M.Si

143

Page 42: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

9 Menghitung nilai minimum fungsi

fmin=subs(f,x) fmin = -0.2500

10 Menentukan kemiringan kurva pada titik x = 3.5

m=subs( df,3.5) m =2

9 Persamaan garis singgung kurva pada titik (1.5,f(1.5)) dan disebut sebagai g

a=1.5;b=subs(f,a);m=subs(df,a);g=m*(x-a)+b

g =-2*x+15/4

10 Mengambar garis singgung kerva f(x) pada titik (1.5,f(1.5))

ezplot(f,[-4:8])hold onezplot(g,[-4:8])

-4 -2 0 2 4 6 8

-10

-5

0

5

10

x

-2 x+15/4

10 Mendefinsikan fungsi inplisit x2 + y2=4

syms x yh=x^2+y^2-4pretty(h)

h =x^2+y^2-4

11 Turunan inplisit dari x2+y2=4 terhadap x

diff(h,x) ans =2*x

12 Turunan inplisit dari x2+y2=4 terhadap y

diff(h,y) ans =2*y

4.5 Pemograman Integral Fungsi dan Luas Daerah di Bawah Kurva

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Pendefinisian fungsi f(x)=x2 -5x+6

syms x f=x^2-5*x+6

f =x^2-5*x+6

2 Integrat fungsi f(x) int(f) ans =1/3*x^3-5/2*x^2+6*x

3 Mendefinsikan hasil integral dari f sebagai fungsi dalam g

g=int(f) g =1/3*x^3-5/2*x^2+6*x

Ripai, S.Pd., M.Si

143

Page 43: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

4 Menuliskan dalam bentuk yang lebih bagus formula fungsi g

pretty(g)

5 Menghitung nilai int(f,0,5) ans =55/6

6 Menuliskan bentuk 55/6 ke dalam bentuk decimal

double(55/6) ans = 9.1667

7 Membuat domain fungsi pada interval 0≤x≤5 dengan ∆x = 0.25

x=[0:0.25:5] x = Columns 1 through 11 0 0.2500 0.5000 0.7500 1.0000 1.2500 1.5000 1.7500 2.0000 2.2500 2.5000 Columns 12 through 21 2.7500 3.0000 3.2500 3.5000 3.7500 4.0000 4.2500 4.5000 4.7500 5.0000

8 Membuat Range fungsi f(x)

y=subs(f,x); y = Columns 1 through 11 6.0000 4.8125 3.7500 2.8125 2.0000 1.3125 0.7500 0.3125 0 -0.1875 -0.2500 Columns 12 through 21 -0.1875 0 0.3125 0.7500 1.3125 2.0000 2.8125 3.7500 4.8125 6.0000

9 Menggmbar grafik fungsi f(x) pada domain x dengan dibawah kurvanya diarsir

area(y)

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1

0

1

2

3

4

5

6

10 Menghitung Luas di bawah kurva f(x) pada domain 0≤x≤5 dengan ∆x = 0.25

L=double(int(f,0,2)+abs(int(f,2,3))+int(f,3,5))

L =9.5000

Ripai, S.Pd., M.Si

143

Page 44: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

11 Menuliskan keterangan luas daerah pada kurva pada koordinat (2,2)

text(2,2,(['Luas = ',num2str(double(L))]))

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1

0

1

2

3

4

5

6

Luas = Luas = Luas = Luas = 9.5

12 Menuliskan keterangan pada sumbu x (absis)

Menuliskan keterangan pada sumbu y (ordinat)

Menuliskan judul fungsi

Melukiskan garis koordinat

Membuat keterangan

xlabel('Domain Fungsi')

ylabel('Range Fungsi')

title('Grafik fungsi f(x) = x^2-5x+6')grid on

legend('Simulasi luas di bawah kurva')

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1

0

1

2

3

4

5

6

Luas = Luas = Luas = Luas = 9.5

Domain Fungsi

Ran

ge F

ungs

i

Grafik fungsi f(x) = x2-5x+6

Simulasi luas di bawah kurva

10 Mendefinsikan fungsi inplisit x2 + y2=4

syms x yh=x^2+y^2-4pretty(h)

h =x^2+y^2-4

11 Integral dari fungsi inplisit x2+y2=4 terhadap x

int(f,x)pretty(int(f,x))

ans =1/3*x^3+y^2*x-4*x

12 Integral dari fungsi fungsi inplisit x2+y2=4 terhadap y

int(f,y)pretty(int(f,y))

ans =x^2*y+1/3*y^3-4*y

TUGAS 4Intruksi tugas individu 4

1. Mahasiswa membuat makalah terkait

a. Limit fungsi

b. Asimtot horizontal dan vertical

c. Nilai maksimum dan minimum fungsi

Ripai, S.Pd., M.Si

143

Page 45: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

d. Diferensial dan garis singgung pada kurva serta

e. Integral dan luas di bawah kurva

f. Integral dan Volume benda putar

2. Pada makalah tersebut, setiap materi diberikan penyelesaian dengan

komputasi matematika sebagaimana uraian pada materi sebelumnya

Ripai, S.Pd., M.Si

143

Page 46: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Matriks merupakan susunan data yang disajikan dalam bentuk baris dan

kolom. Dalam bernagai bidang keilmuan, konsep matriks umumnya selalu

dipergunakan. Seperti tabulasi data, jadwal kegiatan, graph, system

persamaan linier dan lain sebagainya. Matematika sebagai konsep fikir,

memberikan berbagai metode ilmiah yang rasional untuk memudahkan

penyelesaian masalah kehidupan dengan matriks. Matlab sebagai

pemograman dengan bahasa dasar berbasis matriks, memberikan berbagai

teknik komputasi. Berikut diberikan teknik komputasi Matriks dengan Matlab.

Mahasiswa diharapkan sudah memiliki pengetahuan dasar-dasar matriks

sebagaimana yang diuraikan dalam aljabar linie dan mata kuliah lainnya.

5.1 Operasi Uner (tunggal) pada Matriks

NO

KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Pendefinisian matriks dalam bentuk satu baris

A=[13 54 23 78 21] A = 13 54 23 78 21

2 Transpose Matriks A

A' ans = 13 54 23 78 21

3 Pendefinisian matriks dalam bentuk satu kolom

B=[13;45;63;78;98;76] B = 13 45 63 78 98 76

Ripai, S.Pd., M.Si

5 Pemograman Matrik Pada Comand Window MATLAB

143

Page 47: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

4 Transpose Matriks B

B' ans = 13 45 63 78 98 76

5 Mendefinisikan matriks dalam bentuk 3 baris dan 4 kolom

C=[3 4 2 6;5 8 9 2;4 5 6 7] C =3 4 2 65 8 9 24 5 6 7

6 Transpose Matriks C

C' ans = 3 5 4 4 8 5 2 9 6 6 2 7

7 Mengambil elemen baris ke-2 kolom ke-3 matriks C

C(2,3) ans =

9

8 Mengambil elemen matriks pada baris ke-3 dari matriks C

C(3,:) ans = 4 5 6 7

9 Mengambil elemen matriks pada kolom ke-2 dari matrikc C

C(:,2) ans = 4 8 5

10 Mengambil elemen matrik C pada baris terakhir

C(end,:) ans = 4 5 6 7

11 Mengambil elemen matrik C pada kolom terakhir

C(:,end) ans =

6 2 7

12 Mengambil elemen matriks C dari baris ke-1 sampai baris ke-2

C(1:2,:) ans = 3 4 2 6 5 8 9 2

13 Mengambil elemen matriks C dari kolom ke-2 sampai kolom ke-3

C(:,2:3) ans = 4 2 8 9 5 6

14 Mengambil C(2:3,3:4) ans =

Ripai, S.Pd., M.Si

143

Page 48: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

elemen matriks C dari baris ke-2 sd baris ke 3 dan kolom ke-3 sd kolom ke-4

9 2 6 7

15 Menghapus Elemen matriks C pada kolom ke-2

C(:,2)=[] C = 3 2 6 5 9 2 4 6 7

16 Menjumlahkan elemen pada kolom matriks C

sum(C) ans =

12 17 1517 Menjumlahkan

elemen pada kolom matriks C

sum(C’) ans = 11 16 17

18 Menghitung determinan matriks C

det(C) ans = 63

19 Menentukan inver matriks C

inv(C) ans =

0.8095 0.3492 -0.7937 -0.4286 -0.0476 0.3810 -0.0952 -0.1587 0.2698

20 Menghitung eigen value matriks C

eig(C) ans =

14.9286 2.0357 + 0.2758i 2.0357 - 0.2758i

21 Menentukan eigen value dan vector eigen dari matriks C

[v e]=eig(C)

Ripai, S.Pd., M.Si

143

Page 49: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

22 Menyimpan eigen value dan vector eigen ke dalam bentuk excel

xlswrite('Coba simpan',[v u])

23 Melihat hasil simpanan tersebut

24 Mengambil data matriks dari excel untuk dimasukkan ke dalam Matlab

xlsread('Coba simpan','sheet1')

25 Membentuk matriks nol satu baris 5 kolom

zeros(1,5) ans = 0 0 0 0 0

26 Membentuk matriks nol 4 baris 1 kolom

zeros(4,1) ans = 0 0 0 0

27 Membentuk matriks nol dengan 4 baris dan 5 kolom

c(4,5) ans =

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Ripai, S.Pd., M.Si

143

Page 50: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

28 Membentuk matriks satuan dengan 1 baris dan 5 kolom

ones(1,5) ans =

1 1 1 1 1

29 Membentuk matriks satuan dengan 4 baris dan 1 kolom

ones(4,1) ans =

1 1 1 1

30 Membentuk matriks satuan dengan empat baris dan 5 kolom

ones(4,5) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

31 Menentukan rank matriks A

rank(C) ans = 3

12 Membuat matriks identitas berukuran 3 baris dan 3 kolom

eye(3,3) ans = 1 0 0 0 1 0 0 0 1

33 Menentukan elemen diagonal dari matriks C

diag(C) ans = 3 9 7

5.2 Operasi Biner Pada Matriks

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1 Mendefinisikan matriks A dan B

A=[1 2 3;5 4 3;6 7 4]B=[5 4 3;8 6 2;0 9 8]

A =

1 2 3 5 4 3 6 7 4B = 5 4 3 8 6 2 0 9 8

2 Menentukan nilai C=A+B C =

Ripai, S.Pd., M.Si

143

Page 51: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

dari C=A+B 6 6 6 13 10 5 6 16 12

3 Menentukan nilai dari D=A-B

D=A-B D =

-4 -2 0 -3 -2 1 6 -2 -4

4 Menentukan hasil dari perkalian skalar konstanta dengan matriks

2*A ans =

2 4 6 10 8 6 12 14 8

5 Menentukan hasil perkalian sklar dua buah matriks

A.*B ans =

5 8 9 40 24 6 0 63 32

6 Menentukan hasil perkalian dua buah matriks

A*B ans =

21 43 31 57 71 47 86 102 64

7 Mengabungkan matriks A dan B berdasarkan kolom

[A B] ans =

1 2 3 5 4 3 5 4 3 8 6 2 6 7 4 0 9 8

8 Mengabungkan matriks A dan B berdasarkan Baris

[A;B] ans =

1 2 3 5 4 3 6 7 4 5 4 3 8 6 2 0 9 8

Ripai, S.Pd., M.Si

143

Page 52: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

9 Menyajikan Koefesien SPLX1 + x2-3x3 = 52x1-4x2-x3 = 8X1 – 5x2 + x3 = 12

Ke dalam bentuk matriks

A=[1 1 -3;2 -4 -1;1 -5 1]B=[5;8;12]

A = 1 1 -3 2 -4 -1 1 -5 1

B = 5 8 12

10 Menentukan Solusi SPL dengan mengunakan metode invers matriks

X=inv(A)*B X =

-14.8333 -7.1667 -9.0000

12 Menentukan solusi SPL dengan metode pembagian matriks

X=A\B =

-14.8333 -7.1667 -9.0000

13 Memeriksa kesamaan dua buah matrks

isequal(A,B) ans = 0

isequal(A,A) ans = 1

14 Bentuk matriks dekomposisi LU dari matriks A

[L U P]=lu(A) L = 1.0000 0 0 -0.1111 1.0000 0 0.2222 -0.6056 1.0000

U = 9 -1 2.0000 0 7.8889 -4.7778 0 0 3.6620

P = 0 1 0 1 0 0 0 0 1

15 Memeriksa L*U L*U ans = 9 -1 2 -1 8 -5

Ripai, S.Pd., M.Si

143

Page 53: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

2 -5 716 Memeriksa P*A P*A ans =

9 -1 2 -1 8 -5 2 -5 7

17 Menuliskan matriks jarak dari suatu graph berarah

Asl Tjn Jarak

4 1 456 2 412 3 515 3 326 3 293 4 155 4 361 5 212 5 321 6 994 6 38

Asl=[4 6 2 5 6 3 5 1 2 1 4];Tjn=[1 2 3 3 3 4 4 5 5 6 6];Jrk=[45 41 51 32 29 15 36 21 32 99 38];G=sparse(Asl,Tjn,Jrk)

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

18 Membuat gambar graph berarah dari titik asal ke titik tujuan

view(biograph(G,[],'ShowWeights','on'))

19 Menuliskan matriks lintasan jarak 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

Ripai, S.Pd., M.Si

143

Page 54: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

89 41 29 44 73 020 Menentukan

matriks jacobian dari SPNL berikut2x2-3y+z3 = 54x+3y3 + 2sin(z) = 12xy-y2 + 5z = 9.5

syms x y z M=[2*x^2-3*y+z^3-5;4*x+3*y^3+2*sin(z)-12;x*y-y^2+5*z-9.5] J=jacobian(M)

M = 2*x^2-3*y+z^3-5 4*x+3*y^3+2*sin(z)-12 x*y-y^2+5*z-19/2

J =[ 4*x, -3, 3*z^2][ 4, 9*y^2, 2*cos(z)][ y, x-2*y, 5]

21 Mensubtitusikan nilai x= 0

Jx=subs(J,0) Jx = [ 0, -3, 3*z^2][ 4, 9*y^2, 2*cos(z)][ y, -2*y, 5]

22 Mensubtitusikan nilai y=0

Jxy=subs(Jx,0) Jxy =[ 0, -3, 3*z^2][ 4, 0, 2*cos(z)][ 0, 0, 5]

23 Mensubtirusikan nilai dari z=0

Jxyz=subs(Jxy,0) Jxyz = 0 -3 0 4 0 2 0 0 5

TUGAS 5

Intruksi Tugas

1. Buatlah suatu matriks dari Koefesien SPL dengan minimal 50 Variabel

pada excel kemudian :

a. Masukkan data tersebut ke dalam matlab

b. Tentukan Determina dan inversnya

c. Tentukan Solusi SPL

d. Simpan Hasilnya ke dalam Matlab

Ripai, S.Pd., M.Si

143

Page 55: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

2. Cari contoh kasus suatu graph berarah kemudian

a. Definisikan matriks graph berarah tersebut

b. Tentukan Matriks lintasan terpendek

c. Buatkan model grafik dari graph berarah tersebut

Ripai, S.Pd., M.Si

143

Page 56: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim

Data merupakan kumpulan dari fakta-fakta kejadian yang tercatat, dan suatu

ukuran yang menyatakan karakteristik dari data disebut statistic. Misalnya

dimiliki fakta kejadian hasil tes belajar x = [56 30 25 67 97 56 78 45 67 90],

maka suatu bilangan yang dapat dipakai untuk menyatakan wakil dari data

tersebut adalah 61,1 yang selanjutnya disebut dengan rataan data x. Rataan

ini merupakan statistic dari data x. Terdapat banyak jenis statistic yang dapat

dikaji dari data tersebut. Beberapa teknik komputasi yang dapat digunakan

untuk menentukan parameter statistika akan diuraikan di bawah ini.

Mahasiswa dituntut untuk dapat menguasai konsep dasar teori statistika

tersebut. Karena tanpa memahami konsep dasar dengan benar, maka roh

komputasinya tidak akan dirasakan oleh mahasiswa dan tentunya hal tersebut

menjadi tidak dapat dimengerti. Oleh karena itu, mahasiswa dituntut untuk

memiliki penguasaan awal yang baik tentang statistic. Berdiskusi, dengan

teman dan dosen serta banyak membaca buku adalah alternative solusi yang

baik.

4.1. Bahasa Dasar Komputasi Statistika Matematika

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1.1

Mendefinisikan data x=[56 30 25 67 97 56 78 45 67 90]

x = 56 30 25 67 97 56 78 45 67 90

2.2

Rataan data mean(x) ans = 61.1000

Ripai, S.Pd., M.Si

6 Pemograman Statistika Matematika Pada Comand Window MATLAB

PETENSI I

143

Page 57: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

3.3

Median data x Median(x) ans = 61.5000

4. Standar Deviasi std(x) ans = 23.7133

5. Varians var(x) ans = 562.3222

6.4

Mengurutkan data x dari terkecil

sort(x) ans = 25 30 45 56 56 67 67 78 90 97

7.5

Menghitung nilai dari

Misal ambil: dan

Dengan variabel

random x

sebagaimana nomor

1

f=pdf('normal',x,mean(x),std(x))

atauf=normpdf(x,mean(x),std(x))

f = Columns 1 through 7

0.0164 0.0071 0.0053 0.0163 0.0053 0.0164 0.0131

Columns 8 through 10

0.0134 0.0163 0.0080

8.6

Mengambar kurva normal baku pada domain -5≤x≤5 dengan ∆x=0.1

x=[-5:0.1:5];f=pdf('normal',x,0,1)plot(x,y)

Catatan: f tersebut dapat didefinisikan dengan cara yang lain sebagai berikut:f=normpdf(x,0,1)

-5 -4 -3 -2 -1 0 1 2 3 4 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

9.7

Menghitung luas di bawah kurva normal baku pada domain x≤2

L=cdf('normal',2,0,1)Atau dengan cara berikut:L=normcdf(2,0,1)

L = 0.9772

10.8

Menghitung luas di bawah kurva normal baku pada domain 0≤x≤2

L=cdf('normal',2,0,1)-0.5Atau dengan cara berikut:L=normcdf(2,0,1)-0.5

L = 0.4772

Ripai, S.Pd., M.Si

143

Page 58: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

11.9

Menggambar luas grafik di bawah kurva normal pada domain 0≤x≤2 dengan domain simulasi dari -5≤x≤5

X=[-5:0.01:5];x=[0:0.01:2];F=pdf('normal',X,0,1);f=pdf('normal',x,0,1);plot(X,F,'r')hold onarea(x,f)text(mean(x),mean(f),(['L=',num2str(L*100),'%']))

-5 -4 -3 -2 -1 0 1 2 3 4 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

L=47.725%

12.10

Menentukan nilai Z sehingga luas di bawah ujung kiri kurva normal baku 2.5%

Z=norminv(0.025) Z = -1.96

13.11

Menentukan nilai Z sehingga luas daerah di bawah ujung kanan kurva normal baku 2.5%

Z=norminv(0.975) Z = 1.96

14.12

Menghitung P(x=6.5) untuk X~N(x,µ, ) dengan µ = 7.25 dan

= 1.13

P=normpdf(6.5,7.25,1.13) P = 0.28

15.13

Menghitung P(x≤6.5) untuk X~N(x,µ, ) dengan µ = 7.25 dan

= 1.13

P=normcdf(6.5,7.25,1.13) P = 0.25

16.14

Menghitung P(x≥8.5) untuk X~N(x,µ, ) dengan µ = 7.25 dan

= 1.13

P=1-normcdf(8.5,7.25,1.13) P = 0.13

17.15

Menghitung P(6.5≤x≤8.5) untuk X~N(x,µ, ) dengan µ

= 7.25 dan = 1.13

x=[6.5:0.0001:8.5]; f=normpdf(x,7.25,1.13);P=sum(f*0.0001) AtauP=normcdf(8.5,7.25,1.13)-normcdf(6.5,7.25,1.13)

P = 0.61

18.16

Menghitung P(=6.5) untuk X~N(x,µ,

) dengan µ = 7.25,

= 1.13 dan n = 3

z=(6.5-7.25)/(1.13/sqrt(3))P=normpdf(z,0,1)

z = -1.15P = 0.21

19.17

Menghitung P( P=normcdf(z,0,1) P = 0.13

Ripai, S.Pd., M.Si

143

Page 59: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

≤6.5) untuk X~N(x,µ,) dengan µ = 7.25,

= 1.13 dan n = 320.18

Menghitung P(≥8.5) untuk X~N(x,µ,

) dengan µ = 7.25,

= 1.13 dan n = 3

z=(8.5-7.25)/(1.13/sqrt(3))P=1-norcdf(z,0,1)

z = 1.92P = 0.03

21.19

Menghitung P(6.5≤≤8.5) untuk

X~N(x,µ, ) dengan µ

= 7.25, = 1.13 dan n = 3

z1=(6.5-7.25)/(1.13/sqrt(3))z2=(8.5-7.25)/(1.13/sqrt(3))P=normcdf(z2,0,1)-normcdf(z1,0,1)

z1 = -1.15z2 = 1.92P = 0.85

22.2

Menghitung

P( =6.5)

untuk X1 dan X2

terdistribusi Normal dengan µ1 = 7.25, 1= 1.13, n1 = 3 dan µ2

= 6.25, 2= 1.5, n2 = 3

u1=7.25;s1=1.13;n1=3;u2=6.25;s2=1.5;n2=3;z=(6.5-(u1-u2))/sqrt(s1/n1+s2/n2)P=normpdf(z,0,1)format longP=normpdf(z,0,1)

z = 5.87P = 0.00

P = 2.578964960253331e-009

23.2

Menghitung

P( 6.5)

untuk X1 dan X2

terdistribusi Normal dengan µ1 = 7.25, 1= 1.13, n1 = 3 dan µ2

= 6.25, 2= 1.5, n2 = 3

P=normcdf(z,0,1) P = 0.99999999959040

24.2

Menghitung

P( ≥8.5)

untuk X1 dan X2

terdistribusi Normal dengan µ1 = 7.25, 1= 1.13, n1 = 3 dan µ2

= 6.25, 2= 1.5, n2 = 3

z=(8.5-(u1-u2))/sqrt(s1/n1+s2/n2)P=1-normcdf(z,0,1)

z = 8.27721918366601P = 1.110223024625157e-016

25.2

Menghitung

P(6.5≤ ≤8.

5) untuk X1 dan X2

terdistribusi Normal

z1=(6.5-(u1-u2))/sqrt(s1/n1+s2/n2)z2=(8.5-(u1-u2))/sqrt(s1/n1+s2/n2)

z1 = 6.14116262013930z2 = 8.27721918366601

Ripai, S.Pd., M.Si

143

Page 60: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

dengan µ1 = 7.25, 1= 1.13, n1 = 3 dan µ2

= 6.25, 2= 1.5, n2 = 3

P=normcdf(z2,0,1)-normcdf(z1,0,1)

P = 4.095982442109403e-010

26.2

Mengambar kurva distribusi Chi-Kuadrat pada domain 0≤chi≤20 dengan ∆x = 0.001 dan dk = 5

x=[0:0.001:20]; f=chi2pdf(x,5); plot(x,f)

0 2 4 6 8 10 12 14 16 18 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

27.2

Mengarsir daerah di bawah kurva chi-kuadarat pada domain 0≤chi≤8 dengan ∆x = 0.01 dan dk = 5

X=[0:0.001:8];F=chi2pdf(X,5);hold onarea(X,F)

0 2 4 6 8 10 12 14 16 18 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

28.2

Menghitung Luas daerah di bawah kurva chi-kuadarat pada domain 0≤chi≤8 dengan ∆x = 0.001 dan dk = 5

L=sum(F*0.001) L = 0.8438

29.2

Menuliskan luas daerah pada koordinat (4,0.06)

text(4,0.06,(['L=',num2str(L*100),'%']))

0 2 4 6 8 10 12 14 16 18 200

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

L=84.3792%

30.2

Menentukan nilai chi (chi tabel) sehingga luas dibawah kurva ujung kanan 5%

chi2inv(0.95,5) ans = 11.0705

31.2

Menentukan nilai chi (chi tabel) sehingga luas dibawah kurva ujung kiri 5%

chi2inv(0.05,5) ans = 1.1455

32.3

Menentukan nilai z (z table) sehingga luas dibawah kurva ujung kanan 5/2%

norminv(0.975,0,1) ans = 1.9600

33. Menentukan nilai t table dengan dk = 41

tinv(0.975,41) ans = 2.0195

Ripai, S.Pd., M.Si

143

Page 61: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

sehingga luas dibawah kurva t ujung kanan 5/2%

34. Menentukan nilai f table dengan dk1=11 dan dk2 = 13 sehingga luas dibwah kurva f ujung kanan 5%

finv(0.95,11,13) ans = 2.6347

Selanjuntanya, untuk mensimulasikan definisi beberapa distribusi peluang

data, maupun kumulatif peluang seperti, distribusi normal, distribusi student,

distribusi fhiser, distribusi chi-kuadrat, distribusi binomial, distribusi

hipergeometris, distribusi geometris, distribusi poissen dan lainnya. Perintah

yang diberikan adalah

>> disttool

dan akan diperoleh output sebagai berikut:

TUGAS

Intruksi Tugas1. Buat suatu data minimal terdiri dari 150 fakta2. Lakukan komputasi sebagaimana uraian pada table diskusi

tersebut di atas3. Buatkan laporan dengan menyertai teori statistika dan bentuk

komputasi serta out[utnya.Tugas dikumpulkan minggu depan

Ripai, S.Pd., M.Si

143

Page 62: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim

Pada bagian ini, akan diuraikan beberapa bahasa dasar komputasi untuk topic-topik khusus matematika yang umumnya digunakan dalam penyelesaian matematik.

6.1 Matematika Diskrit

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1.1

= bilangan bulat terbesar yang nilainya ≤ x

floor(3.9) ans = 3

2.Mengambar grafik

fungsi floor

x=[0:0.1:10]; f=floor(x); plot(x,f)

0 1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

8

9

10

3. = bilangan bulat terkecil yang nilainya ≥ x

ceil(3.9) ans = 4

4. Mengambar grafik fungsi ceiling bersaamndengan grafik fungsi floor dengan warna merah

hold on g=ceil(x);plot(x,g,'r')

0 1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

8

9

10

5.3

Pembulatan bilangan

round(3.9) ans = 4

round(3.3) ans = 3

Ripai, S.Pd., M.Si

7 Komputasi Topik-Topik Khusus Matematika

143

Page 63: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

6. Menggambar grafik fungsi round bersamaan dengan grfaik fungsi floor dan ceiling dengan warna hitam

hold on h=round(x); plot(x,h,'k')

0 1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

8

9

10

7.4

n! = nx(n-1)x(n-2)x. . .x2x1 untuk n bilangan Asli dan 0! = 1

factorial(5) ans = 120

8.5

Permutasi r unsur dari n unsure adalah

factorial(5)/factorial(5-2) ans = 20

9. Kombinasi r unsure dari n unsure

factorial(5)/(factorial(5-2)*factorial(2))

ans =

10

10.3

Memeriksa apakah 11 sebuah bilangan prima

isprime(11) ans = 1

isprime(12) ans= 0

11. Membentuk barisan bilangan prima hingga nilainya <10

primes(10) ans =

2 3 5 712. Memeriksa apakah

11 bilngan realisreal(11) ans=

1

Memeriksa apakah √-4 bilanganreal

isreal(sqrt(-4)) ans=0

13.4

FPB(4,12) gcd(4,12) ans = 4

14.5

Sisa hasil bagi dari 11 oleh 2 (11:2)

mod(11,2) ans = 1

Ripai, S.Pd., M.Si

143

Page 64: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

15. Segitiga pascal untuk 6 tingkatan

pascal(6)

6.2 Pengantar Dasar Matematika

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

1.1

Jiak dimiliki dua buah pernyataan, missal p dan q, maka terdapat empat kemungkinan, yakni

p qB BB SS BS S

p=[1 1 0 0]'

q=[1 0 1 0]'

p = 1 1 0q= 1 0 1 0

2. Negasi p (~p) ~p ans = 0 0 1 1

not(p) ans = 0 0 1 1

3. Konjungsi p dan q (p^q)

p&q ans = 1 0 0 0

and(p,q) ans = 1 0 0 0

Ripai, S.Pd., M.Si

143

Page 65: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO KOSEP MATEMATIKA

KOMPUTASI MATEMATIKA OUTPUT

4. Disjungsi (p atau q) p|q ans = 1 1 1 0

or(p,q) ans = 1 1 1 0

KEGIATAN PENGEMBANGAN

1. Dosen dan Mahasiswa berdiskusi membahas sejumlah topic-topik bahasan sebelumnya yang masih kurang dimengerti mahasiswa.

2. Dosen dan mahasiswa berdiskusi membahas mater-materi tugas yang belum di pahami atau belum tuntas oleh mahasiswa.

3. Dosen memberikan kisi-kisi soal ujian tengah semester

Ripai, S.Pd., M.Si

143

Page 66: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Uji Kompetensi I bertujuan untuk mengukur tingkat penguasaan bahasa dasar komputasi dengan Matlab sebagaimana yang telah diuraikan pada 3 pertemuan berikutnya. Adapaun kisi-kisi uji kompetensi diberikan sebagai berikut sebagai dasar unutuk mempersiapkan diri dan mengukur kemampuan mahasiswa sendiri dalam mempersiapkan diri mengikuti uji kompetensi I.

Kisi-Kisi Soal Uji Kompetensi

NO Indikator Keterangan1 Mahasiswa dapat mendefinisikan fungsi dengan

perintah syms x, inline dan berdasarkan data.

2 Mahasiswa dapat mengevaluasi nilai suatu fungsi dan mengambar grafiknya

3 Mahasiswa dapat menentukan limit, turunan dan integral suatu fungsi

4 Mahasiswa dapat memberikan perintah komputasi untuk menentukan asimtoto vertical dan horizontal.

5 Mahasiswa dapat menentukan garis singgung pada kurva

6 Mahasiswa dapat menenukan fungsi komposisis

7 Mahasiswa dapat mengarsir daerah di bawah suatu fungsi

8 Mahasiswa dapat menentukan luas daerah di Ripai, S.Pd., M.Si

8 UJIAN TENGAH SEMESTER

143

Page 67: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

bawah kurva

9 Mahasiswa dapat mendefinsiikan suatu matriks10 Mahasiswa dapat menyelesaikan SPL dengan

metode Invers Matriks11 Mahasiswa dapat mengakses elemen matriks12 Mahasiswa dapat melakukan perhitungan

aritmatik matriks13 Mahasiswa dapat menentukan mean, standar

deviasi, varianms suatu data14 Mahasiswa dapat menentukan nilai t table, chi-

tabel, f table, z table dan f table 15 Mahasiswa dapat mnuliskan perintah untuk

menentukan lintasan terpendek suatu graph

Contoh Soal Ujian Tengah Semester

NO

SOAL JAWABAN

Fungsi f(x) = x2 - 5x + 6 dan g(x) = 3x -2 diberikan untuk menyelesaaikan soal nomor 1 sampai dengan nomor 12

1 Tuliskan perintah untuk mendefinisikan f(x) dan g(x) pada Matlab

2 Tuliskan perintah untuk mendapatkan nilai f(3) + 2g(-1)

3 Tuiskan perintah untuk mengambar grafik f(x) dengan warna biru dan g(x)warna merah pada domain -10 < x < 10 dengan

4 Tuliskan perintah untuk mendapatkan (gof)(x)

Ripai, S.Pd., M.Si

143

Page 68: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

SOAL JAWABAN

5Tuliskan perintah untuk mendapatkan

6 Tentukan output dari perintah berikut limit(f,x,2)

7 Tuliskan output dari pretty(subs(subs(f,g)))

8 Tuliskan perintah untuk mendapatkan nilai dari

9 Tuliskan perintah untuk mendapatkan kemiringan garis singgung pada kurva f(x) pada titik x = 2

10 Tuliskan perintah untuk mendapatkan nilai x sehingga f(x) = 0

11 Tuliskan perintah agar diperoleh output

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

20

40

60

80

100

120

140

160

x

x2 - 5 x + 6

12 Tuliskan perintah untuk menuliskan f(-6) pada koordinat (-6,f(-6))

Ripai, S.Pd., M.Si

143

Page 69: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

NO

SOAL JAWABAN

13 Tuliskan perintah untuk mendapatkan nilai dari f(1) + f’(1) + F(1) dimana f’ = turunan f(x) dan F = integral f(x)

Matriks berikut digunakan untuk menjawab soal nomor 13-16

dan

14 Tuliskan perintah untuk menentukana). Ordo matriks Bb). determinan Matriks Ac). invers dari matriks A d). A x Be). Transpose matriks B

15 Jika diketahui suatu graph berarah sebagai berikut:(1) (4) : 15 km(2) (3): 16 km(3) (4) : 37 km(4) (2) : 42 km(3) (1): 72 kmtuliskan comnd untuk mendapatkan lintasan terpendek dan gambar graph berarah tersebut.

Ripai, S.Pd., M.Si

143

Page 70: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmnirrahim.

Dalam bahasa inggris, if berarti jika yang dalam bahasa pemograman

komputer digunakan untuk mengontrol suatu kondisi. Sintak dasar struktur if

adalah sebagai berikut:

if eksperi logika

perintah

elseif eksperi logika

perintah

else

perintah

end

Logika yang digunakan disini adalah sebagai berikut:

Simbol Makna Logika== Sama dengan<= Kurang dari atau sama dengan>= Lebih dari atau sama dengan< Kurang dari> Lebih besar dari& Dan (konjungsi)| Atau (Disjungsi)~ Tidak (Negasi)

~= Tidak sama dengan

Ripai, S.Pd., M.Si

9 Pemograman Struktur if-elseif-else-end pada M-File

143

Page 71: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Contoh:

Buatlah algoritma komputasi menggunakan bahasa MatLab untuk

mensimulasikan sifat Trikotomi[1,4] Bilangan Real pada algoritma 1.2 di atas

Solusi:

Bersesuaian dengan algoritma program 1.2 di atas, maka kontruksi algoritma

program dengan bahasa Matlab adalah sebagai berikut:

Step Comand1 x=input('x = ');2 y=input('y = ');3 if x==y4 disp('x lebih besar dari y')5 elseif x>y6 disp('x kurang dari y ')7 else8 disp('x lebih besar dari y')9 end

Jika program ini di jalankan, maka diperoleh hasil eksekusi atau output

program adalah sebagai berikut:

x = 4y = 6x kurang dari y>> trikotomix = 6y = 4x lebih besar dari y>> trikotomix = 4

Ripai, S.Pd., M.Si

143

Page 72: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

y = 4x sama dengan y>> trikotomix = -4y = 6x kurang dari y>> trikotomix = 5y = -8x lebih besar dari y

Jika menghendaki output program, tertulis tidak sebagai x dan y, tetapi

langsung bilangannya, maka printah disp sebagaimana pada step 4, 6 dan 8

sebagai berikut:

Step

Comand

1 x=input('x = ');2 y=input('y = ');3 if x==y4 disp([num2str(x),' sama dengan ', num2str(y)])5 elseif x>y6 disp([num2str(x),' lebih besar dari ', num2str(y)])7 else8 disp([num2str(x),' kurang dari ', num2str(y)])9 end

Output programnya adalah sebagai berikut:

x = 5y = 75 kurang dari 7>> trikotomix = 7

Ripai, S.Pd., M.Si

143

Page 73: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

y = 57 lebih besar dari 5>> trikotomix = 8y = 88 sama dengan 8

penulisan disp('x kurang dari y ') berarti bahwa, komputer

diperintahkan unutk menulis (disp = display) suatu kata-kata atau string

yang tertulis diantara tanda petik. Penulisan ini dapat disempurnakan

dengan disp([num2str(x),' sama dengan ', num2str(y)]). num2str(x)

terbaca sebagai numerik to string yang berarti bahwa dilakukan

konversi dari x yang berekstensi numeric pada imputan diubah menjadi

string. Hal ini dilakukan karena penulisan disp merupakan suatu

perintah unutk menuliskan suatu ekstensi data string atau kata-kata.

Contoh:

Buatlah algoritma komputasiuntuk menentukan akar-akar persamaan kuadrat

sebagaimana algoritma program di atas.

Solusi:

Berdasarkan algoritma program tersebut di atas, maka dikontruksi algoritma

komputasi sebagai berikut:

Step Comand1 a=input('a = ');2 b=input('b = ');3 c=input('c = ');4 D=b^2-4*a*c;

Ripai, S.Pd., M.Si

143

Page 74: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

5 x(1)=(-b+sqrt(D))/2*a; x(2) =( -b-sqrt(D))/2*a;6 if D>=07 disp(['Akar Bil. Real = ',num2str(x')])8 else9 disp(['Akar Bil. Kompleks =',num2str(x')])

10 end

Jiak program tersebut di jalankan, maka akan diperoleh hasil sebagai berikut:

>> akarkuadrata = 1b = 5c = 6Akar Bil. Real = -3 -2>> akarkuadrata = 5b = 1c = 6Akar Bil. Kompleks =-0.1-1.0909i -0.1+1.0909i >>a = 1b = -4c = 3Akar persamaan = {1 3}

Jika ingin menggambarkan grfaiknya, maka skrip program komputasinya di

tambah setelah proses menghitung akar-akar persamaan sebagai berikut:

Step Comand1 a=input('a = ');2 b=input('b = ');3 c=input('c = ');4 D=b^2-4*a*c;5 x(1)=(-b+sqrt(D))/2*a; x(2) =( -b-sqrt(D))/2*a;6 if D>=07 disp(['Akar Bil. Real = ',num2str(x')])

Ripai, S.Pd., M.Si

143

Page 75: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

8 else9 disp(['Akar Bil. Kompleks =',num2str(x')])

10 end11 X=[x(1)-5:0.1:x(2)+5];12 f=a.*(X.^2)+b.*X+c;13 plot(X,f)14 xlabel('Domain fungsi')15 ylabel('Range fungsi')16 title(['f(x) = ',num2str(a),'x^2 + ',num2str(b),'x + ',num2str(c)])17 text(mean(X),mean(f),['Akar = ',num2str(x')])

X=[x(1)-5:0.1:x(2)+5] pada skrip program tersebut merupakan perintah

membangun domain fungsi pada interval [x1-5 x2+5] dengan ∆x = 0.1.

f=a.*(X.^2)+b.*X+c merupakan perintah menentukan range dari fungsi f(x) =

ax2 + bx + c. plot(X,f) merupakan perintah menggambar grafik dengan domain

X dan range f.xlabel('Domain fungsi') berfungsi untuk menuliskan judul pada

absis (sumbu x) grafik fungsi dengan kata-kata “domain fungsi”, sedangkan

ylabel('Range fungsi')berfungsi untuk menuliskan judul pada ordinat (sumbu

y) dengan kata-kata “Range Fungsi”. title(['f(x) = ',num2str(a),'x^2 +

',num2str(b),'x + ',num2str(c)]) berfungsi untuk menuliskan judul dari grafik,

dengan menuliskan bentuk fungsi grafik kuadrat dengan mengambil koefesian

a, b, dan c. text(mean(X),mean(f),['Akar = ',num2str(x')]) merupakan perintah

untuk menuliskan akar-akar persamaan pada grafik fungsi pada koordinat di

tengah sumbu x dan tengah sumbu y. Pembaca harus dapat memahami

Ripai, S.Pd., M.Si

143

Page 76: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

bahasa penulisan atau kode program, karena kesalahan titik saja akan

membuat eksekusi program error. Penulisan kata-kata atau string diulis dalam

tanda petik, sedangkan bilangan untuk dikonversi dulu menjadi string dengan

perintah num2str. Tanda kurung siku “[]”digunakan jika dalam penulisan string

atau kata-kata akan memuat bilangan yang terkonversikan dengan num2str

tersebut. Jika program tersebut dijalankan maka akan diperoleh hasil sebagai

berikut:

>> akarkuadrata = 1b = 5c = 6Akar Bil. Real = -3 -2

-8 -6 -4 -2 0 2 4-5

0

5

10

15

20

25

30

Domain fungsi

Ran

ge fu

ngsi

f(x) = 1x2 + 5x + 6

Akar = -3 -2

Ripai, S.Pd., M.Si

143

Page 77: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

TUGAS

Intuksi tugas!

1. Buatlah program untuk menghitung nilai Akhir siswa berdasarkan nilai

tugas, mid dan semester dengan bobot masing-masing 15%, 35% dan

50%

2. Buatlah program untuk menyeleskai suatu bilangan, apakah termasuk

bilangan bulat positif atau tidak, dan bilangan prima atau tidak.

3. Buatah program untuk menentukan nilai kebenaran berdasarkan logika

negasi, konjungsi disjungsi, impilkasi, biimplikasi, konvers, invers dan

kontra posisi.

Ripai, S.Pd., M.Si

143

Page 78: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Dalam penyelesaian masalah matematika terdapat banyak kasusyang

membutuhkan proses perhitungan berulang. Misalnya dalam menghitung nilai

n!yang terdefinisi sebagai perkalian bilangan asli dari 1 sampai dengan n.

Secara matematis hal tersebut ditulis sebagai n! = n x (n-1) x (n-2) x … x 2 x 1.

Lebih lanjut n! digunakan sebagai dasar untuk menghitung nilai permutasi dan

kombinasi dimana dalam penerapannya untuk menentukan banyaknya titik

sampel dalam suatu pengamatan data statistik peluang. Dalam kasus tersebut,

parameter berhentinya proses perhitungan ditentukan dari banyaknya proses

pengulangan. Misalnya untuk mendapatkan perhitungan 5!dilakukan proses

pengulangan sebanyak 4 kali, yaitu 5 x 4 = 20, 20 x 3 = 60, 60 x 2 = 120 dan

120 x 1 = 120, sehingga 5! =120. Dalam bahasa pemograman komputer,

apabila parameter berhentinya proses pengulangan ditentukan dari banyaknya

proses pengulangan, maka bahasa program yang dapat digunakan adalah

struktur for dengan struktur

for i=awal: akhir perintahend

Berikut dalam kegiatan di bawah ini, diberikan petunjuk algoritma komputasi

untuk membangun bahasa pemograman perhitungan nilai faktorial, permutasi,

kombinasi serta barisan dan deret Fibonacci dengan inputan bilangan asli

menggunakan struktur for.

Ripai, S.Pd., M.Si

10 Pemograman Dengan Struktur for-end pada M-File MatLab

143

Page 79: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

10.1 Pemograman Faktorial

Membangun algoritma komputasi untuk mensimulasikan definisi factorial

dalam pembelajaran matematika dasar..

Teori: n! = n x (n-1) x (n-2) x … x 2 x 1 dengan n bilangan asli dan 0!=1.

Algoritma Program

Step 1:Masukan nilai n

Step 2: Untuk i = (n-1), (n-2), … , 3, 2, 1

Step 3: Hitung nilai n = n x i

Step 4: Akhiri Step 2

Step 5: Cetak nilai n

Bersesuain dengan tiap step di atas, berikut bahasa Matlab yang dapat

dibangun

Step Comand1 n=input('n = ');2 for i=n-1:-1:13 n=n*i4 end5 disp(['n! = ',num2str(n)])

Untuk menjalankan program tersebut, pada menu file, pilih Debug Save and

Run.Selanjutnya simpan dengan nama faktorial pada folder kerja anda. Setelah

itu, anda menuju command window untuk memberikan inputan dari program

yang telah dijalankan sebagai berikut

Ripai, S.Pd., M.Si

143

Page 80: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Setelah muncul permintaan inputan pada comad windows di atas, anda

kemudian memasukkan bilangan yang hendak dicari nilai faktorialnnya,

misalnya akan dihitung nilai dari 5!, maka inputan n= 5 diberikan dan diperoleh

hasil sebagai berikut.

Setelah itu kemudian enter dan akan diperoleh hasil sebagai berikut

n = 5n = 20n = 60n = 120n = 120n! = 120

Mula-mula n bernilai 5, kemudian n diganti dengan n yang baru dengan nilai

dari hasil perkalian 5 x 4 = 20, Selanjutnya n =20 diganti dengan n yang baru

yang diperoleh dari hasil kali antara 20 x 3 = 60. Begitu seterusnya hingga nilai

terakhir n = 120 x 1 = 120. Jika proses perhitungan tidak ingin di tampilkan,

maka pada ujung step ke-3 anta akhiri dengan tanda titi koma (;), maka akan

diperoleh eksekusi program sebagai berikut:

Program factorial tersebut masih belum memenuhi definisi, karena untuk n

bukan bilangan asli, komputer akan memberikan hasil perhitungan sesuai

algoritma tersebut, sementara apapun hasilnya tentunya didak benar. Hal ini

disebabkan karena n! terdefinisi utuk n bilangan Asli dan 0!= 1.

Ripai, S.Pd., M.Si

143

Page 81: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Berikut diberikan ilustrasi bentuk kesalahannya dari program sebelumnya

>> faktorial

n = 5.5

n ! = 324.8438

>>faktorial

n = -6

n ! = -6

>> faktorial

n = 0

n ! = 0

Oleh karena itu perlu dilakukan penyempurnaan program dengan memberikan

kontrol ntuk n dengan ketetntuan bahwa n harus bilangan bulat positif dan 0! =

1 sebagai berikut:

Step Comand1 n=input('n = ');2 if n>0&round(n)==n3 for i=n-1:-1:14 n=n*i;5 end6 disp(['n ! = ',num2str(n)])7 elseif n==08 disp('0! = 1')9 else10 disp('Maaf tidak terdefinisi');11 end

Hasil eksekusi dari program tersebut adalah sebagai berikut:

>> faktorial

n = 0

0! = 1

>> faktorial

Ripai, S.Pd., M.Si

143

Page 82: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

n = 5

n ! = 120

>> faktorial

n = -5

Maaf tidak terdefinisi

>> faktorial

n = 5.5

Maaf tidak terdefini

Dari eksekusi program tersebut, terlihat bahwa ouput komputasi yang

diberikan telah sesuai dengan definisi factorial. Penyempurnaan program

lebih lanjut yang harus dilakukan adalah Bagaimana agar output dapat

memberikan simulasi proses perhitungan. Hal ini penting untuk mahasiswa

calon guru agar roh matematika tidak hilang dalam mengajarkan kepada

peserat didik. Bentuk simulasi yang yang dapat didesain adalah sebagai

berikut.

Gambar 7.1 Desain system program simulasi definisi factorial

Bentuk komputasi yang dapat dibangun agar dapat menghasilkan output

tersebut berdasarkan inputan yang diberikan adalah sebagai berikut:

Step Comand1 disp('Program: Simulasi Definisi

Faktorial')2 disp('------------------------------------'

)3 n=input('n = ');

Ripai, S.Pd., M.Si

143

Page 83: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

4 if n>0&round(n)==n5 t=['Jadi ',num2str(n),'!=',num2str(n)];6 for i=n-1:-1:17 h=['x',num2str(i)];8 t=[t h];9 s=n;10 n=n*i;11 disp([num2str(s),'x',num2str(i),'=

',num2str(n)])12 end13 disp([t '=',num2str(n)]);14 elseif n==015 disp('0! = 1')16 else17 disp('Maaf tidak terdefinisi');18 end

Output Eksekusi program tersebut adalah sebagai berikut:

Program : Simulasi Definisi Faktorial

------------------------------------------------

n = 5

5x4=20

20x3=60

60x2=120

120x1=120

Jadi 5!=5x4x3x2x1=120

Dengan demikian, program tersebut dapat digunakan untuk simulasi dalam

pembelajaran tentang factorial kepada peserat didik sehingga memungkinkan

kajian matematika tersebut lebih konkrit.

Pemograman Simulasi Pengertian Limit Fungsi

Pada kegiatan ini akan didiskusikan tentang bagaimana membuat simulasi

pengertian secara intuitif limit kanan suatu fungsi.

Ripai, S.Pd., M.Si

143

Page 84: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Teori Matematika : berate bahwa, apabila x mendekati c dari

kanan, maka f(x) akan mendekati nilai L.

Algoritma Program:

Step 1. Definisikan fungsi f(x)

Step 2. Inputkan nilai c

Step 3. Buat domain fungsi d

Step 4. Gambar grafik fungsi f(x)

Step 5. Muai dari nilai batas atas domain,sampai batas bawah domain

Step 6. Gambar titik domain dan titik f(x)

Step 7. Berikan jeda

Step 8. Akhiri loop step 5

Step 9 Tuliskan nilai limit

Algoritma Komputasi Limit Kanan fungsi

Step Comand1 clc;2 clear all;3 disp('Program simulasi Limit Kanan Fungsi')4 disp('-----------------------------------')5 syms x 6 f=input('f(x)= ');7 c=input('c = ');8 d=[c-10:0.25:c+10];9 ezplot(f,d)10 d=[c+10:-0.25:c];11 n=length(d);12 fprintf('%5s %10s \n','x','f(x)')13 for i=1:n14 hold on15 plot(d(i),0,'.r')16 hold on17 plot(d(i),subs(f,d(i)),'.r')18 pause(0.2)

Ripai, S.Pd., M.Si

143

Page 85: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

19 fprintf('%8.2f %8.2f\n',d(i),subs(f,d(i)));

20 end21 L=double(limit(f,c));22 text(c,subs(f,c),['<--- Limit =

',num2str(L)])

Output dari eksekusi program tersebut adalah

f(x)= x^2+5*x+6

c = 3

x f(x)

13.00 240.00

12.75 232.31

12.50 224.75

12.25 217.31

12.00 210.00

11.75 202.81

11.50 195.75

11.25 188.81

11.00 182.00

10.75 175.31

10.50 168.75

10.25 162.31

10.00 156.00

9.75 149.81

9.50 143.75

9.25 137.81

9.00 132.00

8.75 126.31

8.50 120.75

Ripai, S.Pd., M.Si

143

Page 86: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

8.25 115.31

8.00 110.00

7.75 104.81

7.50 99.75

7.25 94.81

7.00 90.00

6.75 85.31

6.50 80.75

6.25 76.31

6.00 72.00

5.75 67.81

5.50 63.75

5.25 59.81

5.00 56.00

4.75 52.31

4.50 48.75

4.25 45.31

4.00 42.00

3.75 38.81

3.50 35.75

3.25 32.81

3.00 30.00

Ripai, S.Pd., M.Si

143

Page 87: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

-6 -4 -2 0 2 4 6 8 10 12

0

50

100

150

200

250

x

x2 + 5 x + 6

<--- Limit = 30

Gambar 7.2 Output simulasi definisi limit kanan fungsi

TOPIK DISKUSI MAHASISWA

Topik 1: Membangun algoritma komputasi untuk menentukan nilai permutasi

Teori:

Kontruksilah program Kombinasi berdasarkan algoritma berikut:

Algoritma program Permutasi

Step 1. Definisikan n

Step 2. Definisikan r

Step 3. Hitung nilai n-r, misal sebut sebagai m

Step 4 Hitung nilai dari n!

Step 5. Hitung nilai dari m!

Step 10. Hitung nilai P=(n/m)

Step 11. Cetak nilai P

Konversilah bahasa tersebut ke dalam bahasa Matlab, untuk mendapatkan

output sebagai berikut:

n=5

Ripai, S.Pd., M.Si

143

Page 88: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

r=3

P(5,3)=20

Setelah iru, lakukan penyempurnaan program untuk mensimulasikan

proses perolehan nilai P(5,3)=20 tersebut sebagai berikut:

Step

Comand

1 n=input('n = ');2 r=input('r = ');3 if n>1&round(n)==n&r>1&round(r)==r4 s=[n r];m=n-r;5 t=[num2str(n),'! = (',num2str(n),')'];6 for i=n-1:-1:17 h=['(',num2str(i),')'];8 t=[t h];9 n=n*i;10 end11 disp([t ' = ',num2str(n)]);12 t=[num2str(m),'! = (',num2str(m),')'];13 for i=m-1:-1:114 h=['(',num2str(i),')'];15 t=[t h];16 m=m*i;17 end18 disp([t ' = ',num2str(m)]);19

disp(['P(',num2str(s(1)),',',num2str(s(2)),')=',num2str(s(1)),'!/(',...

20 num2str(s(1)),'-',num2str(r),')!=',num2str(s(1)),'!/(',...

21 num2str(s(1)-s(2)),')!=',num2str(n/m)])22 endBentuk output dari program tersebut adalah sebagai beikut:

n = 5

r = 2

5! = (5)(4)(3)(2)(1) = 120

3! = (3)(2)(1) = 6

Ripai, S.Pd., M.Si

143

Page 89: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

P(5,2)=5!/(5-2)!=5!/(3)!=20

Topik 2: Membuat program untuk menghitung nilai suatu Combinasi

Teori:

Algoritma program:

Step 1: Definisikan n

Step 2. Definisikan nilai r

Step 3: Hitung nilai dari n-r, misal sebut sebagai m

Step 4: Hitung nilai dari n!

Step 5: Hitung nilai dari r!

Step 6: Hitung nilai m!,

Step 7: Hitung nilai dari C=n/(m.*r);

Step 8: Cetak nilai dari C

Setelah algortima tersebut dikonversi ke dalam bahasa matlab, maka dapatkan

output program sebagai berikut

n=5

r=2

C(5,2)=10.

Dan kontruksi penyempurnaan program agar memperoleh output sebagai

berikut:

n=5

r=2

5!=(5)(4)(3)(2)(1)=120

(5-2)!=3!=(3)(2)(1)=6

2!=(2)(1)=2

C(5,2)=5!/3!2!=120/(6x2)=120/(6x2)=10

TUGAS 7Jawablah soal di bawah ini dengan benar!

Ripai, S.Pd., M.Si

143

Page 90: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

1. Buatlah algoritma program dalam bahasa Matlab untuk membentuk dan

menghitung (a). Barisan dan deret aritmatika, (b) Barisan dan deret

geometri d an (c) Barisan dan deret Fibonacci.

2. Buatlah program untuk mensimulasikan garis singghung pada

kurva.Tuliskan output dari program berikut, kemudian jelaskan konsep

matematika dan arti dari tiap step perintahnya.

Ripai, S.Pd., M.Si

143

Page 91: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim

Struktur while merupakan perintah pengulangan dengan parameter berhenti

pengulangan berdasarkan suatu kriteria logika, tidak berdasarkan banyaknya

kali pengulangan sebagaimana pada struktur for. Berikut diberikan contoh

aplikasinya pada program simulasi pengurangan bilangan bulat dan Algoritma

Eucliden.

11.1 Pemograman komputasi untuk mensimulasikan definisi pembagian

Definisi pembagian: Pembagian adalah pengurang berulang hingga

mengasilkan sisa 0 atau kurang dari pembagi.

Sebagai contoh

10:2 artinya bahwa berapa kali kita melakukan proses pengurangan bilangan 10

oleh 2 hingga sisanya 0 atau kurang dari 2. Solusi dari permasalahn ini ada;ah

sebagai berikut

Proses ke-1 10-2 = 8

Proses ke-2 8-2=6

Proses ke-3 6-2=4

Proses ke-4 4-2=2

Proses ke-5 2-2=0

Jadi terjadi 5 kali proses,

Untuk membangun algoritma komputasinya, mula-mula dikontruksi dengan

algoritma dasarnya sebagai berikut:

Ripai, S.Pd., M.Si

11 Pemograman Dengan Struktur while-and pada M-File MatLab

143

Page 92: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Step

Command

1 a=input('a = '); 2 b=input('b = ');3 while b>=a4 b=b-a5 end

6 a=input('a = ');

Program tersebut, mula-mula di awali dengan inputan bilangan bulat a dan b dengan ketentuan b>a. Kemudian dilakukan pemeriksaan kondisi oleh perintah while. Perintah while b>a dalam bahasa sehari-hari adalah, “ulangi terus perintah b=b-a jika b>a”. Jika diberikan nilai a=2 dan b=10, maka computer akan bekerja sebagai berikut:a = 2b = 10b = 8b = 6b = 4b = 2a = 0

Mula –mula b=10, kemuidan direplace/diganti dengan nilai b yang baru yakni b=8 yang diperoleh dari perhitungan b=10-2 = 8. Karena nilai b=10-2=8 > 2 = a, maka proses penentuan bbaru = blama – a terus dikerjakan hingga diperoleh nilai b <a. Ripai, S.Pd., M.Si

143

Page 93: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Kondisi ini dicapai setelah proses perhitungan di lakukan hingga 5 kali perulangan. Banyaknya perulangan ini merupakan nilai dari pembagian sebagaimana definisinya. Untuk mengetahui nilai tersebut, perlu dibuatkan variabel akumulator yang mecatat banyaknya proses perulangan. Misalkan variabel terbut adalah c, maka kita perlu definisikan c=0 sebelum muai proses perintah while dan menambahkan setiap kali proses while dengan c=c+1 yang berarti proses pencatatan tiap kali proses pengurangan. Bentuk penyempurnaan programnya adalah sebagai berikut:Step

Comand

1 a=input('a = '); 2 b=input('b = ');3 c=0;4 while b>=a5 c=c+16 b=b-a7 end

Output dari eksekusi program tersebut adalah sebagai berikut:

a = 2b = 10c = 1b = 8c =

Ripai, S.Pd., M.Si

143

Page 94: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

2b = 6c = 3b = 4c = 4b = 2c = 5b = 0

Terlihat bahwa, nilai c yang terakhir adalah c=5 yang berarati bawah proses dilaksanakan hingga 5 kali. Hal ini berarti bahwa 10:2 = 5. Agar output komputasi memperlihatkan proses pengurangan secara baik sehingga definisi pembagian tersebut menjadi jelas, maka perlu dikembangkan penyempurnaan program agar diperoleh output sebagai berikut

Proses ke-1 10-2 = 8

Proses ke-2 8-2=6

Proses ke-3 6-2=4

Proses ke-4 4-2=2

Proses ke-5 2-2=0

Jadi 10:2 = 5

Bentuk penyempurnaan yang dapat diberikan sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 95: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Step

Comand

1. clc;2. clear all;3. disp('Program : Simulasi definisi pembagian')4. disp('----------------------------------------------------')5. a=input('a = '); 6. b=input('b = ');7. if a==round(a)&b==round(b)&b>a8. s=b;9. c=0;10. while b>a11. c=c+1;12. t=b;13. b=b-a;14. disp(['Proses ke-',num2str(c),'--> ',num2str(t),' - ',...15. num2str(a),' = ',num2str(b)])16. end17. disp(['Jadi ',num2str(s),':',num2str(a),'=',num2str(c),...18. ' dengan sisa ',num2str(b)])19. else20. disp('Maaf, tidak diprogramkan')21. end

11.1 Pemograman komputasi untuk mensimulasikan definJika program tersebut dieksekusi, maka diperoleh sebagai berikut:

Program : Simulasi definisi pembagian---------------------------------------------------a = 2b = 10Proses ke-1--> 10 - 2 = 8Proses ke-2--> 8 - 2 = 6Proses ke-3--> 6 - 2 = 4Proses ke-4--> 4 - 2 = 2Proses ke-5--> 2 - 2 = 0Jadi 10:2=5 dengan sisa 0

Diskusikanlah dengan teman-teman anda, beberapa penambahan dari

step program tersebut.

11.2 Pemograman komputasi untuk mensimulasikan definisi Ripai, S.Pd., M.Si

143

Page 96: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Algortima Eucliden

Misalkan dimiliki bilangan bulat a dan b dengan b>a, maka akan terdapat

bilangn bulat x sehingga b=ax+r dengan r adalah sisa.

Jika dilakukan proses pengulangan dengan ketentuan b=a dan a=r, maka akan

terdapat nilai r =0 sehingga FPB dari a dan b adalah a terakhir. Sebagai contoh

adalah berikut ini untuk kasus a=12 dan b=80.

a = 12

b = 80

80= (6)(12)+8

12= (1)(8)+4

8= (2)(4)+0

Jadi FPB(12,80) = 4

Ada bentuk 80= (6)(12)+8, 80 adalah bilangan yang dibagi (b), 12 adalah

bilangan pembagi (12), 6 adalah hasil bagi (x) dan 8 adalah sisa hasil bagi (r).

Algoritma program yang diperoleh sebagai berikut:

Algoritma Dasar Ecliden

Step 1. Definisikan bilangan bulat a dan b dengan b>a

Step 2. Kerjakan step berikutnya, jika sisa hasil bagi tidak bernilai 0

Step 3. Hitung sisa hasil bagi, tulis sebagai r

Step 4. Tukarkan nilai b dengan a (b=a)

Step 5; Tukarkan a dengan r (a=r)

Step5. Akhiri Program

Konversi algoritma program tersebut menjadi algoritma komputasi

berbasis Matlab adalah sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 97: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Step Command

1 a=input('a = '); b=input('b = ');2 while mod(b,a)~=03 r=mod(b,a)4 b=a 5 a=r6 end

Output dari eksekusi program tersebut adalah sebagai berikut:

a = 12

b = 80

r =

8

b =

12

a =

8

r =

4

b =

8

a =

4

Dari oputput program tersbut, mula-mula a=12 dan b= 80. Kemudian

ditentukan sisa hasil bagi 80 oleh 12 dengan perintah mod(b,a) dengan nilai

sisanya adalah 8 yang ditulis dalam variabel r. Karena r ≠0, maka dilakukan

pertukaran nilai yakni, b=a=12 dan a=r=8. Kemudian kembali lagi memntukan

sisa hasil bagi dan proses pertukaran nilai b=a dan a=r. Proses ini berulang Ripai, S.Pd., M.Si

143

Page 98: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

terus hingga sisa hasil bangi b oleh a yang terakhir yakni r = 0. Kondisi ini

tercapai saat nilai bterakhir = 8 dan aterakhir = 4 dimana kita ketahui bahwa sisa hasil

bagi 8 dengan 4 adalah 0.Sebagaimana teoram ecliden, maka kita telah peroleh

nilai FPB dari a=12 dan b=80 adalah aterakhir = 4.

Sebagai mahasiswa jurusan pendidikan yang lebih mengedepankan proses

berfikir ketmbang hasil akhir didalam belajar dan mengajarkan konsep teorema

Eucliden tersebut perlu dikembangkan algoritma komputasinya agar output

simulasi yang diberikan dapat menyajikan proses tersebut lebih nyata, misalnya

dengan bentuk output sebagai berikut

Program : Simulasi Teorema Eucliden

---------------------------------------------

a = 12

b = 80

80= (6)(12)+8

12= (1)(8)+4

8= (2)(4)+0

Jadi FPB(12,80) = 4

Kontruksi alhoritma komputasi yang dapat diterapkan adalah sebagai berikut:

Suatubentuk kontruksi algoritma program yang dapat dibangun agar outputnya

seperti tersebut di atas adalah sebagai berikut:

Step Command

1 clc;2 clear all;3 disp('Program : Simulasi Teorema Eucliden')4 disp('-----------------------------------')5 a=input('a = '); 6 b=input('b = ');

Ripai, S.Pd., M.Si

143

Page 99: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

7 t=[a b];8 while a~=0

r=mod(b,a);10 h=(b-r)/a;11 disp([num2str(b),'= (',num2str(h),')(',num2str(a),')

+',num2str(r)])12 b=a; a=r;13 end14 disp(['Jadi FPB(',num2str(t(1)),',',num2str(t(2)),') =

',num2str(b)])TUGAS 8

Kerjakan soal di bawah ini dengan benar

1. Pada program eucliden tersebut di atas akan memberikan output yang

bernilai salah manakala diberikan inputan b<a dan a B+ dan b B+.Oleh

karena itu sempurnakanlah program tersebut sehingga dapat meberikan

output yang sesuai dengan definisi teorema eucliden tersebut.

2. Dimiliki matriks sebagai berikut:

Buatlah suatu program dengan kombinasi struktur for, if dan while untuk

membetuk agar elemen Vipot matrik A tersebut tidak bernilai 0 dengan

cara jika elem pipotnya bernilai nol, maka dicari elemen di baris

bawahnya pada kolom pipot tersebut yang bernilai tidak nol, kemudian

tukarkan baris tersebut dengan barispipotnya. Ripai, S.Pd., M.Si

143

Page 100: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

3. Diketahui data dan rank data sebagai berikut:

Data1 3 3 4 5 5 5 7 7 12

Rank 1.5 1.5 3 5 5 5 7.5 7.5 9

Data2

4 4 7 3

Rank ? ? ? ?

Buatlah suatu program dengan inputan data 1, data 2 dan rank data

tersebut sehingga dapat menghasilkan output rank data 2 yang diambil

dari rank data 1 sebagai berikut

Data 4 4 7 3Rank 3 3 7.5 1.5

Ripai, S.Pd., M.Si

143

Page 101: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirrahim.

Pada perkuliahan sebelumnya, telah dibuat program faktorial, permutasi,

kombinasi, barisan dan deret fibonacci,algoritma eucliden dan sejumlah tugas-

tugas. Program-program tersebut dapat digabung menjadi sebuah program

tunggal dalam sebuah nama file yang terkontruksi dalam beberapa kasus,

dimana tiap kasus memuat tiap program. Untuk keperluan itu, bahasa

pemograman yang dapat digunakan adalah switch case. Berikut prosedur kerja

untuk menggabungkan program-program yang sudah dibuat pada kegiatan

sebelumnya menjadi sebuah program tunggal menggunakan struktur switch.

12.1 Penggabungan Program Trikotomi Bilangan Real, Simulasi

Faktorial, Limit Fungsi, Simulasi Pembagian dan Algoritma Eucliden

Algoritma Program:

Step 1. Inputkan Pilihan

Step 2. Definisikan perintah switch

Step 3. Untuk kasus I, masukkan algoritma komputasi Trikotomi

Step 4. Untuk kasus II, masukkan algoritma komputasi Faktorial

Step 5. Untuk kasus III, masukkan algoritma komputasi Limit Fungsi

Step 6.Untuk kasus IV, masukkan algoritma komputasi simulasi

Pembagian

Step 7. Untuk kasus V, masukkan algoritma komputasi Eucliden

Step 8. Akhiri program

Ripai, S.Pd., M.Si

12 Pemograman Komputasi Matematika Dengan Struktur switch-case-and

143

Page 102: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Berdasarkan algoritma program tersebut, maka dapat dibangun

algoritma komputasi sebagai berikut:

Step Comand1 clc;2 clear all;3 disp('Program: Trikotomi, Akar Kuadrat,

Faktorial')4 disp('Permutasi, Limit Kanan, Pembagian,

Eucliden')5 disp('----------------------------------------

---')6 p=input('Pilihan anda --> ');7 switch p8 case 'Trikotomi'9 x=input('x = ');10 y=input('y = ');11 if x==y12 disp([num2str(x),' sama dengan ',

num2str(y)])13 elseif x>y14 disp([num2str(x),' lebih besar

dari ', num2str(y)])15 else16 disp([num2str(x),' kurang dari ',

num2str(y)])17 end18 case 'Akar Kuadrat'19 a=input('a = ');20 b=input('b = ');21 c=input('c = ');22 D=b^2-4*a*c;23 x(1)=(-b+sqrt(D))/2*a; x(2) =( -b-

sqrt(D))/2*a;24 if D>=025 disp(['Akar Bil. Real =

',num2str(x)])26 else

Ripai, S.Pd., M.Si

143

Page 103: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

27 disp(['Akar Bil. Kompleks =',num2str(x)])

28 end29 X=[x(1)-5:0.1:x(2)+5];30 f=a.*(X.^2)+b.*X+c;31 plot(X,f)32 xlabel('Domain fungsi')33 ylabel('Range fungsi')34 title(['f(x) = ',num2str(a),'x^2 +

',...35 num2str(b),'x + ',num2str(c)])36 text(mean(X),mean(f),['Akar =

',num2str(x)])37 case 'Faktorial'38 n=input('n = ');39 if n>0&round(n)==n40 t=['Jadi ',num2str(n),'!

=',num2str(n)];41 for i=n-1:-1:142 h=['x',num2str(i)];43 t=[t h];44 s=n;45 n=n*i;46

disp([num2str(s),'x',num2str(i),...47 '=',num2str(n)])48 end49 disp([t '=',num2str(n)]);50 elseif n==051 disp('0! = 1')52 else53 disp('Maaf tidak terdefinisi');54 end55 case 'Permutasi'56 n=input('n = ');57 r=input('r = ');58 if n>1&round(n)==n&r>1&round(r)==r

Ripai, S.Pd., M.Si

143

Page 104: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

59 s=[n r];m=n-r;60 t=[num2str(n),'! =

(',num2str(n),')'];61 for i=n-1:-1:162 h=['(',num2str(i),')'];63 t=[t h];64 n=n*i;65 end66 disp([t ' = ',num2str(n)]);67 t=[num2str(m),'! =

(',num2str(m),')'];68 for i=m-1:-1:169 h=['(',num2str(i),')'];70 t=[t h];71 m=m*i;72 end73 disp([t ' = ',num2str(m)]);74

disp(['P(',num2str(s(1)),',',num2str(s(2)),...75

')=',num2str(s(1)),'!/(',num2str(s(1)),...76 '-',num2str(r),')!

=',num2str(s(1)),'!/(',...77 num2str(s(1)-s(2)),')!

=',num2str(n/m)])78 end79 case 'Limit Kanan'80 syms x 81 f=input('f(x)= ');82 c=input('c = ');83 d=[c-10:0.25:c+10];84 ezplot(f,d)85 d=[c+10:-0.25:c];86 n=length(d);87 fprintf('%5s %10s \n','x','f(x)')88 for i=1:n89 hold on

Ripai, S.Pd., M.Si

143

Page 105: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

90 plot(d(i),0,'.r')91 hold on92 plot(d(i),subs(f,d(i)),'.r')93 pause(0.2)94 fprintf('%8.2f %8.2f\

n',d(i),subs(f,d(i)));95 end96 L=double(limit(f,c));97 text(c,subs(f,c),['<--- Limit =

',num2str(L)])98 case 'Pembagian'99 a=input('a = '); 100 b=input('b = ');101 if a==round(a)&b==round(b)&b>a102 s=b;103 c=0;104 while b>a105 c=c+1;106 t=b;107 b=b-a;108 disp(['Proses

ke-',num2str(c),'--> ',...109 num2str(t),' -

',num2str(a),' = ',num2str(b)])110 end111 disp(['Jadi

',num2str(s),':',num2str(a),'=',num2str(c),...112 ' dengan sisa ',num2str(b)])113 else114 disp('Maaf, tidak diprogramkan')115 end116 case 'Eucliden'117 a=input('a = '); 118 b=input('b = ');119 t=[a b];120 while a~=0121 r=mod(b,a);

Ripai, S.Pd., M.Si

143

Page 106: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

122 h=(b-r)/a;123 disp([num2str(b),'=

(',num2str(h),...124 ')(',num2str(a),')

+',num2str(r)])125 b=a; a=r;126 end127 disp(['Jadi

FPB(',num2str(t(1)),',',...128 num2str(t(2)),') = ',num2str(b)])129 otherwise130 disp('Maaf pilihan Salah, Silahkan

diperiksa, ok!')131 end

Jika program tersebut di jalankan, maka akan diperoleh sebagai berikut:

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Trikotomi'

x = 5

y = 8

5 kurang dari 8

Output tersebut adalah hasil eksekusi program untuk pilihan trikotomi bilangan

real. Jika kita menginginkan menjalankan program Akar Kuadrat, maka

dilakukan sebagai berikut:

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Ripai, S.Pd., M.Si

143

Page 107: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Pilihan anda --> 'Akar Kuadrat'

a = 1

b = 5

c = 6

Akar Bil. Real = -2 -3

Selanjutnya, untuk pilihan Faktorial sebagai berikut:

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Faktorial'

n = 5

5x4=20

20x3=60

60x2=120

120x1=120

Jadi 5!=5x4x3x2x1=120

Selanjutnya bentuk output untuk pilihan permutasi

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Permutasi'

n = 5

r = 2

5! = (5)(4)(3)(2)(1) = 120

3! = (3)(2)(1) = 6

P(5,2)=5!/(5-2)!=5!/(3)!=20

Ripai, S.Pd., M.Si

143

Page 108: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Selanjutnya output untuk pilihan limit kanan sebagai berikut

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Limit Kanan'

f(x)= x^2+5*x+6

c = 2

x f(x)

12.00 210.00

11.75 202.81

11.50 195.75

11.25 188.81

11.00 182.00

10.75 175.31

10.50 168.75

10.25 162.31

10.00 156.00

9.75 149.81

9.50 143.75

9.25 137.81

9.00 132.00

8.75 126.31

8.50 120.75

8.25 115.31

8.00 110.00

7.75 104.81

7.50 99.75

7.25 94.81

Ripai, S.Pd., M.Si

143

Page 109: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

7.00 90.00

6.75 85.31

6.50 80.75

6.25 76.31

6.00 72.00

5.75 67.81

5.50 63.75

5.25 59.81

5.00 56.00

4.75 52.31

4.50 48.75

4.25 45.31

4.00 42.00

3.75 38.81

3.50 35.75

3.25 32.81

3.00 30.00

2.75 27.31

2.50 24.75

2.25 22.31

2.00 20.00

Dan grafik fungsi

Ripai, S.Pd., M.Si

143

Page 110: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

-8 -6 -4 -2 0 2 4 6 8 10 12

0

50

100

150

200

x

x2+5 x+6

<--- Limit = 20

Selanjutnya untuk pilihan Pembagian sebagai berikut:

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Pembagian'

a = 3

b = 23

Proses ke-1--> 23 - 3 = 20

Proses ke-2--> 20 - 3 = 17

Proses ke-3--> 17 - 3 = 14

Proses ke-4--> 14 - 3 = 11

Proses ke-5--> 11 - 3 = 8

Proses ke-6--> 8 - 3 = 5

Proses ke-7--> 5 - 3 = 2

Jadi 23:3=7 dengan sisa 2

Berikutnya contoh output untuk pilihan program Algoritma Eucliden

Ripai, S.Pd., M.Si

143

Page 111: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'Eucliden'

a = 12

b = 80

80= (6)(12)+8

12= (1)(8)+4

8= (2)(4)+0

Jadi FPB(12,80) = 4

Kemudian untuk bentuk output jika pilihan diluar yang terprogram

Program: Trikotomi, Akar Kuadrat, Faktorial

Permutasi, Limit Kanan, Pembagian, Eucliden

-------------------------------------------

Pilihan anda --> 'eliminasi Gauss Jordan'

Maaf pilihan Salah, Silahkan diperiksa, ok!

Output tersebut merupakan hasil dari perintah otherwise pada program yang

telah di rancang:

12.2 TOPIK DISKUSI KELAS

Untuk meningkatkan pemahaman tentang pemograman struktur switch-case-

end, Kontruksilah program untuk menghitung luas dan keliling bangun datar

Ripai, S.Pd., M.Si

143

Page 112: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

dengan melengkapi program berikut ini dengan rumus-rumus luas dan keliling

bangun datar yang diberikan.

disp('Program Luas dan Keliling Bangun Datar')

disp('-------------------------------------------------')

P=input('Pilihan -->');

switch P

case 'Persegi'

case 'Persegi Panjang'

p=input( 'Panjang = ');

l=input( 'lebar = ');

K=2*(p+l);

L=p*l;

disp(['Keliling = ',num2str(K)])

disp(['Luas = ',num2str(L)])

case 'Segitiga'

case 'Jajaran Genjang'

case 'Belah Ketupat'

case 'Trapesium'

case 'Layang-layang'

case 'lingkaran'

otherwise

disp('Maaf, pilihan tidak ada, ok...!')

end

Bentuk output yang diharapkan diperoleh, misalnya untuk kasus Persegi

Panjang adalah sebagai berikut!

Ripai, S.Pd., M.Si

143

Page 113: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

TUGAS 9

Setelah mengikuti kegiatan di atas, maka untuk lebih mendalami materi

tersebut, silahkan dikerjakan tugas berikut:

1. Buat program untuk mengabungkan keseluruhan program tugas yang telah

diberikan sebelumnya.

2. Buatlah program komputasi dengan struktur switch untuk menghitung

volume dan luas permukaan bangun ruang.

3. Buatlah program untuk menghitung volume benda putar dengan kasus,

mengelilingi sumbu x dan mengelili sumbu y.

Bismillahirrahmanirrahim

Pada pertemuan sebelumnya telah di bahas pemograman dengan M-file, Pada

pertemuan kali ini, akan di bahas pemograman GUI (Grafical User Interface)

yang dapat memberikan kemudahan pengguna dalam menggunakan program

yang dibangun yang bersifat lebih efektif dan efesien. Contoh bentuk GUI

adalah sebagai berikut:

Ripai, S.Pd., M.Si

13 Pemograman GUI (Grafical User Interface)

143

Page 114: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Program ini lebih bersifat pleksibel dan intraktif, artinya kita dalam

menggunakannya sangat mudah dengan hanya menganti variabel inputan dan

menekan tombol proses. Bagaimana cara membuatnya, berikut diberikan

tutorial . Haraop mahasiswa langsung menanyakan ke dosen Pembina jika

terdapat hal-hal yang kurang jelas.

13.1 Pemograman GUI Algoritma Eucliden

Prosedur kerja pembuatan program tersebut adalah sebagai berikut:

1. Membuka handles GUI yaitu suatu editor tempat membuatnya dengan

cara menuliskan perintah guide pada command windows matlab maka

akan muncul kotak dialog sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 115: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

2. Kemudian klik ok dan akan muncul editor handles tempat membuat

tampilan program sebagai berikut:

3. Kemudian pilih statistic text, sebagai berikut

4. Kemudian klik dan drag pada handles sehingga diperoleh sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 116: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

5. Kemudian lakukan editing statistic text tersebut dengan cara double klik

pada statistis tex tersebut, kemudian cari string dan tuliskan kalimat

sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 117: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

6. Deengan medouble klik lagi, dan pilih ukuran hurup dan warna sehingga

diperoleh tampilan sebagai berikut:

7. Dengan cara yang sama memilih statistic tex buat text sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 118: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

8. Kemudian pilih property edit dan alkukan editing pada property inspector

sehingga diperoleh hasil sebagai berikut:

9. Selanjutnya pilih pushbutton dan lakukan editing sehingga diperoleh

sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 119: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

10. Selanjutnya pilih lisbox dan buat agar memperoleh tampilan sebagai

berikut:

11. Selanjutnya berikan property tambahan sehingga memperoleh tampilan

GUI sebagai berikut:

12. Selanjutnya klik kanan pada tombol keluar dan pilih call back dan

krtikkan perintah close;

13. Pada tombol Hitung, buatkan skrip program dengan langkah-langkah

sebagai

a=str2double(get(handles.edit1,'String'));

Ripai, S.Pd., M.Si

143

Page 120: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

b=str2double(get(handles.edit2,'String'));

H=[];

if a==round(a) & b==round(b) & a>0 & b>0

if a>b

T=a;a=b;b=T;

end

t=[a b]; c=0;

while a~=0

c=c+1;

r=mod(b,a);

h=(b-r)/a;

h={(['Proses ke-',num2str(c),' --> ',num2str(b),...

'= (',num2str(h),')(',num2str(a),')+',num2str(r)])};

H=[H;h];

set(handles.listbox1,'String',H);

pause(0.5);

b=a;a=r;

end

h={(['Jadi FPB(',num2str(t(1)),',',num2str(t(2)),') =

',num2str(b)])};

H=[H;h];

set(handles.listbox1,'String',H);

else

H={(['Maaf tidak dapat memproses'])};

h={(['a dan b harus bilangan bulat positif'])};

H=[H;h];

set(handles.listbox1,'String',H);

end

Ripai, S.Pd., M.Si

143

Page 121: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

10. Kemudian simpan program anda dan jalankan, maka akan diperoleh hasil

sebagai berikut jika diberikan iputan a = 172 dan b= 324.

Bentuk output lainya adalah sebagai berikut:

13.2 Pemograman Kalkulator Logika Matematika

Pada kegiatan berikut ini, akan didesain kalkultor logika yang mensimulasikan

atau yang dapat digunakan untuk menentukan nilai kebenaran berdasarkan

logika negasi, disjungsi, konjungsi, implikasi, biimplikasi, konvers, inver dan

kontraposisi. Untuk mendapatkan hal tersebut, diawali dengan merancang

desain GUI sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 122: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Kemudian pada button ~ p dimasukkan skrip program sebagai berikut:

p=get(handles.edit2,'String');for i=1:length(p) if p(i)=='B' h(i)='S'; else h(i)='B'; endendset(handles.edit5,'String',h)s=get(handles.edit1,'String');set(handles.text1,'String',['~(',s,')'])

Dan pada button ~q, dimasukan skrip program unutk menentukan nilai

kebenaran untuk ~q. Konsep algoritma komputasinya sama dengan

algoritma komputasi pada ~q di atas. Cobalah mahasiswa berfikir

mendisain program komputasinya dan tuliskan dalam kotak berikut:

Ripai, S.Pd., M.Si

143

Page 123: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Kemudian pada listbox1, buatkan program sebagai beikut:

pilih=get(handles.listbox1,'Value');s1=get(handles.edit1,'String');p=get(handles.edit2,'String');s2=get(handles.edit3,'String');q=get(handles.edit4,'String');n=length(p);switch pilih case 1 for i=1:n if p(i)=='B'&q(i)=='B' h(i)='B'; else h(i)='S'; end end s=['(',s1,'^',s2,')']; case 2 for i=1:n if p(i)=='S'&q(i)=='S' h(i)='S'; else h(i)='B'; end end s=['(',s1,'v',s2,')']; case 3 for i=1:n if p(i)=='B'&q(i)=='S' h(i)='S'; else h(i)='B'; end end s=['(',s1,'==>',s2,')']; case 4 for i=1:n if (p(i)=='B'&q(i)=='B')|(p(i)=='S'&q(i)=='S')

Ripai, S.Pd., M.Si

143

Page 124: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

h(i)='B'; else h(i)='S'; end end s=['(',s1,'<==>',s2,')'];endset(handles.edit5,'String',h);set(handles.text1,'String',s);

Selanjutnya pada button cpy ke-q, dibuatkan skrip program sebagai berikut:

h=get(handles.edit5,'String');set(handles.edit4,'string',h);s=get(handles.text1,'string');set(handles.edit3,'String',s);

Dengan konsep algoritma program yang sama, buatkan skrip program untuk

copy ke-p dan tuliskan pada kotak berikut:

Setelah semuanya selesai di desain, maka simpanlah program anda dan

jalankan, dan insya Allah anda akan memperoleh hasil sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 125: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Pada kondisi default seperti di atas, kondisi awalnya diberikan kemungkinan

nilai kebenaran unutk pernyataan p adalah BBSS dan q BSBS. Jika tombol ~

pada p anda tekan, maka akn diperoleh output sebagai berikut:

Jika pada listbox yang tersedia anda klik pilihan impilasi, maka akan diperoleh

output program sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 126: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Jika anda ingin menyimpan hasil p==>q ke kolom inputan pertama, maka

tombol copy ke-p di klik, dan insyaAllah akan diperoleh hasil sebagai berikut:

Jika pilihan disjungsi anda klik pada listbox, maka akan diperoleh hasil sebagai

berikut:

Ripai, S.Pd., M.Si

143

Page 127: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Dalam hal ini anda telah melakukan komputasi untuk menghitung nilai

kebenaran dari (p==>q)vq dengan nilai kebenaran BSBB.

Program tersebut masih harus disempurnakan dengan memasukkan komputasi

teori invers, konvers dan kontraposisi. Hal tersebut menjadi tugas mahasiswa.

TUGAS 11

Buatlah program GUI untuk mensimulasikan

a. Definisi Faktorial

b. Definisi semua jenis permutasi

c. Definisi Kombinasi dan

d. Definisi Pembagian.

Ripai, S.Pd., M.Si

143

Page 128: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirahim.

Pada pertemuan sebelumnya telah di bahas membuat GUI untuk algoritma

Eucilden, faktorial, permutasi, kombinasi dan simulasi pembagian. Pada

pertemuan sekarang akan di bahas bagaimana membuat GUI untuk

mensimulasikan berbagai konsep matematika yang berkaitan dengan grafik

fungsi. Diantaranya adalah kurva dengan kemiringan garis singgungnya, limit

kanan fungsi, limit kiri dan lainnya.

Pemograman GUI untuk Mensimulasikan Garis Singgung Pada Kurva

Dengan tujuan mendapatkan program unutk mensimulasikan garis singgung

pada kurva, maka buatlah tampilan GUI sebagai berikut:

Pada tampilan di atas, property yang dipilih unutk membuat tempat mengambar

grafik fungsi adalah axes. Sedangkan pada popupmenu, isiskan dengan string

sebagai berikut:Ripai, S.Pd., M.Si

14 Pemograman Komputasi dengan GUI (Grafical User Interface) Lanjutan

143

Page 129: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Setelah membuat tampilan seperti tersebut di atas, maka selanjutnya, pada

tombol Mulai, anda masukkan skrip program berikut:

syms xf=get(handles.edit1,'String')df=diff(f,x)c=str2double(get(handles.edit2,'String'));x1=str2double(get(handles.edit7,'String'));dx=str2double(get(handles.edit8,'String'));x2=str2double(get(handles.edit9,'String'));x=[x1:dx:x2];konversi=get(handles.radiobutton1,'Value');if konversi==1 c=c*pi./180 x=x.*pi./180endt=str2double(get(handles.edit6,'String'));p=get(handles.popupmenu1,'Value');H=[];switch p case 1 for i=1:length(x) a=x(i);b=subs(f,a);m=subs(df,a);g=m.*x+b-m.*a; hold off; ezplot(f,x);hold on; plot(x,g,'r');hold on;plot(a,b,'*r') if m>0 title(['Garis singung f(x) = ',num2str(m),'x +',... num2str(b-m*a)]) h1={(['x = ',num2str(a)])}; h2={([' m = ',num2str(m)])}; h3={(['g(x)=',num2str(m),'x + ',num2str(b-m*a)])}; h4={(['--------------------------------------- '])}; H=[H;h1;h2;h3;h4]; else title(['g(x)=',num2str(b-

Ripai, S.Pd., M.Si

143

Page 130: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

m*a),num2str(m),'x']) h1={(['x = ',num2str(a)])}; h2={(['m = ',num2str(m)])}; h3={(['g(x)=',num2str(b-m*a),num2str(m),'x'])}; h4={(['--------------------------------------- '])}; H=[H;h1;h2;h3;h4]; end set(handles.listbox1,'String',H); text(a,b,(['<-(',num2str(a),',',num2str(b),');m = ',... num2str(m)])) pause(t); end case 2 a=c;b=subs(f,a);m=subs(df,a);g=m.*x+b-m.*a; hold off;ezplot(f,x);hold on; plot(x,g,'r');hold on;plot(a,b,'*r'); if m>0 title(['g(x) = ',num2str(m),'x +',num2str(b-m*a)]) h1={(['x = ',num2str(a)])}; h2={(['m = ',num2str(m)])}; h3={(['g(x)=',num2str(m),'x +',num2str(b-m*a)])}; H=[H;h1;h2;h3]; else title(['Garis singung f(x)=',num2str(b-m*a),... num2str(m),'x']) h1={(['x = ',num2str(a)])}; h2={(['m = ',num2str(m)])}; h3={(['g(x)=',num2str(b-m*a),num2str(m),'x'])}; H=[H;h1;h2;h3]; end text(a,b,(['<-(',num2str(a),',',num2str(b),');m = ',... num2str(m)])) pause(t); set(handles.listbox1,'String',H);

Ripai, S.Pd., M.Si

143

Page 131: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

endProgram tersebut di atas adalah modifikasi program persamaan garis singgung yang telah di bahas pada perkuliahan sebelumnya.

Catatan:Mahasiswa bersama dosen pembina berdiskusi membahas kontruksi algoritma program tersebut di atas.

Setelah skrip program dimasukkan, selanjutnya disimpan dan ijalankan, maka insya Allah akan memperoleh hasil sebagai berikut:

Pilihan konversi ke-radians pada radio button tersebut, digunakan pada

saat jenis fungsi yang dimasukkan merupakan fungsi trigonometri. Hal

ini disebbakan karena domain dari fungsi trigonometri adalah dalam

bentuk derajat. Contoh simulasinya adalah sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 132: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

PEMOGRAMAN SIMULASI APROKSIMASI DERET TAYLOR

Dengan tujuan membuat program untuk mensimulasikan aproksimasi fungsi

non polinomial dengan fungsi polinomial menggunakan teorema deret taylor,

maka dibuat rancangan program sebagau berikut:

Setelah desain program tersebut selesaai dibuat, maka pada tombol proses,

dimasukkan skrip program berikut ini:

Ripai, S.Pd., M.Si

143

Page 133: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

clc;

disp('--------------------------------------')

disp('Aproksimasi fungsi dengan deret Taylor')

syms x

f=get(handles.edit1,'String');

disp(f)

c=str2double(get(handles.edit2,'String'));

disp(['Titik pusat x = ',num2str(c)])

disp('--------------------------------------')

disp('Hasil')

n=str2double(get(handles.edit3,'String'));

d=str2num(get(handles.edit4,'String'));

konversi=get(handles.radiobutton1,'Value');

if konversi==0

d=d.*pi./180;

end

konversi=get(handles.radiobutton1,'Value');

if konversi==0

d=d.*pi./180;

end

hold off

ezplot(f,d)

r=get(handles.radiobutton2,'Value');

for i=1:n

if r==1

hold off

ezplot(f,d)

end

Ripai, S.Pd., M.Si

143

Page 134: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

hold on

t=taylor(f,i,c,x);

y=subs(t,d);

plot(d,y,'r');

pause(0.1)

disp(' ')

disp(['Untuk n = ',num2str(i)])

pretty(t)

legend(['n = ',num2str(i)])

end

Catatan: Mahasiswa beriskusi dengan dosen pembina dalam upaya

mengkontruksi program tersebut:

Output program jika di eksekusi berdasarkan perintah tersebut adalah sebagai

berikut:

Jika tombol replace diaktifkan, maka akn diperoleh output sebagi berikut:

Ripai, S.Pd., M.Si

143

Page 135: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Selanjutnya pada tombol ezplot dan lihat output, berfikirlah bersma teman-

teman anda untuk mengkontruksi program yang harus dimasukkan dengan

meminta arahan dari dosen pembina. Sebagai gambaran, pada tombol lihat

outpun, diharapan memperoleh output proses pembuatan fungsi aproksimasi

dengan deret taylor sehingga hasil yang diharapkan tersimulasikan adalah

sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 136: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Ripai, S.Pd., M.Si

143

Page 137: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Pada output tersebut, terlihat proses pembentukan fungsi polinomial dari fungsi

f(x)=sin(x)/x mengunakan metode deret taylor. Pada hasil akhir yang diperoleh

terlihat bahwa fungsi yang diberikan adalah fungsi polinomial berderajat 8. Hal

ini memberikan hampiran fungsi f(x)=sin(x)/x dengan ke cocokan kurva sekitar

berada pada domain -3<x<3. Hal ini dapat dilihat dari output grafik sebagi,

yakni

TUGAS 14

1. Buatlah suatu program GUI untuk mensimulasikan pengertian limit

kanan suatu fungsi, limit kiri suatu fungsi dan limit suatu fungsi.

2. Buatlah program GUI untuk mensimulasikan perhitungan luas dan

keliling bangun datar dan luas permukaan dan volume bangun ruang.

Sebagai referensi, desain aplikasi untuk bangun datar sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 138: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Ripai, S.Pd., M.Si

143

Page 139: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirahim.

Pada pertemuan sebelumnya, telah dibahas pemograman pada topik-topik kalkulus dan matematika diskrit. Pada perkuliahan hari ini, akan dibahas pemograman GUI untuk evaluasi ketuntasan hasil belajar. Berikut adalah bentuk desain GUI yang harus dibuat sebagai berikut:

Selanjutnya bersama dosen pembina berdiskusi membahas algoritma komputasi yang dimasukkan pada edit tempat entrian data sebagai berikut:

x=str2num(get(handles.edit1,'string'));set(handles.edit1,'UserData',x);H={(['Data Hasil Belajar'])};H=[H;num2str(x')];set(handles.listbox1,'string',H);bar(x);

Ripai, S.Pd., M.Si

15 Pemograman GUI Lanjutan

143

Page 140: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Apabila program di jalankan, insya Allah akan diperoleh output sebagai berikut:

Jika pada kotak edit (tempat inputan data) di enter (klik dan enter),

maka akan diperoleh output sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 141: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Kemudian jika pada tombol proses diberikan skrip program sebagai

berikut:

x=get(handles.edit1,'UserData');k=str2double(get(handles.edit2,'String'));n=length(x);tdk=[];for i=1:n; if x(i)>=k t(i)=1; else t(i)=0; tdk=[tdk i]; endendT=sum(t);P=T/n*100;H={(['Hasil analisis'])};h={(['Banyaknya Siswa = ',num2str(n)])};H=[H;h];h={(['Banyaknya Tuntas = ',num2str(T)])};H=[H;h];h={(['Ketuntasan Klasikal = ',num2str(P),'%'])};H=[H;h];h={(['No. Siswa tidak Tuntas = ',num2str(tdk)])};H=[H;h]; H=[H;'No N K';num2str([[1:n];x;t]')];set(handles.listbox1,'String',H)hold offplot(x,'-*');hold onplot([1 n],[k k],'-r')grid ontext(0,k,'KKM')xlabel('Nomor Urut Siswa')ylabel('Nilai Siswa')title('Grafik Analisis Ketuntasan Hasil Belajar');legend(['Klasikal = ',num2str(P),'%'])

Maka akan diperoleh output program sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 142: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Output program memerikan tafsiran geometris hasil belajar siswa

sebagaimana pada gambar yang diberikan. Terlihat bahwa terdapat 6 siswa

yang nilainya berada di bawah garis merah yakni garis batas nilai KKM yang

harus dicapai siswa. Dalam teori belajar mengajar, dalam kondisi seperti ini,

maka guru harus memperbaiki secara individu siswa tersebut dan perlu

melakukan refleksi untuk perbaikan cara mengajar agar siswa dapat mencapai

nilai KKM. Pada kotak listbox memberikan informasi tentang banyaknya siswa

peserta tes, banyaknya yang tuntas dan tidak tuntas serta nomor absen siswa

yang tidak tuntas untuk kemudian diberikan bimbingan individu.

Dalam kondisi lain, dimana data hasil belajar sangat banyak atau sudah dientri

pada excel, maka perlu dibuatkan link antara excel dengan matlab agar dalam

analisis menghemat biaya dan waktu analisis dengan memberikan suatu

program untuk upload data excel ke Matlab. Program yang dapat diberikan

unutk aplikasi di atas adalah sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 143: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

[file direktori]=uigetfile({'*.xlsx'},'ambil Data Excel');x=xlsread(file,-1);set(handles.edit1,'string',num2str(x'));set(handles.edit1,'UserData',x');H={(['Data Hasil Belajar'])};H=[H;num2str(x)];set(handles.listbox1,'String',H)hold offbar(x);

Skrip program tersebut dimasukkan pada tombol excel, dan jika dijalankan

akan memperoleh hasil sebagai berikut:

Output di atas merupakan hasil eksekusi dari command [file direktori]=uigetfile({'*.xlsx'},'ambil Data Excel');Yang merupakan perintah unutk membuka kotak dialog open file. Pada forlder

kerja, kita simpan hasil tes belajar siswa sehingga pada kotak dialog terlihat Ripai, S.Pd., M.Si

143

Page 144: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

nama file excel. Selanjutnya file excel tersebut kita pilih dan tekan open,

hasilnya akan terbuka file excel sebagai berikut:

File yang akan diupload adalah nilai siswa, maka untuk itu nilai siswa diblok

dan klik ok pada kotak dialog upload data excel, yakni

Ripai, S.Pd., M.Si

143

Page 145: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Dan hasilnya kan diperoleh sebagai berikut:

Data nilai pada excel, akan masuk pada kotak inputan data yakni edit dan akan

tergambar grafik diagram batangnya serta pada listbox tertulis data nilai yang

dimasukkan. Selanjutnya unutk melakukan analisis ketuntasan hasil belajar,

maka diklik tombol proses dan insyaAllah akan diperoleh hasil sebagai berikut:

Ripai, S.Pd., M.Si

143

Page 146: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

TUGAS 15Kerjan tugas berikut secara individu:

1. Buatlah program untuk membuat tabel distribusi frekuensi dengan aturan struges sehingga diperoleh output program seperti berikut ini:

2. Desain program distribusi frekuensi tersebut sehingga dapat menjadi program uji distribusi normal dengan mengunakan distribusi chi-kuadrat dengan desain program sebagai berikut:

Catatan: Referensi yang bias dirujuk adalah Teori Peluang dan Statistika

Untuk Insiyur dan Ilmuan penerbit ITB. Mahasiswa mempelajari teorinya

dan diskusikan dengan dosen Pembina.

Ripai, S.Pd., M.Si

143

Page 147: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

Bismillahirrahmanirahim:

Ujian akhir semester ditempuh mahasiswa untuk diketahui tingkat

penguasaan pemograman komputer basic dengan kisi-kisi soal sebagai

berikut:

No Indikator Ket1 Mahasiswa dapat merancang algoritma komputasi

dengan strukutr if, for, while dan switch dari suatu permasalahan matematika

2 Mahasiswa dapat menentukan output dari suatu algoritma komputasi yang diberikan

3 Mahasiswa dapat mengidentifikasi konsep matematika dari suatu algoritma komputasi yang diberikan

4 Mahasiswa dapat menentukan letak kesalahan suatu algoritma program dan menentukan perbaikanya

5 Mahasiswa dapat memberikan perintah untuk mengambil data dari excel

6 Mahasiswa dapat menuliskan perintah untuk mengambil suatu nilai dari property dan menempatkan nilai pada suatu property dalam pemograman GUI

Soal didesain dengan bentuk isisan singkat, artinya dalam menjawab soal

tersebut, mahasiswa mengisi jawaban yang benar secara singkat pada kolom

jawaban yang telah disediakan. Berikut beberapa contoh soal yang

dimaksudkan.

Ripai, S.Pd., M.Si

16 Ujian Akhir Semester

143

Page 148: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Soal Jawaban1 M=[0 2 3 4;5 0 3 2;5 6 7 3];

tuiskan matriks m yang diperoleh berdasarkan perintahm=M(1,:);for i=2:3 m=[m M(i,:)];

end3 Tuliskan output dari matriks M jika dikenai perintah

berikutn=length(M);for i=1:n-1 for j=i+1:n if M(i)<M(j) T=M(i); M(i)=M(j); M(j)=T; end endend

4 Jika variabel p = [0 1 1 0] dan function lala terdefinisi dengann=length(p);for i=1:n if p(i)==1 h(i)=0 else h(i)=1; endend a.Tuliskan bentuk kekurangan program dan lengkapib. Tuliskan konsep matematika yang di programkanc. Tuliskan cara penggunaan function tersebut pada pd. tuliskan outputnya

5 Perhatikan skrip berikut:a=input('a = '); b=input('b = ');while a~=0 r=mod(b,a);

Ripai, S.Pd., M.Si

143

Page 149: Ripai, S.Pd., M.Si - ripaimat.files.wordpress.com  · Web view6 7 15 Menghapus Elemen matriks C pada kolom ke-2 ... 1 Segitiga pascal ... Misalnya dalam menghitung nilai n!yang terdefinisi

Kompter Pemograman BasicBerbasis Matrik Laboratorium

No Soal Jawaban h=(b-r)/a; b=a;a=r;endTuliskan konsep matematika yang dikontruksiSelidiki apakah terdapat kekurangan kontruksi program tersebut ditinjau dari konsep matematika.Jika b=80 dan a = 12, maka tentukan nilai a dan b yang terakhir.

6 Pada command window di berikan perintah dan mendapatkan outpus sbb:factorial(5)ans = 120Gunakan function tersebut untuk membangun komputasi kombinasi

7 Buatlah skrip M file membuat perhitungan nilai mahasiswa dengan Inputan U1= Nilai Tugas; U2 = Nilai Mid dan U3 = Nilai UASDan output OutputNilai Akhir (NA) = 20%U1 + 30%U2 + 50% U3Dan grade dengan ketentuanNilai A jika NA≥80Nilai B jika 70<NA ≤80Nilai C jika 55< NA ≤65Nilai D jika 40<NA≤55Nilai E jika 0≤NA≤40

Ripai, S.Pd., M.Si

143