第1个回答 2009-10-31
java的画正弦函数的画法是用一个算法,c#和java差不多,我只看过一点基本的语法.你学的挺快的,学c#了,我感觉也是用算法来画吧.
算法:
就是x从某一值开始到某一值,让后算出纵坐标,这个简单算出,直接是数学函数来算,,然后用一个循环一个个的点画在这个坐标上,这样就画出来了,不知道你说的是不是这样的图呀,如果要想发现不是很明显是断续的点,课用while循环,将循环增量变小,java里面用的是drawstring()函数,具体就不说了,c#里面还真没查,我想应该有函数是将两点间有直线连接,哈哈,这样也可以用循环,一个用点,一个用折线,只要精度高点,估计没什么差别,以后c#方面多交流交流吧!你试试吧,哈哈,你研究完了有空上网了,告诉我下
第2个回答 2020-04-20
好像没有画三角函数的方法似的!
我这里有一个自己写的代码,可能参数设计的不是很好看起来不是很像,不过意思应该达到了!
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
namespace
SIN
{
class
Program
{
static
void
Main(string[]
args)
{
for
(int
i
=
0;
i
<
61;
i++)//绘制Y轴
{
Console.Write('-');
if
(i
==
60)
{
Console.WriteLine(">
Y轴");
}
}
double
Y;
double
angle;
double
radian;
char[,]
SINS
=
new
char[100,
61];
int[]
huhao
=
new
int[100];
for
(int
i
=
0;
i
<
100;
i++)
{
angle
=
i
*
360
/
100;
radian
=
angle
*
Math.PI
/
180;
Y
=
Math.Sin(radian);
huhao[i]
=
Convert.ToInt32(Y
*
25);
//Console.WriteLine(Y);
}
for
(int
i
=
0;
i
<
100;
i++)
for
(int
j
=
0;
j
<
61;
j++)
{
SINS[i,j]='\0';
if
(j
==
31)
{
SINS[i,
j]
=
'|';
}
}
for
(int
i
=
0;
i
<
100;
i++)
{
SINS[i,
huhao[i]
+
31]
=
'*';
}
for
(int
i
=
0;
i
<
100;
i++)
{
for
(int
j
=
0;
j
<
61;
j++)
{
Console.Write(SINS[i,
j]);
}
Console.WriteLine();
}
Console.ReadLine();
}
}
}