Anda di halaman 1dari 6

BUKU JAWABAN TUGAS MATA KULIAH

TUGAS 1

Nama Mahasiswa : ABDUL KODER

Nomor Induk Mahasiswa/ NIM : 042844088

Kode/Nama Mata Kuliah : MSIM4202/ Struktur Data

Kode/Nama UPBJJ : 17/ JAMBI

Masa Ujian : 2022/23.1 (2022.2)

KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN


UNIVERSITAS TERBUKA
Soal Nomor 1 :
Diberikan dua proses yang sering terjadi dalam kehidupan kita sehari-hari, yaitu:
1. Proses tujuh nasabah sedang menunggu giliran mengambil uang di bank yang hanya
memiliki satu teller.
2. Proses membatalkan (Undo/Ctrl-Z) penghapusan text pada saat Anda menggunakan text-
editor. Simulasikan kedua kasus di atas secara bertahap dengan menggunakan konsep yang
tepat (queue, stack, atau deque), kemudian jelaskan simulasi dari konsep tersebut!

Jawaban

1. Dalam kasus yang pertama ini mengunakan konsep Queue ( antrian ) merupakan
interface yang mempresentasikan penambahan dan penghapusan dengan menerapkan konsep
first In First Out (FIFO) yaitu elemen yang pertama masuk dalam antrean, akan menjadi
elemen pertama yang di hapus pada antrean. Dalam queue, ada beberapa operasi yang penting
untuk diperhatikan, antara lain :
enqueue(elemen) : memasukkan elemen ke dalam queue, sama kayak kalau ada orang yang
baru dateng ke teater, pasti dia ada di paling belakang. (Kalau di Java interface namanya
add/offer)

dequeue() : mengambil elemen dari queue, sama kayak kalau beli tiket teater, yang selesai
duluan itu orang yang paling depan. (Kalau di Java interface namanya remove)

peek() : mencari elemen yang berada di paling depan (yang pertama dimasukkan), namun
tidak dikeluarkan.

poll() : mencari elemen yang berada di paling depan dan dikeluarkan.

isEmpty() : mengecek apakah queue tersebut kosong atau tidak.

isFull() : mengecek apakah queue tersebut penuh atau tidak (pada Queue statis yang
diimplementasikan dengan array).

Kita juga dapat mengimplementasikan Queue dengan menggunakan paradigma OOP, seperti
pada stack. Queue dapat diimplementasikan dengan linear array, circular array, array list,
ataupun dengan linked list. Namun, yang akan kita bahas saat ini hanyalah implementasi
dengan linear array dan juga linked list.

2. Pada kasus kedua ini konsep yang tepat iya konsep deque di mana deque mempunyai
kemampuan untuk menambah elemen baik di depan maupun di belakan antrean
dengan demikian oprasi yang di terapkan dalam konsep ini adalah

• Addfirts (x) yaitu operasi penambahan elemen x pada antrean awal


• Removefirts ( ) yaitu operasi penghapusan elemen pada antrean awal
• Addlast ( x ) yaitu operasi penambahan elemen x pada antrean terkhir
• Removelast yaitu operasi penghapusan elemen yang berada pada antrean akhir

Soal Nomor 2 :
Di dalam sebuah showroom penjualan mobil, terdapat banyak jenis mobil, yaitu Honda,
Toyota, Suzuki, Mazda, Nissan, dan lainnya.
Ilustrasikan jenis mobil di dalam showroom tersebut ke dalam bahasa pemograman Java
berdasarkan class, anak class, object, dan method, kemudian jelaskan!

Jawaban :
1. Class
Class adalah prototype, atau blueprint, atau rancangan yang mendefinisikan variable dan
method-methode pada seluruh objek tertentu. Class berfungsi untuk menampung isi dari
program yang akan di jalankan, di dalamnya berisi atribut / type data dan method untuk
menjalankan suatu program.
Class merupakan suatu blueprint atau cetakan untuk menciptakan suatu instant dari object.
class juga merupakan grup suatu object dengan kemiripan attributes/properties, behaviour
dan relasi ke object lain
Sehingga dapat kita tentukan mobil yang di jual dalam showroom tersebut masuk dalam class
kendaran ringan beroda empat.
2. Objek.
Yang dimaksud dengan objek pada java adalah sekumpulan software yang terdiri
dari variable dan method-method yang terkait. Objek juga merupakan benda nyata
yang di buat berdasarkan rancangan yang di definisikan di dalam class
Object adalah instance dari class. Jika class secara umum mepresentasikan (template)
sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.
Dalam showroom tersebut jenis mobil yang di jual masuk dalam class kendaraan ringan
roda empat sehingga kita dapat menentukn objek jenis mobil yang di jual HONDA,
TOYOTA, SUZUKI, MAZDA, NISSAN dll

3. Method adalah kumpulan program yang mempunyai nama. Method merupakan sarana
bagi programmer untuk memecah program menjadi bagian-bagian yang kecil agar jadi lebih
kompleks sehingga dapat di gunakan berulang-ulang.
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu
object. Method didefinisikan pada class akan tetapi dipanggil melalui object. Contoh, pada
object pear : terdapat method ambilRasa , kupasKulit dan lainlain

Soal No 3 :
Dalam bahasa pemograman Java, terdapat tipe-tipe data primitif. Sebutkan dan jelaskan tipe-tipe
data tersebut disertai dengan contoh penerapan deklarasi pada pemograman Java pada kasus
penjualan buku pada sebuah toko buku!

1. Tipe data null


Yaitu dapat dapat di miliki setiap variable
Contoh dalam toko buku adalah data dapat di miliki setiap buku yaitu nama – nama
buku
2. Tipe Data Boolean
Tipe data Boolean digunakan pada pengenalan logika, biasanya diwakili dengan
pernyataan True dan False. Contohnya adalah: tipe tipe buku yang ada dalam took buku
oolean result = true;
Maksud dari rumus di atas adalah pendeklarasian variabel dengan nama result sebagai tipe
datanya dan nilai yang dihasilkan adalah True atau benar.
3. Byte, Short, Int, Long
Kemudian ada tipe data yang masuk ke dalam kategori Integral, yaitu Byte, Short, Int,
Long. Keempat tipe data ini menggunakan desimal, oktal, atau heksa desimal. Misalnya:
2 //nilai desimal 2
077 //angka 0 pada awal pernyataan mengindikasikan nilai oktal
0xBACC //karakter 0x mengindikasikan nilai heksadesimal
Perbedaan dari keempat tipe data di atas ada pada panjang integernya (bit) dan range.

• Byte: memiliki 8 bits dengan range -2^7 hingga 2^7 -1


• Short: memiliki 16 bits dengan range -2^15 hingga 2^15 -1
• Int: memiliki 32 bits dengan range -2^31 hingga 2^31 -1
• Long: memiliki 64 bits dengan range -2^63 hingga 2^63 -1
4. Floating dan Double
Terakhir, ada tipe data Floating dan Double yang termasuk ke dalam jenis Floating Point.
Formula yang biasa digunakan untuk tipe data ini dalam pemrograman Java adalah:
E or e //(add exponential value)
F or f //(float)
D or d //(double)
Contoh penggunaan tipe data Floating dan Double ketika kamu melakukan coding di
pemrograman Java adalah berikut ini:
3.14 //nilai floating-point sederhana (a double)
6.02E23 //A nilai floating-point yang besar
2.718F //A nilai float size sederhana
123.4E+306D //A nilai double yang besar dengan nilai redundant D
Dari contoh di atas, seharusnya sudah terlihat bagaimana perbedaan tipe data Floating dan
Double. Untuk lebih jelasnya, berikut perbedaan keduanya:

• Float: memiliki 32 bits dengan range -2^31 hingga 2^31 -1


• Double: memiliki 64 bits dengan range -2^63 hingga 2^63 -1

5. Tipe Data Char


Selanjutnya adalah tipe data Char atau Character yang menunjukkan data berupa tekstual.
Tipe data Character diwakili dengan karakter yang disebut Single Unicode.
Pada tipe data Char, harus menggunakan ciri dengan tanda kutip satu di awal dan akhirnya ('
'), misalnya adalah:
‘a’ //Huruf a
‘\t’ //A tab
Meskipun String bukan termasuk ke dalam tipe data Primitif, tetapi bisa digunakan sebagai
Class dan masuk ke dalam tipe data Char. Maka kamu harus menggunakan tanda kutip dua di
awal dan akhir kalimat (" "), misalnya:
String message=“Hello world!”

Anda mungkin juga menyukai