Tulis program yang mengurutkan vektor angka (atau jenis elemen apa pun) yang terlihat seperti memiliki satu atau lebih bug, tetapi sebenarnya tidak apa-apa.
- Kode harus jelas. Seseorang yang melihat kode harus dengan mudah mengidentifikasi bahwa itu adalah semacam algoritma dan harus dengan mudah mengacaukan bagian kode yang benar dengan bug.
- Bug (jelas) dapat oleh apa saja yang membuat kode sintaksis atau semantik terbentuk (misalnya membuat program tidak mengkompilasi / menjalankan, menunjukkan UB ketika dijalankan), membuat program menghasilkan hasil yang salah, tidak berakhir, atau tidak deterministik.
- Kode harus benar-benar terbentuk dengan baik dan program harus secara deterministik menghasilkan output yang benar dalam waktu yang terbatas.
- Masukan dapat dikodekan dalam program atau dapat dibaca (dari pengguna, dari file dll.).
- Input dianggap valid dan program tidak diperlukan untuk memverifikasi kebenaran input.
- Algoritma pengurutan apa pun diterima. Struktur data untuk menampung angka tidak perlu menjadi vektor yang sebenarnya. Program ini dapat dirancang untuk mengurutkan jumlah variabel angka atau jumlah angka tetap (misalnya program untuk mengurutkan 3 angka ok ). Penyortiran bisa stabil atau tidak (catatan: program yang dirancang untuk melakukan penyortiran stabil yang memiliki bug jelas yang membuat penyortiran terlihat tidak stabil, tetapi dalam kenyataannya itu bukan bug: program ini benar-benar melakukan penyortiran yang stabil - adalah jawaban yang valid ).
- Anda dapat memanggil fungsi apa saja (termasuk fungsi sortir) kecuali alat pihak ke-3 (kecuali jika tersebar luas dan digunakan misalnya
boos
untukC++
,JQuery
untukJavascript
- itu boleh digunakan) - tentukan bahasa
- komentar dalam kode bagian yang terlihat seperti bug.
- jelaskan apa yang keliru dilakukan bug.
- jelaskan (dalam kotak spoiler) mengapa sebenarnya bukan bug.
Ini adalah kontes popularitas. Jawaban dengan suara terbanyak menang.
Tantangan ini sudah berakhir. Pemenangnya adalah @Clueless /codegolf//a/30190/11400 dengan 8 suara. Terima kasih untuk semua submitter!
Jika Anda ingin masuk setelah pemenang diberikan, jangan ragu untuk menambahkan jawaban baru. Anda keluar dari perlombaan, tetapi kami semua tertarik untuk melihat jawaban yang menarik.
Jawaban:
C ++
Terinspirasi oleh Apple
goto fail
; bug .sumber
goto
, karena itu tidak ada bug. (Mengacu pada semua orang yang mengatakan bug tidak akan pernah terjadi jika Apple tidak menggunakangoto
)Python2.x
Uji coba
sumber
C
Menggunakan sortir secara tidak benar - pada sistem 64 bit
int
adalah 4 byte danchar *
8 byte, jadi seharusnya tidak berfungsi.Kode:
Membangun:
Lari:
Yap, macam-macam oke!
sumber
Kobra
Oh sayang, tampaknya aku salah ditugaskan
n
... dan bagaimana semua koma itu sampai di sana !?sumber
Jawa
sumber
Perl
Kontraktor hari ini! Tidakkah mereka tahu bahwa
<=>
operator (alias "pesawat ruang angkasa") hanya digunakan untuk pengurutan angka?Dan mengapa mereka membandingkan operator?
Bagaimana kode ini bahkan lulus tes ketat kami ?? !! Bahkan menggunakan
strict
danwarnings
!Mengapa Perl mengkompilasi
Mengapa ini berhasil?
sumber