Matriks. Tim Pengajar KU1072. KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

dokumen-dokumen yang mirip
MATRIKS P E N G E N A L A N P R O G R A M S T U D I. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE 2 MATRIX

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

MATRIKS. Dapat disimpan secara linier dan kontigu dengan dua alternatif sebagai berikut : a. Per baris

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

REVIEW ARRAY. Institut Teknologi Sumatera

Array (Tabel) [DalamBahasaC++]

PENGANTAR KOMPUTER & SOFTWARE II. Pengulangan (For) Tim Pengajar KU Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II

PERTEMUAN 8 MATRIX. Introduction Definition How is matrix stored in memory Declaration Processing

PERULANGAN P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Subprogram (dalam Bahasa C++ + Flowchart)

STRUKTUR DASAR PEMROGRAMAN

LATIHAN SOAL (FUNGSI & PROSEDUR)

LatihanSoal 2 (dalambahasac++)

StrukturDasarProgram Prosedural (dalambahasac++)

Array dan Matriks. IF2121 / Algoritma dan Struktur Data Sem / /7/2017 IF2121/sem /2018 1

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

Pertemuan 2 ARRAY DIMENSI 1 & 2

1 Array dan Tipe Data Bentukan

Algoritma Pemrograman & Struktur Data

ARRAY DIMENSI 1 & 2. Array dapat didefinisikan sebagai suatu himpunan hingga elemen yang terurut dan homogen.

BAB XI ARRAY (LARIK)

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori.

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Pertemuan 2 ARRAY DIMENSI 1 & 2

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

Algoritma Pemrograman

BAB IV LARIK DAN PENUNJUK

Konsep Array dalam PBO

Algoritma Pemrograman

Algoritma Pemrograman

Pengenalan Array. Array Satu Dimensi

BAB I. LARIK (ARRAY) Array (larik) ialah penampung sejumlah data sejenis (homogen) yang menggunakan satu identifier (pengenal).

MODUL IV ARRAY DAN STRUCTURE

Pert 2 Struktur Data (mengajarkomputer.wordpress.com) ARRAY DIMENSI 1 & 2

Pertemuan - 3. Array dan Matriks (Bab 2) Oleh : Boldson Herdianto. S., Skom., MMSI.

Larik/ Array int a1, a2, a3, a4, a5;

RUBRIK PENILAIAN UJIAN TENGAH SEMESTER KU1072/PENGENALAN TEKNOLOGI INFORMASI B SEM /2014

Pengulangan/Looping (dalambahasac++)

Kisi-Kisi Ujian Akhir Semester Algoritma dan Pemrograman Lanjut

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN

Algoritma Pemrograman

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-2 Array (Larik)

a. Array berdimensi satu o Setiap elemen array dapat diakses melalui indeks. o Indeks array (subscript) secara default dimulai dari 0.

Algoritma dan Pemrograman Array/Tabel[1] Oleh: Eddy Prasetyo N

PEMROGRAMAN BERORIENTASI OBJEK

Komentar, Identifier, Konstanta dan Variabel

Algoritma & Pemrograman #10

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

UJIAN TENGAH SEMESTER KU1072/PENGENALAN TEKNOLOGI INFORMASI B SEM /2014

BAHASA PEMROGRAMAN 1 (PERTEMUAN 3)

INF-103 Pemrograman II VECTOR & STRING. Dr. Taufik Fuadi Abidin, M.Tech Irvanizam Zamanhuri, M.Sc. Program Studi Informatika FMIPA UNIVERSITAS KUALA

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti

Identitas dosen POKOK BAHASAN. Suherman,, ST Address. : Cilegon Mobile : Ym Blog

Array 1 A. TUJUAN PEMBELAJARAN

Konsep Dasar Pemrograman Dan Pengenalan C++

DASAR PEMROGRAMAN ARRAY. Array Satu Dimensi Array Dua Dimensi. Yoannita. Some slide from Hermawan,S.Kom

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

LAPORAN PRAKTIKUM RESMI QUEUE

LARIK (ARRAY) Latar Belakang Array

A. Putting a Program Together

Algoritma dan Struktur data. P e r t e m u a n 3. Array (larik) Tenia Wahyuningrum ST3 Telkom Purwokerto L/O/G/O.

Struktur Program. Rinta Kridalukmana

A. Putting a Program Together

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

Makalah. STRUKTUR DATA ( Array )

Matriks. Algoritma Pemrograman. Definisi Matriks

Struktur dan Organisasi Data 2 ARRAY

AnalisisKasus/Percabangan (dalambahasac++)

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

BAB VI TIPE DATA ARRAY

MATERI IV ARRAY. Materi Praktikum Pemograman Bahasa C++ dengan menggunakan variabel Array

LAPORAN RESMI PRAKTIKUM ALGORITMA PEMROGRAMAN MODUL V ARRAY

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

Penggunaan Private dan Public dalam C++

Array (Tabel) Tim Pengajar KU1071 Sem /11/3 TW/KU1071 1

P3 Dasar Struktur Data TIF42/SIF42

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

LOGIKA ALGORITMA. Pertemuan 9 By: Augury

MODUL V POINTER DAN STRING

Spesifikasi: Ukuran: 14x21 cm Tebal: 225 hlm Harga: Rp Terbit pertama: Februari 2005 Sinopsis singkat:

ARRAY. Array atau Larik merupakan Struktur Data Sederhana yang dapat didefinisikan sebagai pemesanan alokasi memory sementara pada komputer.

Array 1 Dimensi pada Java

BAB 2 ARRAY. Array adalah suatu himpunan hingga elemen, terurut dan homogen.

Pemrograman Dasar A R R A Y

Algoritma dan Pemrograman. Pertemuan Ke-12 Tipe data array/larik 1

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

ARRAY. Vektor adalah bentuk yang sederhana dari array, yang merupakan array dimensi satu. Array N dapat kita bayangkan :

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

Basic Input/Output Operator Yoannita

PRAKTIKUM 9 ARRAY. ARRAY BERDIMENSI SATU Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa :

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

Array. Adharul Muttaqin Universitas Brawijaya Malang. Array

Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Fungsi 1. Ekohariadi FT Unesa

Transkripsi:

Matriks Tim Pengajar KU1072 KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

Tujuan Perkuliahan Mahasiswa memahami matriksdan representasinya sebagai array of array Mahasiswa dapat menggunakan notasi pendefinisian dan pengacuan matriks dengan benar Mahasiswa dapat melakukan beberapa operasi dasar terkait matriks Mahasiswa dapat membuat program dengan menggunakan matriks 2013/10/25 Tim PTI B/Sem. I 2013/2014 2

Definisi Matriks: Sekumpulan informasi yang setiap individu elemennya terdefinisi berdasarkan dua buah indeks(yang biasanya dikonotasikan dengan baris dan kolom) Setiap elemen matriks dapat diakses secara langsung jika kedua indeks diketahui. Setiap elemen matriks mempunyai type yang homogen Indeks baris dan kolom harus bertypeyang mempunyai keterurutan (suksesor/predesesor), misalnya integer. Matriks adalah struktur data dengan memori internal. Struktur ini praktis untuk dipakai tetapi memakan memori! Matriks integer 100 x 100 memakan 10000 x tempat penyimpanan integer. 12-Jun-13 Tim PTI B/Sem. I 2013/2014 3

Memori Matriks (1/2) Matriks adalah struktur data statik (ukurannya ditentukan dari awal) Untuk keperluan ini, sering kali memori dipesan berlebihan untuk kemudian dipakai sebagian saja 12-Jun-13 Tim PTI B/Sem. I 2013/2014 4

