__DATE__ スタイルの文字列をソート可能な文字列に変換します

C、137 184 184 140 120 106 103 文字

月名のルックアップを魔法の公式に置き換えました。
数式 (m[1]*4388^m[2]*7)%252 月名は昇順です。
無償で 0 を返すように変更しました。
数字を出力しなくなりました。代わりに、正しくソートされるはずの文字列を出力します。
supercat の %*s を実装しました 月名を降順で表示する関数とともに、前の月にさらにスペースを挿入するアイデア - (m[1]*29^m[2]+405)%49 .

#include<stdio.h>
int main(void){
    char*m=__DATE__"%*.6s\n"+1;
    return!printf(m+6,(*m*29^m[1]+405)%49,m);
}

1 桁の日は Jan_1_2012 で表されると思っていました (_ スペースです)、実際には Jan__1_2012 です (余分なスペース)。これは複雑なことなので、以前のバージョンはより複雑でした:

#include<stdio.h>
int main(void){
    char*m=__DATE__+1,*t=m+m[4]/16;
    return!printf("%s%3d%s\n",t+3,(*m*4388^m[1]*7)%252,t);
}