STRUKTUR DATA DAN KOMPUTASI LUNAK

Slides:



Advertisements
Presentasi serupa
ARRAY.
Advertisements

OOP berputar pada konsep dari obyek yang merupakan elemen dasar dari program Anda. Ketika kita membandingkan dengan dunia nyata, kita dapat menemukan.
PENCARIAN (SEARCHING)
Urutan (Sequence) Ery Setiyawan Jullev A.
FUNGSI ARITMATIKA BINER
Pemrograman Berbasis Obyek Oleh Tita Karlita
Sistem Pengolahan Data Komputer
Flow Control & Looping Pertemuan 4 Pemrograman Berbasis Obyek Oleh Tita Karlita.
Pengenalan PHP Operator Aritmatika:
Matematika Biner dan Logika Biner
Dasar Pemrograman Java Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2008.
Algoritma & Pemrograman 1
DASAR-DASAR PEMROGRAMAN JAVA
Bahasa Pemrograman C++
Praktikum Java Script.
Pertemuan Operand dan Operator
OSN KOMPUTER.
OPERATOR LOGIKA.
Algoritma & Pemrograman 1
03 Elemen Dasar Bahasa Java
Object-oriented Programming (OOP) with JAVA 2011/2012
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
Pertemuan 3.
ALGORITMA PEMROGRAMAN 2A
S1 FLOW CHART Pendidikan Teknik Informatika Jurusan Teknik Elektro
STRUKTUR DATA PERTEMUAN 1
Struktur Organisasi Data 2
Nilai dan Tipe Data Nilai dan Tipe data
PBO Daniel Riano Kaparang, S.Kom., M.Cs
PERTEMUAN 3 KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Dasar pemrograman java
Algoritma & pemrograman 1B
Struktur Kontrol Pemilihan
Pertemuan 2 OPERATOR DAN EKSPRESI.
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Tipe Data, Operator Dalam Delphi
FKIP Pend. Matematika Universitas Muhammadiyah Gresik
Variabel operator tipe data
Iterasi ( Perulangan ).
Command line argument.
Struktur Dasar Pemrograman Java
Pertemuan 1 DATA & STRUKTUR DATA.
Tipe Data, Variabel, dan Operator
Pengenalan dan Struktur Java (Operator dan Input)
PEMROGRAMAN PASCAL ELEMEN PEMROGRAMAN PASCAL.
C++: OPERATOR Yenni Astuti, S.T., M.Eng.
Review Materi Java Fundamental
Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator
Tipe Data, Variabel, dan Operator
Pemrograman Terstruktur
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Operator dan Assignment
Biansa Maulana Angga Surya Prayitna Koermalla Syafei Irma Rosdalina Rizki Mulia Bayu Prayogo.
Pertemuan Pertama Data dan Struktur Data.
DATA & STRUKTUR DATA PERTEMUAN I IMAM SIBRO MALISI NIM :
PJJ FLOW CHART D3 - Teknik Komputer dan Jaringan
Pemrograman Terstruktur
Aritmatika Komputer.
PENGANTAR TEKNOLOGI KOMPUTER & INFORMASI 1A
DATA & STRUKTUR DATA PERTEMUAN 2 IMAM SIBRO MALISI NIM :
Pencarian (searching)
S1 FLOW CHART Pendidikan Teknik Informatika Jurusan Teknik Elektro
Struktur dan Arsitektur Pemrograman
Operator C++ Pertemuan 3.
Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator
Tipe Data, Variabel, dan Operator
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
Logika dan Algoritma Agung BP Chapter 5.
Struktur Dasar Pemrograman Java
Transcript presentasi:

STRUKTUR DATA DAN KOMPUTASI LUNAK

by: Bagus Prabandaru (2210106070) Yanu Perwira Adi Putra (2210106039) BITARRAY CLASS by: Bagus Prabandaru (2210106070) Yanu Perwira Adi Putra (2210106039)

MOTIVATING PROBLEM - Menentukan Bilangan Prima Menggunakan Metode Filter Eratosthenes metode yang menyisihkan bilangan dari kelipatan bilangan sebelumnya sampai yang tersisa adalah bilangan prima. - Penyelesaian Masalah penyelesaian dengan menggunakan array dan selanjutnya akan diselesaikan menggunakan BitArray