Contoh-1 MatNamaHari Merepresentasikan nama hari ke-1 s.d. 7 dalam 3 bahasa (Indonesia, Inggris, Prancis) Indeks baris : 1 s.d. 7; indeks kolom : 1 s.d. 3 Elemen matriks ber-type string 12-Jun-13 Tim PTI B/Sem. I 2013/2014 5

Contoh-2 MatUkur Indeks (i, j) merepresentasikan suatu titik koordinat Elemen matriks merepresentasikan hasil pengukuran pada suatu titik koordinat tertentu Indeks baris : 1 s.d. 5, indeks kolom : 1 s.d. 5 Elemen matriks ber-type real 12-Jun-13 Tim PTI B/Sem. I 2013/2014 6

Contoh-3 MatSat Merupakan matriks satuan, yaitu matriks dengan elemen bernilai hanya 0 atau 1 Indeks baris : 1 s.d. 4; indeks kolom 1 s.d. 4 Elemen matriks ber-type integer 1 2 3 4 1 1 0 0 0 2 0 1 0 0 3 0 0 1 0 4 0 0 0 1 12-Jun-13 Tim PTI B/Sem. I 2013/2014 7

Contoh-4 MatSurvey: Matriks hasil survey pada titik kordinat. Setiap elemen matriks merepresentasikanhasil pengukuran <temperatur, kecepatan angin> pada titik koordinat (i, j) 12-Jun-13 Tim PTI B/Sem. I 2013/2014 8

ContohPemakaian Operasi biasa matriks dalam matematika : penjumlahan, perkalian, menentukan determinan, menginvers sebuah matriks, transpose, dll. Semua "perhitungan" itu menjadi tidak primitif, harus diprogram Sistem persamaan linier dan operational research Persoalan algoritmik: untuk menyimpan informasi yang cirinya ditentukan oleh 2 dimensi (diterjemahkan dalam baris dan kolom). Contoh: cell pada sebuah spreadsheet, ruangan gedung bertingkat 12-Jun-13 Tim PTI B/Sem. I 2013/2014 9

Implementasi Matriks di C++ (1) Memori matriks diimplementasikan sebagai array 2 dimensi Suatu elemen matriks diakses dengan indeks baris dan kolom bertype integer Elemen matriks dideklarasikan memiliki type yang sama (homogen) Cara deklarasi: <type-elmt> <namamatriks>[<#baris>][<#kolom>]; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 10

Implementasi Matriks di C++ (2) Contoh: int MatSatuan [10][10]; Matriks bernama MatSatuandengan setiap elemen bertype integer, dengan banyaknya baris = 10 dan banyaknya kolom = 10; dengan alamat setiap elemen diakses melalui indeks baris 0 s.d. 9 dan indeks kolom 0 s.d. 9. 12-Jun-13 Tim PTI B/Sem. I 2013/2014 11

Implementasi Matriks di C++ (3) Cara akses elemen matriks: <namamatriks>[<brs>][<kol>] Contoh: int M1[5][5]; cout << M1[4][0]; // akan tercetak: 21 int x = M1[0][0] * M1[3][3]; // x bernilai 19 M1[1][1] = 8; // Elemen brs. 1, kol. 1 menjadi 8 M1[0][5]?? // tidak terdefinisi! 0 1 2 3 4 0 1 2 3 4 5 1 6 7 8 9 10 2 11 12 13 14 15 3 16 17 18 19 20 4 21 22 23 24 25 12-Jun-13 Tim PTI B/Sem. I 2013/2014 12

Implementasi Matriks di C++ (4) Hanya sebagian dari memori matriks yang akan benar-benar digunakan untuk menyimpan elemen matriks Contoh: deklarasi matriks 10x10, namun yang secara aktual dipakai hanya 4x3 Sekali matriks didefinisikan dimungkinkan berubah ukuran baris dan kolomnya 0 1 2 3 4 5 6 7 8 9 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 6 7 8 9 12-Jun-13 Tim PTI B/Sem. I 2013/2014 13

Implementasi Matriks di C++ (5) Dibutuhkan: Banyaknya baris efektif (misal NBrs) : banyaknya baris yang dipakai Banyaknya kolom efektif (misal NKol) : banyaknya kolom yang dipakai Elemen matriks yang boleh diakses hanya yang dipakai NKol= 3 0 1 2 3 4 5 6 7 8 9 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 6 7 8 9 NBrs= 4 12-Jun-13 Tim PTI B/Sem. I 2013/2014 14

Operasi-Operasi pada Matriks Mendeklarasikan dan mendefinisikan isi matriks Menuliskan isi matriks ke layar Operasi 1 matriks: Menghitung total semua elemen matriks Mengalikan isi matriks dengan sebuah konstanta Transpose matriks Operasi 2 matriks: Menambahkan dua matriks Mengalikan dua matriks 12-Jun-13 Tim PTI B/Sem. I 2013/2014 15

Mengisi dan Menuliskan Isi Sebuah Matriks Deklarasi matriks dan inisialisasi baris+kolom efektif Membaca isi matriks dari hasil kalkulasi Menampilkan ke layar //Mendefinisikan isi sebuah matriks #include <iostream> using namespace std; int main () { // KAMUS int M[10][10]; //Deklarasi matriks int NBrs, NKol; //Baris dan kolom efektif int i, j; // ALGORITMA // Mengisi matriks NBrs = 5; NKol = 5; for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { M[i][j] = i*j; // Menuliskan isi matriks ke layar for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { cout << M[i][j] << " "; cout << endl; //ganti baris return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 16

Membaca dan Menuliskan Isi Sebuah Matriks Deklarasi matriks Inisialisasi baris+kolom efektif dari masukan user Membaca isi matriks dari user Menampilkan isi matriks ke layar //Mendefinisikan isi sebuah matriks //dari masukan pengguna #include <iostream> using namespace std; int main () { // KAMUS int M[10][10]; int NBrs, NKol; int i, j; // ALGORITMA cout << "Baris efektif = "; cin >> NBrs; cout << "Kolom efektif = "; cin >> NKol; //asumsi NBrs dan NKol selalu benar //Membaca isi matriks for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { cout << "Elemen ke-[" << i << ", " << j << "] = "; cin >> M[i][j]; // Menuliskan isi matriks ke layar for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { cout << M[i][j] << " "; cout << endl; //ganti baris return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 17

Menghitung Total Elemen Men-total seluruh elemen yang ada di matriks dan menampilkan hasilnya ke layar //Mendefinisikan isi sebuah matriks #include <iostream> using namespace std; int main () { // KAMUS int M[10][10]; //Deklarasi matriks int NBrs, NKol; //Baris dan kolom efektif int i, j, sum; // ALGORITMA // Mengisi matriks // M diasumsikan sudah diisi // Mnghitung sum elemen sum = 0; for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { sum = sum + M[i][j]; // Menuliskan hasil sum ke layar cout << "Total semua elemen = " << sum; return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 18

Mengalikan Elemen Matriks dgn Konstanta Setiap elemen matriks dikalikan dengan suatu konstanta, misal x // Mengalikan isi matriks dengan sebuah // konstanta #include <iostream> using namespace std; int main () { // KAMUS int M[10][10]; int NBrs, NKol; int i, j, x; // ALGORITMA // Membaca isi matriks : buat sebagai // latihan // Mengalikan elemen matriks dengan x cout << "Faktor pengali = "; cin >> x; for (i=0; i<nbrs; i++) { for (j=0; j<nkol; j++) { M[i][j] = M[i][j] * x; // Menuliskan matriks baru ke layar : buat // sebagai latihan return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 19

Transpose Matriks (1) Dideklarasikan 2 buah matriks, misalnya M dan MTranspose MTranspose menampung hasil transpose dari M Ukuran baris efektif M = ukuran kolom efektif MTranspose Ukuran kolom efektif M = ukuran baris efektif Mtranspose Mtranspose[i][j] = M[j][i] 12-Jun-13 Tim PTI B/Sem. I 2013/2014 20

Transpose Matriks (2) //Transpose Matriks #include <iostream> using namespace std; int main () { // KAMUS int M[10][10]; int NBrs1, NKol1; int MTranspose[10][10]; int NBrs2, NKol2; int i, j; // ALGORITMA // Membaca isi matriks M : Buat sebagai latihan // Deklarasi dan pengisian MTranspose NBrs2 = NKol1; NKol2 = NBrs1; for (i=0; i<nbrs2; i++) { for (j=0; j<nkol2; j++) { MTranspose[i][j] = M[j][i]; //transpose // Menuliskan hasil transpose ke layar : Buat sebagai latihan return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 21

Menjumlahkan 2 Matriks (1) Deklarasi 3 matriks, misal M1, M2, dan MHasil 2 matriks M1 dan M2 bisa dijumlahkan jika dimensinya sama, yaitu: Ukuran baris efektif M1 = ukuran baris efektif M2 Ukuran kolom efektif M1 = ukuran kolom efektif M2 Hasil ditampung di MHasil: MHasil[i][j] = M1[i][j] + M2[i][j] 12-Jun-13 Tim PTI B/Sem. I 2013/2014 22

Menjumlahkan 2 Matriks (2) //Menjumlahkan isi 2 matriks #include <iostream> using namespace std; int main () { // KAMUS int M1[10][10]; int NBrs1, NKol1; int M2[10][10]; int NBrs2, NKol2; int MHasil[10][10]; int NBrsHsl, NKolHsl; int i, j; // ALGORITMA //Membaca isi matriks M1 dan M2 : Buat sebagai latihan // Deklarasi dan pengisian MHasil NBrsHsl = NBrs1; NKolHsl = NKol1; for (i=0; i<nbrshsl; i++) { for (j=0; j<nkolhsl; j++) { MHasil[i][j] = M1[i][j] + M2[i][j]; //penjumlahan // Menuliskan hasil penjumlahan ke layar : Buat sebagai latihan return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 23

Mengalikan 2 Matriks (1) Deklarasi 3 matriks, misal M1, M2, dan MHasil 2 matriks M1 dan M2 bisa dikalikan jika: Ukuran kolom efektif M1 = ukuran baris efektif M2 MHasil menampung hasil perkalian antara M1 dan M2 Ukuran baris efektif MHasil = ukuran baris efektif M1 Ukuran kolom efektif MHasil = ukuran kolom efektif M2 12-Jun-13 Tim PTI B/Sem. I 2013/2014 24

Mengalikan 2 Matriks (2) Beberapa contoh: 12-Jun-13 Tim PTI B/Sem. I 2013/2014 25

Mengalikan 2 Matriks (3) //Mengalikan isi 2 matriks #include <iostream> using namespace std; int main () { // KAMUS int M1[10][10]; int NBrs1, NKol1; int M2[10][10]; int NBrs2, NKol2; int MHasil[10][10]; int NBrsHsl, NKolHsl; int i, j, j; // ALGORITMA //Membaca isi matriks M1 dan M2 : Buat sebagai latihan // Deklarasi dan pengisian MHasil dengan perkalian M1 dan M2 NBrsHsl = NBrs1; NKolHsl = NKol2; for (i=0; i<nbrshsl; i++) { for (j=0; j<nkolhsl; j++) { MHasil[i][j] = 0; for (k=0; k<nkol1; k++) { MHasil[i][j] = MHasil[i][j] + (M1[i][k] * M2[k][j]); // Menuliskan hasil penjumlahan ke layar : Buat sebagai latihan return 0; 12-Jun-13 Tim PTI B/Sem. I 2013/2014 26