- Mata Kuliah: Struktur Data
- Dosen Pengampu: Muhammad Ikhwan Fathulloh
- Kelompok: 1
- Proyek: Sistem Kursus
- Anggota:
- Ketua: Ibnu Rasyid Assidiq
- Anggota 1: Rachel Simanjuntak
- Anggota 2: Luthfi Febrian
Sistem Kursus.
Sistem kursus yang kami buat diberi nama BOOTCAMP IT yang dimana bootcamp ini berisi pelajaran pelajaran yang berkaitan dengan teknologi atau dunia computer, di BOOTCAMP IT ini kami menyediakan banyak pelajaran yaitu :
- Hacker
- Web Developer
- UI/UX Design
- Data Analyst
Selain itu juga kami membuat jadwal pelajaran kursus yang terpisah dari pelajaran, hal ini dibuat karena kami ingin adanya fleksibilitas waktu, yang dimana para peserta tidak terpaut oleh waktu yang ditentukan dan bebas memilih pelajaran sesuai waktu yang diinginkan, Untuk jadwal yang kami sediakan berdasarkan Opsi, Hari, Sesi, dan Jam. Jadwal yang kami sediakan adalah:
Opsi | Hari | Sesi | Jam |
---|---|---|---|
1 | Kamis | Pagi | 07.30 - 09.00 |
2 | Kamis | Malam | 19.30 - 21.00 |
3 | Minggu | Pagi | 07.30 - 09.00 |
4 | Minggu | Malam | 19.30 - 21.00 |
Untuk harga pelajaran kursus kami menyediakan beberapa kategori paket yang berdasarkan kategori paket, Masa paket, dan Harga paket. Paket yang kami sediakan adalah sebagai berikut:
Kategori | Masa | Harga |
---|---|---|
A | 1 Bulan | 100.000 |
B | 3 Bulan | 300.000 |
C | 7 Bulan | 600.000 |
D | 1 Tahun | 900.000 |
Dan di kursus ini juga kami menyediakan kupon untuk para peserta sehingga peserta yang memiliki kupon dan mendapat potongan harga disini kami menyediakan 4 kupon, kupon akan diberi sesuai dengan Antrian peserta, dan berikut adalah kupon yang kami sediakan.
Kode | Nama Kupon | Potongan Harga |
---|---|---|
125 | Ayam | 25.000 |
349 | Bebek | 50.000 |
123 | Elang | 75.000 |
345 | Garuda | 90.000 |
Untuk peserta kita sudah data terlebih dahulu sebanyak 7 peserta yang berdasarkan nama, asal, status, Gmail, dan gelombang. Peserta yang sudah kami data nantinya akan kami masukan ke dalam Antrian Peserta.
di awal program kita menampilkan ucapan selamat datang dan pilihan menu untuk peserta, dan untuk opsi pemilihan menu sesuai dengan angka yang berada di menu ,disini kami menyediakan 3 menu yaitu:
- Informasi Kursus
Pada menu ini peserta akan diberitahu informasi Kursus yang meliputi:
- List Pelajaran Kursus
- List Jadwal Kursus
- List Paket Kursus
Lalu akan ditampilkan juga untuk opsi kembali ke menu. - Informasi Peserta
Pada pilihan menu kedua akan ditampilkan informasi anggota yang sudah mendaftar beserta dengan:
- Nama Peserta
- Asal
- Status
- Gmail
- Antrian
Kemudian akan ditampilkan pilihan ke menu.
- Pendataan dan Pembayaran
Pada menu ini peserta akan melakukan proses pendataan dan pembayaran
- Pendataan
Pendataan dilakukan sesuai urutan antrian peserta. Sebelum masuk pendataan peserta akan ditanya apakah akan memilih kursus, jika ya nanti peserta akan diminta untuk memasukan pelajaran kursus, jadwal kursus, paket kursus. Jika tidak maka pendataan akan dilanjutkan ke antrian berikutnya. Setelah peserta melakukan pendataan maka peserta akan diberi kupon sesuai dengan urutan antrian, jika kupon habis maka antrian berikutnya tidak akan menerima kupon yang telah diberikan
- Pembayaran
Sebelum peserta melakukan pembayaran, bagi peserta yang memiliki kupon maka harga paket yang telah dipilih akan dikurangi dengan potongan harga paket dan jika peserta tidak memiliki kupon maka peserta melanjutkan proses ke transaksi. Peserta akan dimintai untuk memasukan jumlah pembayaran, jika peserta memasukan jumlah pembayaran lebih atau pas dengan harga paket akhir maka seluruh data yang sudah dimasukan meliputi pilihan pelajaran, jadwal, harga paket, harga setelah diskon atau harga paket tanpa kupon, harga pembayaran dan harga kembalian akan langsung ditampilkan melalui riwayat transaksi.
Akan tetapi jika pembayaran yang dilakukan oleh peserta kurang dari harga paket akhir maka peserta akan diberitahu jika pembayaran kurang dan peserta akan diberikan pilihan untuk melakukan pembayaran kembali atau tidak, jika peserta memilih untuk melakukan pembayaran kembali maka peserta akan mengulang proses transaksi sedangkan jika peserta memilih tidak maka akan dilanjutkan proses pendataan oleh Antrian peserta berikutnya
- Pendataan
Berikut adalah komponen proyek yang kami gunakan.
- Struktur data
- Record
Kita menggunakan Struktur record untuk menyimpan tipe data yang kami butuhkan pada sistem.
- Array
Kita mangisi data sesuai tipe pada record yang disimpan ke array.
- Stack
Kita menggunakan stack untuk pemberian kupon, dan stack untuk kupon kita beri nama kuponstack.
- Priority Queue Comparator
Dibagian ini kita memasukan peserta yang sudah terdaftar ke dalam Antrian.
- Linked List
Pada bagian ini kita menyimpan data data yang diperlukann untuk menampilkan riwayat transaksi.
- Record
- Tipe Data
- Peserta
String nama, String status, String Gmail, String asal, int Gelombang
- Pelajaran Kursus
String namakursus, String mentor, int materi
- Jadwal Kursus
String opsi, String hari, String sesi, String Jam
- Paket Kursus
String kategori, String Masapaket, int harga
- Kupon Kursus
String kode, String namakupon, int potonganharga
- Peserta data
String nama, String namakursus, String opsi, String kode
- TransaksiDetail
String namaPeserta, String namakursus, String opsiJadwal, String kategoriPaket, int harga, int bayar, int kembalian
- Peserta
- Conditional
- if else
Kita menggunakan if else pada bagian penggunaan kupon untuk kondisi kupon habis dan ada, untuk menyesuaikan inputan dengan equals, dan untuk kondisi transaksi apabila lebih atau kurang dengan harga paket akhir
- Switch case
Kita menggunakan Switch case untuk pilihan menu, untuk case kita deklarasikan ke dalam 3 case
- if else
- Looping
- Boolean
Kita menggunakan bolean sebagai nilai true dan false untuk melakukan looping atau perulangan, untuk perulangan menu jika boolean ulangmenu = true, dan untuk perulangan transaksi jika boolean pembayarancukup = false
- Do while
Kita menggunakan do while untuk perulangan menu yang didukung atau disertai dengan boolean ulangmenu.
- While
Kita menggunakan while pada pendataan untuk mengeluarkan Antrian atau untuk kondisi apabila antrian tidak kosong maka akan dikeluarkan, dan Untuk pembayaran tidak cukup.
- Boolean
- Lainnya
- Equals
Kita gunakan equals untuk perbandingan.
- Break
Kita gunakan break untuk mengakhiri program.
- To Upper Case
Kita menggunakan ini untuk membuat semua inputan menjadi huruf kapital.
- Equals
Rachel Simanjuntak = Struktur Program = Record -> Peserta, Jadwal, Pelajaran, Kupon , Paket = Array -> Peserta, Jadwal, Pelajaran, Kupon , Paket = Penjelasan awal program
Luthfi Febrian = Stack -> Kupon = Priorty Queue -> Antrian Peserta = Penjelasan running program = Editing Video
Ibnu Rasyid Assidiq = swicth case -> Pilihan menu = Pendataan = Transaksi = Linked List => Riwayat Transaksi = Penjelasan akhir program