CONTOH Metode Filter Eratosthenes menentukan bilangan prima dari 100 bilangan integer dengan menggunakan array Dimulai dengan bilangan 2 yang merupakan bilangan prima pertama, lalu menyisihkan semua bilangan yang merupakan kelipatan dari bilangan 2. Kemudian pindah dengan bilangan 3, lalu disisihkan semua bilangan yang merupakan kelipatan dari bilangan 3. Selanjutnya pindah dengan bilangan 5 dan bilangan yang lain, dengan melakukan hal yang sama seperti sebelumnya. Setelah selesai mengidentifikasi semua bilangan, bilangan yang tersisa adalah bilangan prima.

CONTOH Metode Filter Eratosthenes menentukan bilangan prima dari 100 bilangan integer dengan menggunakan BitArray Menginisialisasi sebuah array dari 100 elemen dengan setiap elemen di-set ke nilai 1. Dimulai dengan indeks 2, masing-masing indeks array diperiksa untuk melihat nilai 1 atau 0, jika nilai 1, maka diperiksa apakah kelipatan dari 2, jika ia maka indeks di set 0. Selanjutnya ke indeks 3 dan ke indeks yang lain dengan menggunakan cara yang sama. Setelah selesai mengidentifikasi semua elemen, elemen yang tersisa adalah bilangan prima.

Manipulasi Bits dan Bit Sistem Bilangan Biner Memanipulasi Bilangan Biner Menggunakan Operator Bitwise dan Bit-Shift

Sistem Bilangan Biner Bilangan biner adalah string dari 0s dan 1s yang mewakili basis 10(desimal) angka dalam basis 2. ex. 00000000-0d (dimana d menandakan angka desimal) 00000001-1d 00000010-2d 00000011-3d 00000100-4d 00000101-5d 00000110-6d Konversi biner ke desimal nilai biner 00101010 penyelesaian 0 + 21 + 0 + 23 + 0 + 25 + 0 + 0 = 0 + 2 + 0 + 8 + 0 + 32 + 0 + 0 = 42

Memanipulasi Bilangan Biner Menggunakan Operator Bitwise dan Bit-Shift (1) Operator Bitwise : AND, OR, NOT Operator ini adalah operator logika, digunakan untuk menggabungkan ekspresi yang berhubungan dalam rangka untuk menghitung nilai tunggal Boolean. Ketika digunakan dalam angka biner, true setara dengan 1 dan false setara dengan 0. Ex : 00000001 and 00000000 -> 00000000 00000001 and 00000001 -> 00000001 00000010 and 00000001 -> 00000000 00000000 or 00000001 -> 00000001 00000001 or 00000000 -> 00000001 00000010 or 00000001 -> 00000011 00000000 Xor 00000001 -> 00000001 00000001 Xor 00000000 -> 00000001 00000001 Xor 00000001 -> 00000000

Memanipulasi Bilangan Biner Menggunakan Operator Bitwise dan Bit-Shift (2) operator bit-shift : <<, >> dan >>> Operator yang digunakan untuk mengubah posisi bit dalam bilangan biner. Masing-masing operator mengambil dua operator: nilai (kiri) dan jumlah bit untuk menggeser (kanan). ex : 1 << 1 --> 00000010 2 >> 1 --> 00000001 bilangan biner 3 --> 00000011 3 << 1 --> 00000110 3 << 2 --> 00001100 3 >> 1 --> 00000001

Aplikasi Konversi Integer-biner Kata kunci untuk mengkonversi sebuah integer menjadi bilangan biner adalah mask. fungsi mask adalah menyembunyikan beberapa bit dalam angka, sementara menampilakan yang lain. ketika mask dan integer digabungkan dengan operator AND, hasilnya adalah string biner yang mewakili integer. int dispMask = 1 << 31; StringBuilder bitBuffer = new StringBuilder(35); for(int i = 1; i <= 32; i++) { if ((val && bitMask) == 0) bitBuffer.Append("0"); else bitBuffer.Append("1"); val <<= 1; if ((i % 8) == 0) bitBuffer.Append(" ");}

Aplikasi Bitwise Aplikasi ini membahas bagaimana bit melakukan fungsi operator Bitwise int val1, val2; val1 = Int32.Parse(txtInt1.Text); val2 = Int32.Parse(txtInt2.Text); lblInt1Bits.Text = ConvertBits(val1).ToString(); lblInt2Bits.Text = ConvertBits(val2).ToString(); lblBitResult.Text = ConvertBits(val1 && val2).ToString(); int val1, val2; val1 = Int32.Parse(txtInt1.Text); val2 = Int32.Parse(txtInt2.Text); lblInt1Bits.Text = ConvertBits(val1).ToString(); lblInt2Bits.Text = ConvertBits(val2).ToString(); lblBitResult.Text = ConvertBits(val1 || val2).ToString();

