程序员人生 网站导航

控制台绘制正弦曲线和余弦曲线同时显示

栏目:php教程时间:2015-06-01 08:39:35

看这1篇时如果不会绘制正弦/余弦曲线可以先看看这1篇哦:控制台绘制正弦/余弦曲线

那末,如果想要同时显示的话,我们可能需要在同1行中绘制出3个或4个点了。我的思路比较简略,不过算法看上去非常非常不整洁,还望得到大家的帮助……

我通过Y等于2分之根号2和负2分之根号2和Y轴将全部图形分成4层,从上往下顺次绘制。具体看代码啦……

#include <stdio.h> #include <math.h> int main() { double y; int x,k1,k2; for(y=1;y>=-1;y-=0.1) { k1=acos(y)*10; k2=asin(y)*10; if(k1<k2&&k2>=0) { for(x=1;x<k1;x++) printf(" "); printf("*"); for(x=k1+1;x<k2;x++) printf(" "); printf("*"); for(;x<30-k2;x++) printf(" "); printf("*"); for(;x<62-k1;x++) printf(" "); printf("* "); } else if(k2<k1&&1<=k2&&k2<=15) { for(x=1;x<k2;x++) printf(" "); printf("*"); for(x=k2+1;x<k1;x++) printf(" "); printf("*"); for(;x<30-k2;x++) printf(" "); printf("*"); for(x=30-k2;x<62-k1;x++) printf(" "); printf("* "); } else if(k1<(30-k2)&&(30-k2)<(62-k1)&&-15<=k2&&k2<=-1) { for(x=1;x<k1;x++) printf(" "); printf("*"); for(;x<31-k2;x++) printf(" "); printf("*"); for(;x<62-k1;x++) printf(" "); printf("*"); for(;x<61+k2;x++) printf(" "); printf("* "); } else if((62-k1)<(31-k2)&&-15<=k2&&k2<=-1) { for(x=1;x<k1;x++) printf(" "); printf("*"); for(;x<62-k1;x++) printf(" "); printf("*"); for(;x<31-k2;x++) printf(" "); printf("*"); for(;x<61+k2;x++) printf(" "); printf("* "); } } return 0; }

这里写图片描述

大家有甚么更好的想法欢迎留言啊~

【这里还是源码,不需要资源积分】



为使本文得到斧正和发问,转载请注明出处:
http://blog.csdn.net/nomasp

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