Anda di halaman 1dari 7

ALGORITMA DAN STRUKTUR DATA

DATA INF1008
Ujian Tengah Semester

Oleh :

Nama : Khairul Gunawan


Nim : 1911102441118

Teknik Informatika
Fakultas Sains & Teknologi
Universitas Muhammadiyah Kalimantan Timur
Samarinda, 2020
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Simulasi Hot Potato

Penjelasan :

Hot Potato adalah sebuah permainan anak-anak, di mana anak-anak berbaris membentuk
sebuah lingkaran, dan mengirimkan item dari tetangga ke tetangga secepat mungkin. Pada waktu
tertentu dalam permainan, aksi akan dihentikan dan anak yang memegang item (kentang)akan
dikeluarkan dari lingkaran. permainan ini berlanjut sampai hanya satu anak yang tersisa.

Langkah-langkah algoritma Hot Potato adalah sebagai berikut :

1. Asumsikan bahwa anak yang memegang kentang akan berada di depan antrian.
2. Setelah melewati kentang, simulasi hanya akan keluar dan segera enqueue anak itu,
menempatkannya di akhir baris. Dia kemudian akan menunggu sampai semua yang lain
berada di depan sebelum gilirannya tiba. Setelah operasi nque dequeue / enqueue, anak di
depan akan dihapus secara permanen dan siklus lain akan dimulai. Proses ini akan berlanjut
sampai hanya satu nama yang tersisa (ukuran antrian adalah 1.

Implementasi :

Coding Program :

Hasil Program :

Khairul Gunawan/1911102441118 Teknik Iformatika-


UMKT |1
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Penjelasan :

 yang di sebut "num," dan akan digunakan untuk menghitung. Ini akan mengembalikan nama
orang terakhir yang tersisa setelah penghitungan berulang dengan num. Dan baris ke 6 ,While
yang berfungsi untuk menjalankan Sampai hitungan berakhir dan menemukan hasilnya.

Khairul Gunawan/1911102441118 Teknik Informatika-


U M K T |2
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Simulasi Printing Task

Penjelasan :

Printing Task adalah sebuah workspace dan menghitung rata-rata waktu


pencecetakan, ketika siswa mengirim tugas pencetakan ke printer bersama, tugas
ditempatkan dalam antrian untuk diproses dengan cara first-come first-served.

Langkah-langkah algoritma Printing Task adalah sebagai berikut :

1. Buat antrian tugas cetak. Setiap tugas akan diberi cap waktu pada saat
kedatangannya. Antrian kosong untuk memulai.
2. tambahkan ke antrian dengan currentSecond sebagai timestamp.
3. Jika printer tidak sibuk dan jika tugas sedang menunggu,
4. Hapus tugas berikutnya dari antrian cetak dan tetapkan ke printer.
5. Kurangi cap waktu dari currentSecond untuk menghitung waktu tunggu untuk
tugas itu.
6. Tambahkan waktu tunggu untuk tugas itu ke daftar untuk diproses nanti.
Berdasarkan jumlah halaman dalam tugas cetak, cari tahu berapa banyak waktu
yang dibutuhkan.
7. Printer sekarang melakukan pencetakan satu detik jika perlu. Itu juga mengurangi
satu detik dari waktu yang dibutuhkan untuk tugas itu.
Jika tugas telah selesai, dengan kata lain waktu yang dibutuhkan telah mencapai
nol, printer tidak lagi sibuk.
8. Setelah simulasi selesai, hitung waktu tunggu rata-rata dari daftar waktu tunggu
yang dihasilkan.
Implementasi :

Coding Program :

Khairul Gunawan/1911102441118 Teknik Iformatika-


U MK T |1
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Khairul Gunawan/1911102441118 Teknik Informatika-


U M K T |2
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Hasil Program :

Penjelasan Program :

Objek printQueue adalah turunan dari ADT antrian yang ada. Fungsi
pembantu boolean, newPrint Task, memutuskan apakah tugas pencetakan baru telah
dibuat. kembali memilih untuk menggunakan fungsi randrange dari modul acak untuk
mengembalikan bilangan bulat acak antara 1 dan 180. Tugas cetak tiba sekali setiap 180
detik. Dengan memilih secara acak 180 dari kisaran bilangan bulat acak (baris 32), kita
dapat mensimulasikan kejadian acak ini. Fungsi simulasi memungkinkan kita untuk
mengatur total waktu dan halaman per menit untuk printer. Program mencari rata-rata
kecepatan print pada fungsi simulation beris ke – 42.

Khairul Gunawan/1911102441118 Teknik Iformatika-


U MK T |1
Algoritma & Struktur Data (INF1008) : Laporan Praktikum 4 – Analisis Algoritma (1)

Khairul Gunawan/1911102441118 Teknik Informatika-


U M K T |2

Anda mungkin juga menyukai