有辦法寫個程式,執行後產生這個程式的原始碼嗎?產生器可以是任何形式,最簡單的就是在終端機顯示原始碼!很多人會想到,不就是讀取原始碼顯示出來嗎?不!這被認為是作弊的行為,而且程式本身不一定知道原始碼檔案在哪,或者不一定有原始碼,例如,若寫了一個.java,編譯後將.java刪除,執行.class檔也要能顯示原始碼,當然,反組譯也是作弊的行為!
因此,簡單來說,自產生程式(Quine)的限制是,不能有任何形式的輸入,程式運行本身就要能複製自己!看到這段文字時,請暫停閱讀這篇專欄,試著先寫個Quine吧!
寫個Quine
臉書留言
(這個頁面共進入 3 次, 今天進入 1 次)