Aplikasi Bit-Shift Aplikasi ini membahas bagaimana bit melakukan fungsi operator Bit-Shift int value = Int32.Parse(txtInt1.Text); lblOrigBits.Text = ConvertBits(value).ToString(); value <<= Int32.Parse(txtBitShift.Text); lblInt1Bits.Text = ConvertBits(value).ToString(); int value = Int32.Parse(txtInt1.Text); lblOrigBits.Text = ConvertBits(value).ToString(); value >>= Int32.Parse(txtBitShift.Text); lblInt1Bits.Text = ConvertBits(value).ToString();

BitArray Class BitArray sangat mirip dengan ArrayList. BitArray bekerja dengan bit sehingga dapat diubah ukurannya secara dinamis seperti menambah bit ketika diperlukan tanpa khawatir melampaui batas atas array.

Menggunakan BitArray Class (1) BitArray Class dibuat menggunakan instruksi : BitArray BitSet = new BitArray(32); 32 bit BitArray di atas diset False, jika ingin mengubah True digunakan : BitArray BitSet = new BitArray(32, True); Dapat juga digunakan pada byte, seperti di bawah ini : byte[] ByteSet = new byte[] {1, 2, 3, 4, 5}; BitArray BitSet = new BitArray(ByteSet);

Menggunakan BitArray Class (2) Bit yang disimpan dalam BitArray dimulai dari kiri, hal ini dapat membingungkan untuk dibaca karena secara umum dari kanan. Contoh BitArray 8-bit dengan nomor 1 : true false false false false false false false (10000000) dimana secara umum adalah : false false false false false false false true (00000001) byte[] ByteSet = new byte[] {1, 2, 3, 4, 5}; BitArray BitSet = new BitArray(ByteSet); for (int bits = 0; bits <= bitSet.Count-1; bits++) Console.Write(BitSet.Get(bits) + " ");

Menggunakan BitArray Class (3) class chapter6 { static void Main() { int bits; string[] binNumber = new string[8]; int binary; byte[] ByteSet = new byte[] {1,2,3,4,5}; BitArray BitSet = new BitArray(ByteSet); bits = 0; binary = 7; for(int i = 0; i <= BitSet.Count-1; i++) { if (BitSet.Get(i) == true) binNumber[binary] = "1"; else binNumber[binary] = "0"; bits++; binary--; if ((bits % 8) == 0) { for(int i = 0; i <= 7; i++) Console.Write(binNumber[i]); } Untuk menampilkan dalam bentuk biner dan dengan menggunakan urutan secara umum digunakan instruksi BitSet dan binNumber.

Menggunakan BitArray Class (3)

Menggunakan BitArray Class (4) BitArray.Set (bit, value) dimana bit adalah indeks bit yang ditetapkan dan value adalah nilai boolean yang ditetapkan pada bit. BitSet.SetAll (False) mengatur semua nilai bit dengan melewati nilainya sebagai argumen. bitSet1.Or (bitSet2) dikikuti dengan : bitSet.Clone() BitArray digunakan pada metode Bitwise, misal untuk Bitwise Or memiliki dua BitArray (bitSet1 dan bitSet2) seperti di atas. bitSet.CopyTo(arrBits) arrBits untuk menyalin isi BitArray ke array standar Metode BitArray Class yang lain :

Menggunakan BitArray pada Filter Eratosthenes Aplikasi Filter Eratosthenes untuk menentukan bilangan prima dari 1 sampai 1024 dengan metode BitArray.

Menggunakan BitArray pada Filter Eratosthenes Filter Eratosthenes diterapkan pada loop : int lastBit = Int32.Parse(Math.Sqrt(bits.Count)); for(int i = 2; i <= lastBit-1; i++) if (bits.Get(i)) for (int j = 2 ∗ i; j <= bits.Count-1; j++) bits.Set(j, 0); Loop tersebut bekerja melalui kelipatan semua bilangan hingga akar kuadrat dari bilangan-bilangan di dalam BitArray, lalu menghilangkan semua kelipatan dari bilangan 2, 3, 4, 5, dan seterusnya.

Kesimpulan BitArray Class digunakan untuk menyimpan kumpulan bit yang terdiri dari True (1) dan False (0). Permasalahan yang dapat diselesaikan dengan susunan angka bisa lebih efisien dan cepat diselesaikan dengan menggunakan BitArray.

TERIMAKASIH ATAS PERHATIAANNYA SELESAI TERIMAKASIH ATAS PERHATIAANNYA