?? 同時打印正弦和余弦曲線.cpp
字號:
不使用數組同時打印正弦和余弦曲線,交點處用 “+”號表示,其余處用”*”表示
#include "stdio.h"
#include "math.h"
int main()
{
double y=1.0;
int x1,x2,x3,x4,m;
for(;y>=-1.0;y-=0.1)
{
if(y>=0)//x上半部分有被平行于y軸的直線截了4個交點x1,x2,x3,x4
{
x1=acos(y)*10;
x2=62-x1;
x3=asin(y)*10;
x4=31-x3;
for(m=0;m<(x1<x3?x1:x3);m++)
printf(" ");
if(x1==x3)
printf("+");
else
{
printf("*");
for(;m<(x1>x3?x1:x3);m++)
printf(" ");
printf("*");
}
for(;m<(x2<x4?x2:x4);m++)
printf(" ");
if(fabs(x2-x4)<=1)//兩點之間的距離小于一定的值就認為是交點
printf("+");
else
{
printf("*");
for(;m<(x2>x4?x2:x4);m++)
printf(" ");
printf("*");
}
}
else//x上半部分有被平行于y軸的直線截了4個交點x1,x2,x3,x4
{
x1=acos(y)*10;
x2=62-x1;
x3=31-asin(y)*10;
x4=93-x3;
for(m=0;m<x1;m++)
printf(" ");
printf(" ");//為顯示美觀多打印一個空格符
printf("*");
for(;m<(x2<x3?x2:x3);m++)
printf(" ");
if(fabs(x2-x3)<=1) //兩點之間的距離小于一定的值就認為是交點
printf("+");
else
{
printf("*");
for(;m<(x2>x3?x2:x3);m++)
printf(" ");
printf("*");
}
for(;m<x4;m++)//兩點之間的距離小于一定的值就認為是交點
printf(" ");
printf("*");
}
printf("\n");
}
return 1;
}
打印函數x=y*y曲線
#include "stdio.h"
#include "math.h"
#define maxnum 20
#define ylimit 8.0
#define decresement 0.85
int result[maxnum];
int main()
{
double x,y;
int m;
for(y=ylimit;y>=0.0;y-=decresement)
{
x=y*y;
for(m=0;m<x;m++)
printf(" ");//打印函數x=y*y曲線
printf("*\n");
}
return 1;
}
不使用數組來打印正弦曲線
#include "stdio.h"
#include "math.h"
int main()
{
double y;
int x,m;
for(y=1.0;y>=0.0;y-=0.1)//打印0~180度區間的圖像
{
x=asin(y)*10;//弧度數乘以10,將圖像放大
for(m=0;m<x;m++)
printf(" ");
printf("*");
for(;m<31-x;m++)//0~180度區間的圖像是關于90度對稱的
printf(" "); //打印正弦曲線
printf("*\n");
}
for(y=-0.1;y>=-1.0;y-=0.1) //打印180~360度區間的圖像
{
x=asin(y)*10;
x=31-x;
for(m=0;m<x;m++)
printf(" ");
printf("*");
for(;m<93-x;m++)//0~180度區間的圖像是關于270度對稱的
printf(" ");
printf("*");
printf("\n");
}
return 1;
}
不使用數組來打印余弦曲線
#include "stdio.h"
#include "math.h"
int main()
{
double y;
int x,m;
for(y=1.0;y>=0.0;y-=0.1)//打印0~180度區間的圖像
{
x=acos(y)*10;//弧度數乘以10,將圖像放大
for(m=0;m<x;m++)
printf(" ");
printf("*");
for(;m<31-x;m++)//0~180度區間的圖像是關于90度對稱的
printf(" "); //打印余弦曲線
printf("*\n");
}
for(y=-0.1;y>=-1.0;y-=0.1) //打印180~360度區間的圖像
{
x=asin(y)*10;
x=31-x;
for(m=0;m<x;m++)
printf(" ");
printf("*");
for(;m<93-x;m++)//0~180度區間的圖像是關于270度對稱的
printf(" ");
printf("*");
printf("\n");
}
return 1;
}
不使用數組同時打印正弦和余弦曲線,交點處用 “+”號表示,其余處用”*”表示
#include "stdio.h"
#include "math.h"
int main()
{
double y=1.0;
int x1,x2,x3,x4,m;
for(;y>=-1.0;y-=0.1)
{
if(y>=0)//x上半部分有被平行于y軸的直線截了4個交點x1,x2,x3,x4
{
x1=acos(y)*10;
x2=62-x1;
x3=asin(y)*10;
x4=31-x3;
for(m=0;m<(x1<x3?x1:x3);m++)
printf(" ");
if(x1==x3)
printf("+");
else
{
printf("*");
for(;m<(x1>x3?x1:x3);m++)
printf(" ");
printf("*");
}
for(;m<(x2<x4?x2:x4);m++)
printf(" ");
if(fabs(x2-x4)<=1)//兩點之間的距離小于一定的值就認為是交點
printf("+");
else
{
printf("*");
for(;m<(x2>x4?x2:x4);m++)
printf(" ");
printf("*");
}
}
else//x上半部分有被平行于y軸的直線截了4個交點x1,x2,x3,x4
{
x1=acos(y)*10;
x2=62-x1;
x3=31-asin(y)*10;
x4=93-x3;
for(m=0;m<x1;m++)
printf(" ");
printf(" ");//為顯示美觀多打印一個空格符
printf("*");
for(;m<(x2<x3?x2:x3);m++)
printf(" ");
if(fabs(x2-x3)<=1) //兩點之間的距離小于一定的值就認為是交點
printf("+");
else
{
printf("*");
for(;m<(x2>x3?x2:x3);m++)
printf(" ");
printf("*");
}
for(;m<x4;m++)//兩點之間的距離小于一定的值就認為是交點
printf(" ");
printf("*");
}
printf("\n");
}
return 1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -