|
|
1.1 ! root 1: static qatan2(), Qatan2(); ! 2: ! 3: patan2(xx, yy) ! 4: { ! 5: register x, y; ! 6: x=abs(xx); ! 7: y=abs(yy); ! 8: if(xx>=0 && yy>=0) ! 9: return(qatan2(x, y)); ! 10: if(xx<0 && yy<=0) ! 11: return(180+qatan2(x, y)); ! 12: if(xx<0 && yy>0) ! 13: return(180-qatan2(x, y)); ! 14: return(360-qatan2(x, y)); ! 15: } ! 16: ! 17: static ! 18: qatan2(x, y) ! 19: register x, y; ! 20: { ! 21: if(x<y) ! 22: return(90-(45*((long)x)/y)); ! 23: if(y==0) ! 24: return(0); ! 25: return(45*((long)y)/x); ! 26: } ! 27: ! 28: Patan2(xx, yy) ! 29: { return 100*patan2(xx,yy); ! 30: /* register x, y; ! 31: x=abs(xx); ! 32: y=abs(yy); ! 33: if(xx>=0 && yy>=0) ! 34: return(Qatan2(x, y)); ! 35: if(xx<0 && yy<=0) ! 36: return(18000+Qatan2(x, y)); ! 37: if(xx<0 && yy>0) ! 38: return(18000-Qatan2(x, y)); ! 39: return(36000-Qatan2(x, y)); ! 40: */ ! 41: } ! 42: /* ! 43: static ! 44: Qatan2(x, y) ! 45: register x, y; ! 46: { ! 47: if(x<y) ! 48: return(9000-(45*((long)(x*100))/y)); ! 49: if(y==0) ! 50: return(0); ! 51: return(45*((long)(y*100))/x); ! 52: } ! 53: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.