-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhe.c
13 lines (13 loc) · 1001 Bytes
/
he.c
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>/////////////////////////// gcc he.c -lm && ./a.out | aplay
#include<math.h>////////////////////////////////////////////////////////////
unsigned long q[]={0x544767c0490c8b21,0x999bf5cf370a7602,0xff1aca05a12a29bb,
0xde322b1fa794b7f4,0x77fc7058aa756118,0x54fe36dfaad5d5ef,0x98e12b0c6b899e73,
0x54fe36dd35b607b0,0x32b350fd32e6bcba,0x98320ea9b0225220,0xdd7f1550fb4de141,
0xbb341aad92e3d7ee,0x775508e0652b365f,0x544766d45e9027b3,0xdd82e4bfce3460ff,
0xdd82bacf2cb306b3,0x54fa51c63ba9a6a8,0x31f48dba868b172a,0x98ec9c128c83ccb0,
0x769a15f8746ef3e9,0x5447665bd9dfafe4,0x31f4a3602bc4faa8,0x54fe4b9e275c2ed1,
0xbb30206739932361,0x98e525505e46c574,0x769a3fe3f6c9273c,0x538c9e4650b56d57,
0x31f4781756b6c763,0x32a02c691f3b2e65,0},f,s,i,t;float x,y,o,g,p,w,a;main(k)
{for(;t=q[s++/333];p+=w,putchar(128+o*f*f/20))for(w=t%47/1e2,i=o=0;a=i*w<3;o
+=sin(p*i++)/sqrt(x*x+y*y))for(k=x=y=.1,f=t;f>8;f/=47,a=f%47*.191-4)x+=a*cos
(g=i*w*k++),y+=a*sin(g);}///////////////////////////////////////////////////