Jawaban Soal Aljabar Linear

Sehubungan ada masalah dengan ruangan praktikum hari ini (perbaikan) maka pertemuan kali ini hanya mereview hasil UTS yang lalu. Hasilnya kebanyakan salah di program dengan bahasa C++, sedangkan untuk yang berbahasa Matlab kebanyakan benar (walaupun ada jawaban yang saya sendiri bingung, waktu mengerjakan mikir apa sih?).

Berikut hasil jawabannya, contoh untuk kasus dengan NPM terakhir bernomor 1. Untuk Matlab kita mengalikan Matriks A dan B dengan memasukan matriks A=[1 3;2 4;5 6;7 8], B=[1 2 3;4 5 8], dilanjutkan dengan instruksi C=A*B. Sedangkan untuk bahasa C++ dapat dilihat koding berikut ini (ganti X dengan C ya supaya sesuai dengan soal):

  1. #include<stdio.h>
  2. #include<iostream.h>
  3. void main()
  4. {
  5. int A[4][2]={1,3,2,4,5,6,7,8};
  6. int B[2][3]={1,2,3,4,5,8};
  7. int i,j;
  8. int a,b,c,X[4][3];
  9. cout<<“Matriks A = “<<“\n”;
  10. for(i=0;i<4;i++)
  11. {
    1. for(j=0;j<2;j++)
    2. {
      1. cout<<A[i][j]<<” “;
    3. }
    4. cout<<“\n”;
  12. }
  13. cout<<“Matriks B = “<<“\n”;
  14. for(i=0;i<2;i++)
  15. {
    1. for(j=0;j<3;j++)
    2. {
      1. cout<<B[i][j]<<” “;
    3. }
    4. cout<<“\n”;
  16. }
  17. for(a=0;a<4;a++)
  18. {
    1. for(b=0;b<3;b++)
    2. {
      1. X[a][b]=0;
      2. for(c=0;c<2;c++)
      3. {
        1. X[a][b]=X[a][b]+A[a][c]*B[c][b];
      4. }
    3. }
  19. }
  20. cout<<“Hasil Kali = \n”;
  21. for(a=0;a<4;a++)
  22. {
    1. for(b=0;b<3;b++)
    2. {
      1. cout<<X[a][b]<<” “;
    3. }
    4. cout<<” \n”;
  23. }
  24. }

Berikut tampilan keluarannya:

Wireless Router Untuk Hotspot

Pertemuan kali ini membahas wireless router. Wireless router adalah router yang menggunakan media tanpa kabel. Cisco memiliki wireless router setelah membeli produk dari vendor linksys. Prinsip penggunaannya hampir sama dengan cisco, tetapi dengan adanya tambahan fasilitas untuk pembuatan hotspot.

Buka Cisco packet router dan buat sebuah network dengan tiga segmen. Segmen pertama dan kedua menggunakan LAN dengan kabel, sedangkan segmen ketiga adalah LAN tanpa kabel (wireless LAN). Gunakan router RIP dan tambahkan End Device laptop, untuk mencoba hotspot.

Jangan lupa menambahkan modul wireless untuk laptop agar bisa terhubung ke hotspot. Cara melakukan setting linksys cukup mudah, gunakan GUI yang ada pada packet tracer agar seolah-olah kita menyeting langsung.

Uji dengan melakukan PING antar laptop dan antara laptop dengan PC pada router. Ada sedikit masalah pada setting wifi dengan tablet/pda. Juga ping antara laptop ke PC sedikit bermasalah.

 

UTS P. PENGATURAN II

 

PENG. PENGATURAN, 13.11.2012, T. KOMPUTER D3

 

  1. Suatu sistem kontrol mempunyai fungsi alih :

    Buat instruksinya dalam MATLAB (sampling 0.1 detik dan teknik ‘ZOH’) untuk:

    1. Mengkonversi menjadi sistem diskrit
    2. Membuat grafik untuk masukan tangga (step).

 

  1. Suatu sistem memiliki fungsi alih
    1. Konversi nilainya menjadi sistem kontinyu
    2. Buat grafik dengan masukan step untuk menguji sistem tersebut

