Secara khusus, gunakan masing-masing simbol ini setidaknya sekali dalam kode sumber Anda:
! " # $ % & ' () * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
Simbol di dalam komentar, string literal, regexps (atau jenis literal lainnya, dll.) Tidak dihitung (tetapi pembatasnya seperti /**/
atau ""
memang dihitung).
Program seharusnya tidak melakukan tindakan apa pun. Hanya perlu mengkompilasi dan tidak melakukan apa-apa saat dijalankan.
Jika karena alasan tertentu beberapa simbol tidak dapat digunakan dalam bahasa pilihan Anda, jelaskan dengan seksama (apa dan mengapa harus dikecualikan).
Pembaruan: Beberapa jawaban menggunakan simbol dengan ekspresi reguler. Saya menganggap ini agak bermasalah, itu sama dengan menempatkan mereka ke string literal atau komentar (itu sebabnya saya menempatkan dll dalam persyaratan itu). Silakan coba tanpa ini. Saya juga memperbarui persyaratan di atas.
Pembaruan: Kemenangan kode terpendek (ditandai sebagai kode-golf ). Seperti yang disarankan, kemungkinan besar kita akan memerlukan beberapa kriteria tie-breaker. Saya menyarankan bahwa jika ada dasi, yang menang adalah di mana simbol ASCII muncul sebanyak yang dipesan. Secara formal: Saring kejadian pertama dari masing-masing simbol yang terdaftar dari suatu program. Ini akan menghasilkan permutasi pada simbol yang terdaftar. Program dengan jumlah inversi yang lebih sedikit dari permutasi yang dimenangkan.
Pembaruan: Saya akan senang melihat beberapa / lebih banyak solusi dalam bahasa reguler / umum, seperti C (++), Java, Scala, Haskell, dll.
#
, @
dan `tidak sah di luar jenis literal apa pun
@%
atau backtick dapat muncul dalam c kecuali sebagai bagian dari literal (dalam versi c yang cukup baru%
dapat muncul dalam digraf). (dan#
hanya muncul dalam arahan preprosesor, tetapi kita hanya harus hidup dengan itu)? Yaitu, saya meminta pendekatan Matt agar dibuat eksplisit secara hukum.