Soal Untuk Peserta Test [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

1. Diberikan sebuah angka 1,271,341 Buatlah sebuah koding untuk mengambil nilai 1000000 200000 70000 1000 300 40 1 Jawaban : let nilai = “1271341” for (let i = 0; i < nilai.length; i ++) { let zero = "" for (let j = 0; j < nilai.length - (i + 1); j ++) { zero += "0" } console.log(`${nilai[i]}${zero}`) } Relatif, jika peserta menjawab dengan bahasa lain yang mereka ketahui / dengan cara lain yang mereka bisa 2. Coba buatkan segitiga terbalik ****** ***** **** ** * Jawaban : let nilai = 5 for (let i = 0; i < nilai; i ++) { let star = '' let tab = '' for (let j = 0; j < i; j ++) { tab += ' ' } for (let j = 0; j < nilai - i; j ++) { star += '* ' } console.log(`${tab}${star}`) } Relatif, jika peserta menjawab dengan bahasa yang mereka ketahui/ dengan cara lain yang mereka bisa



3. Coba cari kesalahan dari koding dibawah ini : Sebuah koding dapat mengubah nilai aaabbcccaaaac, menjadi a=3 b=2 c=3 a=4 c=1 Koding : let nilai = "aaabbcccaaaac" let count = 0 for (let i = 0; i < nilai.length; i ++) { if (i > 0) { if (nilai[i] === nilai[i - 1]) { count += 1 } else { count = 0 console.log(`${nilai[i-1]}=${count}`) } } } Hasilnya adalah : a=0 b=0 c=0 a=0 cari kesalahan dari koding diatas Jawaban : let nilai = "aaabbcccaaaac" let count = 1 for (let i = 0; i 0) { if (nilai[i] === nilai[i - 1]) { count += 1 } else { console.log(`${nilai[i-1]}=${count}`) count = 1 } } }



4. Coba buat tampilan seperti dibawah ***** * **** ** *** *** ** **** * ***** let nilai = 5 for (let i = 0; i < nilai; i ++) { let star = '' let tab = '' for (let j = 0; j < nilai - i; j ++) { star += '* ' } for (let j = nilai; j > 0; j --) { star += ' ' } for (let j = 0; j < (i + 1); j ++) { star += '* ' } console.log(`${tab}${star}`) } 5. Stack (Lifo) dan Queue (Fifo) Coba jelaskan perbedaan stack dengan queue, dan buatlah contoh dengan menggunakan bahasa pemorgraman yang kamu ketahui. Jawaban: Stack itu, Li Fo Contoh kodingnya : let newitem = 7 let array = [1,2,3,4,5,6] array.push(newitem) let stack = array.pop() Queue itu, Fi Fo Contoh kodingnya : let newitem = 7 let array = [1,2,3,4,5,6] array.push(newitem) let queue = array[0]



6. Menurut kamu bagaimana prioritas dari : -. Minor Bugs -. Fatal Bugs -. Deadline -. Enhancement dan alasan kamu memilih urutan tersebut Jawaban : Prioritas pasti tetap fatal bugs, karena bugs fatal harus segera di perbaiki, selanjutnya adalah Deadline, Minor Bugs, dan Enhancement Deadline harus berjalan beriringan dengan Alangkah baiknya memastikan Minor Bugs sudah aman terlebih dahulu, baru melanjutkan enhancement. 7. Apa urutan kepentingan sebuah bahasa program yang kamu tulis, menurut kamu ? Scalable Code Readbility DRY The Code is Working or not dan alasan kamu memilih urutan tersebut Jawaban : Relatif, tapi idealnya adalah The Code is Working or not, kita harus tahu apakah koding ini bekerja atau tidak Scalable, kemudian kita harus pastikann koding ini kedepannya apabila menggunkan data yang lebih besar / lebih dinamis apakah masih mampu untuk bekerja Code Readbility, Koding harus rapi dan bisa dibaca bukan hanya oleh si programmer, tujuannya adalah mempermudah maintenance, dan scale koding DRY, Don’t’ Repeat Yourself, kurangi koding yang repetitive yang bisa dibuat jadi satu function, tujuannya adalah mempermudah maintenance. 8. Coba buat sebuah Class Diagram dengan contoh case: Sebuah perusahaan memiliki karyawan , setiap karyawan memiliki tugas yang harus diselesaikan berdasarkan divisi masing-masing, dan setiap tugas memiliki karyawan yang mengerjakan. Jawaban: Class Diagram relatif seberapa lengkap informasi pada diagram yang mereka susun tapi harus memiliki 3 Diagram utama Employee , informasi karyawan Task, informasi tugas Divisi, informasi divisi



9. Coba buat sebuah Database (boleh SQL atau NoSQL) , dengan contoh case: Sebuah perusahaan memiliki karyawan , setiap karyawan memiliki tugas yang harus diselesaikan berdasarkan divisi masing-masing, dan setiap tugas memiliki karyawan yang mengerjakan. Jawaban : Table database, relatif seberapa lengkap informasi pada table yang mereka susun tapi harus memiliki 3 table / document utama Employee , menyimpan informasi karyawan Task, menyimpan informasi tugas Divisi, menyimpan informasi divisi 10. Coba buat sebuah CRUD dengan menggunakan database yang sudah kamu susun dari database no 9 CRUD hanya meliputi informasi karyawan saja (tambah, edit, delete karyawan) dan tampilkan karyawan (dimana pada karyawan dapat melihat informasi divisi dan task karyawan tersebut) Jawaban : Relatif yang pasti harus memiliki function, dan tidak ada function yang dipakai berulang kali