|
19 Oct 2005 A Secret behind NTU's Matric Number80577 Rahasia di balik Nomor Siswa NTU Sudah berulang kali aku terbingung dengan satu huruf pada nomor siswa (matriculation number) ku. Aku kuliahnya di Nanyang Technological University (NTU), Singapura. Nomor itu terdiri dari 8 angka dan 1 huruf. Aku dan beberapa teman penasaran dengan arti dari 1 huruf itu, menandakan apakah itu? It has been several times that I am confused with a letter in my university matriculation number. I am studying at Nanyang Technological University (NTU), Singapore. The number consists of 8 numerical digits and one letter. I and several of my friend are curious about the meaning of the letter, what does it mean?
Itu salah satu contoh nomor siswa, 033299H06. Berdasarkan pengamatan yang sederhana, bisa dipastikan bahwa a = tahun mulai kuliah, b = nomor seri (tak perlu urut), dan d = kode jurusan. Namun c itu apa yah? That is an example of a matric number, 033299H06. Based on a simple observation, it can be assured that a = the year of entering university, b = serial number (not necessarily sequential) and d = course code. But what actually is c? Kuhabiskan sekitar 1 jam untuk mengambil kumpulan besar data (setelah beberapa hari lalu muncul idenya) (makasih regex, ultraedit, opera, flashget, directory opus) lalu dengan mencari pola-pola yang ada, akhirnya kutemukan rumusnya, hore! I wasted about an hour to obtain a big collection of data (after I find the idea some days ago) (thanks to regex, ultraedit, opera, flashget, directory opus) then by finding patterns there, finally I found the formula, yippie! OK, berdasarkan huruf-huruf yang kutemukan, hanya salah satu dari ABCDEFGHJKL yang mungkin muncul. Dengan demikian ada 11 macam. Yang paling masuk akal sih huruf itu merupakan checksum. Dan melihat bilangan itu 11, yaitu bilangan prima, kemungkinan besar rumusnya menggunakan sisa bagi 11. Jadi mari kita asosiasikan A dengan 0, B dengan 1, C dengan 2, dan seterusnya, sampai K = 10. OK, based on the letters I found, I found that only one of ABCDEFGHJKL that is possible to be the letter. Therefore, only 11 kind of them. I think the most sensible thought is that the letter is a checksum. And seeing that the number is 11, that is a prime number, most probably the formula is using modulus 11. So let's associate A with 0, B with 1, C with 2 and so on, until K = 10. Ternyata cara yang pertama kali ditemukan salah pada sekitar 1/8 dari data-data yang ada! Terima kasih Ainun Najib atas penemuan kesalahannya! It is revealed that the method that I published for the first time still gives incorrect results on about 1/8 of the data! Thank you Ainun Najib for finding the incorrectness! Untuk melihat cara pertama, klik sini. To see the first method, click here. Setelah beberapa analisis lanjutan yang terlalu bingung mau gimana diungkapkannya di sini (cara 1), ditambah dengan kebingungan kedua setelah melihat adanya hubungan erat dengan b1 (cara 2), aku temukan kecerahan! Mari kita tentukan h berdasarkan rumus berikut, After some analysis following that, that is too confusing to know how to explain here (method 1), and I got the second confusion after I see that there was a tight relation with b1 (method 2), I got a light! Lets define h based on the following formula, h = (5 a1 + 6 a2+ 7 b1 + 4 b2 + 3 b3 + 2 b4 + 9 d1 + 8 d2 + 10) % 11 Untuk contoh di atas, 033299H06: For the above example, 033299H06: h = (5 a1 + 6 a2+ 7 b1 + 4 b2 + 3 b3 + 2 b4 + 9 d1 + 8 d2 + 10) % 11 = (5 (0) + 6 (3) + 7 (3) + 4 (2) + 3 (9) + 2 (9) + 9 (0) + 8 (6) + 10) % 11 = (18 + 21 + 8 + 27 + 18 + 48 + 10) % 11 = 150 % 11 = 7 Cocokkan h, 0 adalah A, 1 adalah B, 2 adalah C, dan seterusnya (dengan urutan "ABCDEFGHJKL"), maka 7 adalah H. Tepat, kan! Cukup untuk penjelasannya, udah cape, jika ada pertanyaan, aduan, godaan, keluhan, silakan sampaikan di bawah. Match the h, with: 0 is A, 1 is B, 2 is C, and so on (with sequence: "ABCDEFGHJKL"), so 7 is H. Correct, isn't it? That's all for the explanation, because I'm tired. If you have questions, complain, temptation, grumple, please tell me below.
Written by: yuku |