Jika ingin Menampilkan soal secara acak, Pilihan soal juga acak
Halo, kali ini saya akan menjawab pertanyaan rekan-rekan koding kodular, niotron tentang bagaimana cara menampilkan soal secara acak juga pilihan gandanya diacak?
Nah, kelebihan dari tutorial mengacak soal dan pilihan yang saya buatkan ini adalah posisinya (index) permanent, sehingga bisa dipanggil bolak balik (previous, fordward) dengan sempurna.
Bahan yang kita perlukan adalah ektensi list utility, kemudian hanya memakai blok shuffle list. Dah itu aja.
Prinsip yang perlu diingat adalah menghasilkan list acak dari list awal kita harus melakukan perulangan penyimpanan masing-masing list sebanyak jumlah item dalam list.
Pusingkan? Hehe cukup gunakan blok pada CONTROL yang for each number, from to by. Ini perintah untuk mengarray atau mengulang perintah sebanyak yang kita punya.
Agar tidak memerlukan initialize variable kita rekayasa dengan variable sementara yaitu blok yang ada pada menu X Variable yakni: initialize local name to.
Ingat untuk mencegah perulangan adalah pada bagian setiap perintah, kita atur agar indek langsung dihapus. Perhatikan pada bagian akhir prosedur, remove list item ada yang berbeda disi, indexnya tidak kita select tapi menemukan posisi item pada list : Index in list thing, list.
Cara kerja prosedur mengacak soal dan option pada kodular atau niotron diatas adalah:
1. Membuat lokal index secara lokal dengan bantuan array sebanyak jumlah list
2. Mengacak lokal index (random_index) dengan bantuan pick a random item list dan menjadikannya sebagai index untuk mengambil item pada list pertanyaan, list semua option.
3. Mengacak opsi dari setiap list sesua random index dengan bantuan list utility (shuffle list)
4. Memilih list opsi yang acak dan menambahkannya pada list Pilihan A, Pilihan B, Pilihan C, Pilihan D dengan index 1 sampai 5 (sesuai jumlah pilihan)
5. Menghapus item (index) pada lokal index, hanya ada yang berbeda disini, angka yang dihapus adalah angka (index) sesuai angka pada random_index.
Begini, index lokal urutanya adalah 1,2,3,4,5,6,7,8,9,10, kemudian pada langkah 2, lokal random_index diacak menjadi 7,6,9,1,2,10,4,3,5,8. Angka (index) yang akan dihapus pada lokal index adalah
1,2,3,4,5,6,8,9,10
1,2,3,4,5,8,9,10
1,2,3,4,5,8,10
2,3,4,5,8,10
3,4,5,8,10
3,4,5,8
3,5,8
5,8
8
kosong
Post a Comment