您的位置:首页 > 其它

经典算法100道(2)-绘制余弦曲线和直线相交

2010-09-19 21:18 330 查看
// 绘制余弦曲线和直线.cpp : Defines the entry point for the console application.
/*
在屏幕上显示0~360度的cos(x)曲线与直线f(X)=45*(y-1)+31叠加图形。其中cos图形用×表示,
f(X)用+号表示,在两个图形的交点处则用f(x)图形的符号。
问题分析与算法设计:
 本题可以在上题的基础上进行修改。图形叠加的关键是要在分别计算出同一行中的两个图形
的列方向点坐标后,正确判断相互的位置关系。为此,可以先判断图形的相交点,在分别控制打印两个不同图形。

  */

#include "stdafx.h"
#include<stdio.h>
#include<math.h>

int main(int argc, char* argv[])
{
 double y;
 int x,m;
 int n,y0;
 
 for(y0=1;y0<=20;y0++)
 {
  y=0.1*y0;
  m=acos(1-y)*10;
  n=45*(y-1)+31;

  for(x=0;x<=64;x++)
  {
   if(x==m&&x==n)
    printf(" + ");//在两条相交线的位置处填上+星号。
   else if(x==n)
    printf("+"); //在满足了直线的条件下绘制+星号
   else if(x==m||x==62-m)
    printf(" * ");//在满足cos的条件下绘制*号。
   else
    printf(" ");//在没有满足的条件下打印空格键。
  }
  printf("/n");//每次打印完一行后就换行打印。
 }
 return 0;
}

 



 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: