题目:在屏幕上用“ * ”显示0~360度的余弦函数cos(x)曲线。
算法分析:
为了同时得到余弦函数cos(x)图形在一行上的两个点,考虑利用cos(x)的左右对称性。将屏幕的行方向定义为x,列方向定义为y。0 ~ 180°与180° ~ 360°的图形是对称的,假定宽度为62列,利用 acos (x,y)的关系计算出x行0 ~ 180°时y点的坐标m,那么同一行与之对称的 180°~360°的 y 坐标为62 - m。
代码:
#include<stdio.h>
#include<math.h>
int main()
{
int x, m;
double y;
for (y=1; y>=-1;y-=0.1)
{
m = acos(y) * 10;
for (x=0; x<m; x++)
{
printf(" ");
}
printf("*");
for(; x<62-m; x++)
{
printf(" ");
}
printf("*\n");
}
}
输出:
思考1:如何在屏幕上用“*”打印一个空心的圆 ?
答案:https://blog.youkuaiyun.com/qq_43469554/article/details/84850567
思考2:如何同时打印一个余弦曲线和一条直线?
答案:https://blog.youkuaiyun.com/qq_43469554/article/details/84886281