NOTE: NPM berarti harga terakhir NPM Saudara, jika 0 ambil harga 10. Sedangkan NPM2 adalah angka sebelum angka terakhir NPM Saudara, Jika 0 ganti 10.

PENGUMUMAN

Komputer I, 08-11-2012, T. Elektro D3

UTS akan dilaksanakan minggu depan dengan soal:

  1. Membuat Blog Pribadi (akan di cek saat pelaksanaan UTS)
  2. Membuat Daftar Isi otomatis (otomatic table of contents)

Note: Nama blog mirip dengan nama masing2, atau buat / publish, tulisan yang mencirikan bahwa blog itu bukan blog orang lain.

Input Data Transaksi dengan Visual Basic 6 (ADODC)

Pada pertemuan minggu lalu (https://rahmadyatrias.wordpress.com/2012/10/30/koneksi-dua-tabel-dalam-satu-form/) kita membuat satu form yang berisi koneksi dua tabel (adodc1 dan adodc2). Sekarang kita akan mencoba mengimplementasikan suatu manipulasi terhadap tabel kedua, misalnya transaksi barang. Barang yang dijual harus berada pada tabel material.

Buat isian pada input transaksi. Karena barang yang dijual harus berada di tabel material (bagian atas), maka di sini diberi tombol tekan “cari brg” agar sebelum transaksi, barang dipastikan ada pada tabel material. Gunakan kode berikut di tombol ‘Cari Brg’

Private Sub Command5_Click()

Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find “kode=” + Text5.Text + “”

If Not Adodc1.Recordset.EOF Then

Text6.Text = Adodc1.Recordset.Fields(1)

Else

MsgBox “maaf barang tidak ada”

End If

End Sub

Sedangkan untuk mengaktifkan tombol tekan input, gunakan kode berikut (perhatikan posisi text1, text2, dst harus sesuai dengan nama yang anda buat).

Private Sub Command4_Click()

Adodc2.Recordset.AddNew

Me.Adodc2.Recordset.Fields(0) = Text4.Text

Me.Adodc2.Recordset.Fields(1) = Text6.Text

Me.Adodc2.Recordset.Fields(2) = Text7.Text

End Sub

Ketika tombol CARI BRG ditekan akan menampilkan nama barang. Selanjutnya tinggal mengisi kolom isian lainnya sebelum tombol input ditekan

Looping pada Bahasa Rakitan (Debug)

Bahasa Assembly, 06.11.2012, T. Komputer

Bahasa pemrograman tingkat tinggi memiliki instruksi looping seperti ‘for’, ‘do – while’, dan sejenisnya. Pada bahasa rakitan, instruksi tersebut dilayani oleh register ‘c’. Misalnya kita akan mencetak huruf ‘A’ sebanyak 10 kali, maka register CX haris diisi: A

Pada program di atas ada kesalahan pada lokasi looping yaitu seharusnya di 107 tertulis 104, sehingga program akan berjalan terus tidak berhenti.

Intruksi berikut ini akan menghasilkan?

Pohon Keputusan

Mat. Diskrit, 06.11.2012, T.Komputer

Pohon keputusan banyak dimanfaatkan untuk membantu pengambil keputusan dalam menentukan alternatif-alternatif pilihan yang ada. Dalam bidang kesehatan dapat digunakan untuk meprediksi penyakit pasien berdasarkan gejala-gejala yang ada. Buka matlab, buat dua buah matriks (matriks nilai dan matriks jurusan) yang akan dicari pohon keputusannya.

nilai =

 

8 7 6

7 8 7

8 8 9

7 8 6

6 6 8

10 9 9

5 6 7

6 6 7

jurusan =

 

ipa

ips

bhs

ips

bhs

ipa

bhs

bhs

Buat nama variabel dengan instruksi:

varnames = {‘nilai ipa’ ‘nilai ips’ ‘nilai bahasa’};

Berikutnya buat pohon keputusannya:

t1 = classregtree(nilai,jurusan,’splitmin’,5,’names’,varnames);

Setelah dijalankan >> view(t1) akan muncul pohon keputusannya:

Materi Ujian Tengah Semester Metode Elemen Hingga

Metode Elemen Hingga, 05.11.2012, T. Mesin S1

Berikut ini gambaran soal UTS Metode Elemen Hingga Teknik Mesin UNISMA (bae banget ya .. J). Buat programnya dalam bahasa Matlab, jika suhu atas, bawah, kiri dan kanan dimasukan suhu, akan diketahui Matriks suhunya disertai suhu pada titik-titik dalam Mesh itu (T1, T2, T3, T4, T5 dan T6).

Coba buat dengan disertai GUI jika mampu ( .. kyk pergi haji aja J), atau secara text-based juga tidak apa-apa. UTS nanti formasi nomor suhu, besar suhu, kemungkinan berbeda-beda tiap siswa. Lihat tulisan terdahulu untuk mengerjakannya.

Membuat Logika AND di Anfis

Upload Via Word, 1.11.2012. Tk. Elektronika

And merupakan operator logika dimana masukan kiri dan masukan kanan harus berharga ‘1’ jika ingin dihasilkan keluaran = 1. Untuk mempraktekannya coba buka Matlab anda. Masukkan data di matlab:

>> dat

 

dat =

 

0 0 0

1 0 0

0 1 0

1 1 1

Kemudian ketik anfisedit

Load data dari workspace yang baru saja dibuat, rancang struktur dengan dua mf di tiap tiap masukan. Hasilnya seperti ini, dibuat dua, karena rencananya hanya aka nada dua masukan dekat ke 0 atau ke 1

Lakukan training, kemudian simpan ke file. Buka fuzzy hasil create. Uji RULEnya.

Tarik garis merah ke kenan semua (berarti masukan 1 =1 dan masukan kanan 1), maka hasil output harus satu. Sebaliknya selain itu, missal kiri 0 dan kanan 1, hasilnya harus 0.

Koneksi dua Tabel dalam Satu Form

Pemr VB 6, 30.10.2012, Tek Sipil S1

Melanjutkan materi minggu lalu, kita mencoba menambahkan satu table dalam satu Form di VB. Tambahkan satu tabel baru di Database yang telah Anda buat, misalnya tabel transaksi. Tabel ini berisi transaksi penjualan material.

Untuk latihan, isi field-field di tabel transaksi yaitu No, kode dan Total. Masukan satu record awal, misalnya pembelian barang dengan kode 001 sebesar 110000. Klik Database Tools, buat relasi antara tabel material dengan tabel transaksi. Perhatikan, kode barang pada transaksi harus terkoneksi dengan kode barang pada tabel material.

Jika sudah selesai, buka project VB yang lalu, tambahkan DBGrid dan ADODC baru untuk mengkoneksikan tabel transaksi ke form tersebut. Gunakan cara yang sama dengan materi minggu lalu.

Coba koneksikan sehingga jika dijalankan Data Grid di bawah akan berisi data transaksi. Lanjut minggu depan bagaimana mengisi kode-nya.

Mengalikan Matriks dengan Ukuran Bervariasi

Aljabar Linear, 30.10.2012, T.Komputer

Jika pada pertemuan yang lalu kita mengalikan matriks ukuran 2×3 dengan 3×2, sekarang kita akan mengalikan matriks yang ukurannya tergantung dari pengguna asalkan tidak menyalahi kaidah perkalian (jumlah kolom matriks kiri harus sama dengan jumlah baris matriks kanan). Gunakan listing berikut ini (jika mengkopi – paste, jangan lupa simbol petik ” harus diketik ulang):

  • #include<stdio.h>
  • #include<iostream.h>
    • void main()
    • {
    • int i,j,A[5][5],B[5][5],ia,ja,ib,jb,a,b,c,X[5][5];
    • //menginput matriks A
    • cout<<“Masukkan Jumlah Baris Matriks A : “;
    • cin>>ia;
    • cout<<“Masukkan Jumlah Kolom Matriks A : “;
    • cin>>ja;
    • cout<<“Masukkan Matriks A \n”;
    • for(i=0;i<ia;i++)
    • {
      • for(j=0;j<ja;j++)
      • {
        • cout<<“Masukkan Elemen Matriks ke “<<(i+1)<<“,”<<(j+1)<<” :”;
        • cin>>A[i][j];
      • }
    • }
    • //menginput matriks B
    • cout<<“Masukkan Jumlah Baris Matriks B : “;
    • cin>>ib;
    • cout<<“Masukkan Jumlah Kolom Matriks B : “;
    • cin>>jb;
    • cout<<“Masukkan Matriks A \n”;
    • for(i=0;i<ib;i++)
    • {
      • for(j=0;j<jb;j++)
      • {
        • cout<<“Masukkan Elemen Matriks ke “<<(i+1)<<“,”<<(j+1)<<” :”;
        • cin>>B[i][j];
      • }
    • }
    • //menampilkan matriks A
    • cout<<“Matriks A = \n”;
    • for(i=0;i<ia;i++)
    • {
      • for(j=0;j<ja;j++)
      • {
        • cout<<A[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //menampilkan matriks B
    • cout<<“Matriks B = \n”;
    • for(i=0;i<ib;i++)
    • {
      • for(j=0;j<jb;j++)
      • {
        • cout<<B[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //mentraspose matriks A
    • cout<<“Transport matriks A : “<<“\n”;
    • for(j=0;j<ja;j++)
    • {
      • for(i=0;i<ia;i++)
      • {
        • cout<<A[i][j]<<” “;
      • }
      • cout<<“\n”;
    • }
    • //Mengalikan Matriks A dengan B
    • cout<<“Hasil kali Matriks A dengan B :”<<“\n”;
    • cout<<“Ukuran Matriks = “<<ia<<“x”<<jb<<“\n”;
    • for(a=0;a<ia;a++)
    • {    for(b=0;b<jb;b++)
      • {X[a][b]=0;
      • for(c=0;c<ja;c++)
      • {
      • X[a][b]=X[a][b]+A[a][c]*B[c][b];
      • }
      • }
    • }
    • //Menampilkan Matriks X
    • for(a=0;a<ia;a++)
    • {    for(b=0;b<jb;b++)
      • {
      • cout<<X[a][b]<<” “;
      • }
      • cout<<“\n”;
    • }
    • }

Setelah dijalankan akan dihasilkan perkalian matriks dengan ukuran yang ditentukan oleh pengguna program.

Ganti Baris Pada Bahasa Rakitan (Debug)

Ganti baris pada bahasa rakitan prinsipnya adalah mencetak dua kode ASCII 0D dan 0A berturut-turut. Di sini ASCII 0A berfungsi turun satu baris, sedangkan 0D geser ke kiri satu baris. Jika kita hanya menggunakan 0A maka baris berikutnya akan maju satu digit dari yang atasnya (ada offset).

Perhatikan gambar di atas, hurub ABC akan ada offset satu ketukan tiap ganti baris, Oleh karena itu saat berganti baris kita harus tambahkan 0D agar bergeser ke kiri juga dan tidak hanya turun satu baris. Perhatikan listing berikut ini.

Perhatikan, hasilnya ABC tercetak dalam baris yang berbeda tetapi dalam kolom yang sama dan tidak ada offset ke kanan satu digit. Sengaja digunakan push dan pop sekalian belajar instruksi itu .. dan biar pusing dikit J.

Merancang Apliksai Sederhana Perhitungan Kalor dgn Matlab

Metode Elemen Hingga, 29.10.2012, Tek Mesin S1

Setelah pada pertemuan sebelumnya kita membuat aplikasi perhitungan suhu suatu bidang dua dimensi dengan console (text-based), sekarang kita coba untuk membuat aplikasi yang berbasis Graphical User Interface (GUI). Untuk mempraktekannya download gambar berikut ini.

Kemudian pada command window ketik guide. Rancang disain seperti di bawah ini:

Gunakan teknik yang telah dijelaskan pada pertemuan yang lalu untuk menghitung nilai empat suhu di tengah jika atas, bawah, kiri dan kanan diberi suhu. Jika dijalankan hasilnya kira2 seperti di bawah ini.

Graph Theory 2

Mat Diskrit, 29.10.2012, T. Komputer D3

Jika pada pertemuan yang lalu kita menggunakan graph berarah, sekarang kita coba graph yang tidak berarah. Dalam Matlab tidak jauh berbeda teknik memasukkan datanya. Tetap gunakan arah panah sebagai patokan.

Setelah memasukan matriks graphnya:

>> W=[.5 .4 .3 .4 .2 .1];

>> DG=sparse([2 1 4 4 3 5],[1 3 3 2 5 4],W)

>>view(biograph(DG,[],’ShowWeights’,’on’))

Tekan tombol Accept. Akan dihasilkan gambar graph sebagai berikut:

Sekarang mencari Matriks graph untuk mengetahui jalur terpendek:

>> graphallshortestpaths(DG)

 

ans =

 

0 1.1000 0.4000 0.7000 0.6000

0.5000 0 0.9000 1.2000 1.1000

1.2000 0.7000 0 0.3000 0.2000

0.9000 0.4000 0.3000 0 0.5000

1.0000 0.5000 0.4000 0.1000 0

Untuk yang tidak berarah:

>> UG = tril(DG + DG’)

Matriks jalur terpendeknya:

>> graphallshortestpaths(UG)

 

ans =

 

0 Inf Inf Inf Inf

0.5000 0 Inf Inf Inf

0.4000 Inf 0 Inf Inf

0.7000 0.4000 0.3000 0 Inf

0.6000 0.5000 0.2000 0.1000 0

Mengalikan Matriks (2×3) dengan (3×2)

Aljabar Linear, 25.10.2012, T.Komputer D3, Lab Hardware

Pertemuan yang lalu kita telah membuat program perkalian dua buah matriks 3×3, sekarang kita coba membuat program mengalikan dua buah matriks, yakni matriks 2×3 dengan 3×2. Untuk menerima inputan matriks dari keyboard, buka program yang lalu. Lakukan modifikasi jangkauan i dan j baik untuk matriks kiri (A) dan matriks kanan (B).

Perhatikan kode di atas hasil modifikasi dari program sebelumnya. Deklarasi variabel, tidak ada perubahan, hanya saja format matriks A, B, dan X yang berubah jangkauan matriksnya. Matriks A jumlah baris 2 dan kolom 3, sebaliknya Matriks B dengan jumlah kolom 3 dan baris 2. Jangan lupa, kalang (for) untuk menampilkan matriks A dan B juga harus dimodifikasi.

Akhirnya, setelah Matriks A dan B terbentuk, dibuat satu kalang untuk membuat matriks X hasil perkalian kedua matriks itu. Perhatikan karena hasil kali matriks (2×3) dan (3×2) haruslah berukuran (2×2) maka a dan b dijaga dari 0 sampai 1 (array dimulai dari 0). Jalankan (Ctrl-F9).

Untuk latihan, coba buat program yang mengalikan matriks berapa saja, fleksibel, tergantung masukan ukuran matriks yang akan dikalikan. Tentu saja jika tidak memenuhi syarat, program langsung memberi respon adanya kesalahan tentang ukuran matriks sebagai syarat perkalian.