Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1177371
  • 博文数量: 573
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 66
  • 用 户 组: 普通用户
  • 注册时间: 2016-06-28 16:21
文章分类

全部博文(573)

文章存档

2018年(3)

2016年(48)

2015年(522)

分类: C/C++

2015-12-02 17:06:38


点击(此处)折叠或打开

  1. #include <stdio.h>
  2. #include <math.h>
  3. #define clear 1;if(c>=11){c=0;sscanf(_,"%lf%c",&r,&c);while(*++_-c);}\
  4.   else if(argc>=4&&!main(4-(*_++=='('),argv))_++;g:c+=
  5. #define puts(d,e) return 0;}{double a;int b;char c=(argc<4?d)&15;\
  6.   b=(*_%__LINE__+7)%9*(3*e>>c&1);c+=
  7. #define I(d) (r);if(argc<4&&*#d==*_){a=r;r=usage?r*a:r+a;goto g;}c=c
  8. #define return if(argc==2)printf("%f\n",r);return argc>=4+
  9. #define usage main(4-__LINE__/26,argv)
  10. #define calculator *_*(int)
  11. #define l (r);r=--b?r:
  12. #define _ argv[1]
  13. #define x

  14. double r;
  15. int main(int argc, char** argv){
  16.   if(argc<2){
  17.     puts(
  18.       usage: calculator 11/26+222/31
  19.       +~~~~~~~~~~~~~~~~~~~~~~~~calculator-\
  20.       ! 7.584,367 )
  21.       +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+
  22.       ! clear ! 0 ||l -x l tan I (/) |
  23.       +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+
  24.       ! 1 | 2 | 3 ||l 1/x l cos I (*) |
  25.       +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+
  26.       ! 4 | 5 | 6 ||l exp l sqrt I (+) |
  27.       +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+
  28.       ! 7 | 8 | 9 ||l sin l log I (-) |
  29.       +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(0
  30.     );
  31.   }
  32.   return 0;
  33. }

  34. /*
  35. 解析:
  36. best self documenting program : 最佳自我注释程序
  37. 寻找地址:
  38. http://www.open-open.com/news/view/1e6f302#_label0
  39.  
  40. 编译命令:
  41. cc luanma.c -lm -o hou

  42. ./hou 11/26+222/31

  43. ./hou 'log((21701-19937)-(23209-21701))/log(2)'

  44. ./hou 'sin(1.5708)+0.04321+log(sqrt(exp(1*1*1)))+(1+2*3)-0.4-0.6+(4+6)*(2-1+2*3)-tan(0.785398)+2*10/3*6*sqrt(16/2/2)*10+10000-1000'

  45. ./hou '1+2*3'

  46. ./hou '(1+2)*3'
  47. */



阅读(480) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~