七行プログラミング

このエントリーをはてなブックマークに追加
397縮め君
VC++でも大丈夫なように修正…。

#include <stdio.h>
char*s,a[999];int e();int c(){while(*s==32||*s==9)s++;return!*s;}int n(){int r=
0,g=0;if(c())return 0;if(*s==43||*s==45)g=*s++;for(c();47<*s&&*s<58;r=r*10+*s++
-48);return g-45?r:-r;}int f(){int r;return c()?1:*s-40?n():(s++,r=e(),s++,r);}
#define m(N,U,P,Q,R,S) int N(){int r,g;if(c())return 0;r=U();c();while(*s==R||\
*s==S){g=*s++;if(g==R)r##P##=U();if(g==S)r##Q## =U();c();}return r;}
m(t,f,*,/,42,47)m(e,t,+,-,43,45)int main(){s=gets(a);return !printf("%d",e());}