Pada assignment kali ini kalian diminta untuk membuat program untuk menentukan jumlah SKS yang dapat diambil setiap student. Output dari programm ini berupa sebuah pesan yang berisi info jumlah SKS yang dapat di ambil oleh setiap student.
Disediakan sebuah function krsApplication
yang menerima name
, programId
dan gpa
.
Name | Data Type |
---|---|
name | string |
programId | string |
gpa | string |
Function ini akan memproses input yang diterima dari terminal dengan ketentuan dibawah ini.
-
Diasumsikan terdapat beberapa program ID yang dimiliki.
ACC
= Untuk program studiAkuntansi
HIN
= Untuk program studiHubungan Internasional
IAB
= Untuk program studiIlmu Administrasi Bisnis
IAP
= Untuk program studiIlmu Administrasi Publik
MJN
= Untuk program studiManajemen
TKM
= Untuk program studiTeknik Kimia
-
Setiap GPA/IP yang di miliki oleh student menentukan jumlah SKS yang dapat diambil di semester selanjutnya
- Jika GPA > 2.99 dapat mengambil 24 SKS
- Jika GPA 2.5 - 2.99 dapat mengambil 21 SKS
- Jika GPA 2 - 2.49 dapat mengambil 18 SKS
- Jika GPA 1.5 - 1.99 dapat mengambil 15 SKS
- Jika GPA 0 - 1.49 dapat mengambil 12 SKS
-
Jika GPA/IP yang di miliki student dibawah 3, maka student wajib melakukan bimbingan dengan dosen sesuai prodi yang di dapatkan dari
programId
-
Jika nilai GPA/IP lebih dari 4 atau dibawah 0 maka akan mengembalikan pesan
Invalid gpa number
-
Terdapat 2 jenis pesan output yang perlu kalian buat.
- Jika student memiliki GPA/IP lebih dari/sama dengan 3:
Hallo <nama>, berdasarkan IP semester lalu sebesar <gpa>, kamu dapat mengambil SKS sebanyak <total sks> SKS untuk semester depan.
- Jika student memiliki GPA/IP kurang dari 3:
Hallo <nama>, berdasarkan IP semester lalu sebesar <gpa>, kamu diwajibkan melakukan bimbingan dengan dosen pembimbing pada prodi <nama prodi> dan hanya dapat mengambil SKS sebanyak <total sks> SKS untuk semester depan.
- Jika student memiliki GPA/IP lebih dari/sama dengan 3:
Terdapat juga function process_argv
yang akan menerima input yang kalian masukan pada terminal.
Kalian tidak perlu mengubah atau mengerjakan apa pun pada function
process_argv
Berikut ini format input pada terminal yang wajib kalian ikuti untuk menjalankan program yang dibuat:
node main.js "name" "programId" "gpa"
contoh
node main.js "Anton Bagaskara" "IAB" "3"
Input:
// krsApplication(name, programId, gpa)
krsApplication("Joel", "IAB", "3")
Expected Output / Behavior:
Hallo Joel, berdasarkan IP semester lalu sebesar 3, kamu dapat mengambil SKS sebanyak 24 SKS untuk semester depan.
Explanation:
Joel memiliki GPA sebesar 3.
studentId yang dimiliki adalah IAB dengan begitu program studi yang diambil Joel adalah Ilmu Administrasi Bisnis.
Karena GPA yang dimiliki Joel 3, maka Joel dapat mengambil SKS sebanyak 24 SKS.
Input:
// krsApplication(name, programId, gpa)
krsApplication("Ellie", "HIN", "2.2")
Expected Output / Behavior:
Hallo Ellie, berdasarkan IP semester lalu sebesar 2.2, kamu diwajibkan melakukan bimbingan dengan dosen pembimbing pada prodi Hubungan Internasional dan hanya dapat mengambil SKS sebanyak 18 SKS untuk semester depan.
Explanation:
Ellie memiliki GPA sebesar 2.2.
studentId yang dimiliki adalah HIN dengan begitu program studi yang diambil Ellie adalah Hubungan Internasional.
Karena GPA yang dimiliki Ellie 2.2, maka Ellie dapat mengambil SKS sebanyak 18 SKS dan wajib melakukan bimbingan.
Input:
// krsApplication(name, programId, gpa)
krsApplication("Tommy", "ACC", "4.1")
Expected Output / Behavior:
Invalid gpa number
Explanation:
Tommy memiliki GPA sebesar 4.1 sehingga output yang didapatkan 'Invalid gpa number'.