vb中三角函數(shù)要求的角度的單位是弧度,不是度,因此你輸入的90代表的是90弧度而不是90度
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),中江企業(yè)網(wǎng)站建設(shè),中江品牌網(wǎng)站建設(shè),網(wǎng)站定制,中江網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,中江網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
Sin 函數(shù)
返回一 Double,指定參數(shù)的 sine(正弦)值。
語法
Sin(number)
必要的 number 參數(shù)是 Double 或任何有效的數(shù)值表達(dá)式,表示一個以弧度為單位的角。
說明
Sin 函數(shù)取一角度為參數(shù)值,并返回角的對邊長度除以斜邊長度的比值。
結(jié)果的取值范圍在 -1 到 1 之間。
為了將角度轉(zhuǎn)換為弧度,請將角度乘以 pi /180。為了將弧度轉(zhuǎn)換為角度,請將弧度乘以 180/pi。
沒有錯,VB的三角函數(shù)計算的都是弧度,如果要計算角度需要轉(zhuǎn)換一下。
比如:
Const PI=3.14159265
y=Sin(x*PI/180)
另外,這里無需再用val函數(shù)了,因為sin函數(shù)返回的本來就是一個double類型的數(shù)值。
有幾個地方要注意:
1、VB中的三角函數(shù)的角度全部是用弧度制表示的,如果是度數(shù)的話,應(yīng)先乘以180再除以π轉(zhuǎn)成弧度,再用函數(shù)計算結(jié)果。
2、VB中直接支持的三角函數(shù)有:Sin()、Cos()、Tan(),如果涉及到其它三角函數(shù),可以從下面列出的代碼中自己選擇相應(yīng)的函數(shù):
Function
Sec(X)
As
Double
'正割
Sec
=
1
/
Cos(Angle)
End
Function
Function
Csc(X)
As
Double
'余割
Csc
=
1
/
Sin(Angle)
End
Function
Function
Cot(X)
As
Double
'余切
Cot
=
1
/
Tan(Angle)
End
Function
Function
ArcSin(X)
As
Double
'反正弦
ArcSin
=
Atn(X
/
Sqr(-X
*
X
+
1))
End
Function
Function
ArcCos(X)
As
Double
'反余弦
ArcCos
=
Atn(-X
/
Sqr(-X
*
X
+
1))
+
2
*
Atn(1)
End
Function
Function
ArcSec(X)
As
Double
'反正割
ArcSec
=
Atn(X
/
Sqr(X
*
X
-
1))
+
Sgn((X)
-
1)
*
(2
*
Atn(1))
End
Function
Function
ArcCsc(X)
As
Double
'反余割
ArcCsc
=
Atn(X
/
Sqr(X
*
X
-
1))
+
(Sgn(X)
-
1)
*
(2
*
Atn(1))
End
Function
Function
ArcCot(X)
As
Double
'反余切
ArcCot
=
Atn(X)
+
2
*
Atn(1)
End
Function
Function
HSin(X)
As
Double
'雙曲正弦
HSin
=
(Exp(X)
-
Exp(-X))
/
2
End
Function
Function
HCos(X)
As
Double
'雙曲余弦
HCos
=
(Exp(X)
+
Exp(-X))
/
2
End
Function
Function
HTan(X)
As
Double
'雙曲正切
HTan
=
(Exp(X)
-
Exp(-X))
/
(Exp(X)
+
Exp(-X))
End
Function
Function
HSec(X)
As
Double
'雙曲正割
HSec
=
2
/
(Exp(X)
+
Exp(-X))
End
Function
Function
HCsc(X)
As
Double
'雙曲余割
HCsc
=
2
/
(Exp(X)
-
Exp(-X))
End
Function
Function
HCot(X)
As
Double
'雙曲余切
HCot
=
(Exp(X)
+
Exp(-X))
/
(Exp(X)
-
Exp(-X))
End
Function
Function
HArcsin(X)
As
Double
'反雙曲正弦
HArcsin
=
Log(X
+
Sqr(X
*
X
+
1))
End
Function
Function
HArccos(X)
As
Double
'反雙曲余弦
HArccos
=
Log(X
+
Sqr(X
*
X
-
1))
End
Function
Function
HArctan(X)
As
Double
'反雙曲正切
HArctan
=
Log((1
+
X)
/
(1
-
X))
/
2
End
Function
Function
HArcsec(X)
As
Double
'反雙曲正割
HArcsec
=
Log((Sqr(-X
*
X
+
1)
+
1)
/
X)
End
Function
Function
HArccsc(X)
As
Double
'反雙曲余割
HArccsc
=
Log((Sgn(X)
*
Sqr(X
*
X
+
1)
+
1)
/
X)
End
Function
Function
HArccot(X)
As
Double
'反雙曲余切
HArccot
=
Log((X
+
1)
/
(X
-
1))
/
2
End
Function
VB系統(tǒng)的坐標(biāo)原點在左上角,X軸的正方向是水平向右,而Y軸的正方向是垂直向下。所以,要繪制三角函數(shù)的曲線,自己可以通過改變點坐標(biāo)的方法來實現(xiàn),當(dāng)然,VB.NET提供了相應(yīng)的方法可以來實現(xiàn)坐標(biāo)變換,也可以通過VB.Net的Graphics類提供的平移、旋轉(zhuǎn)等轉(zhuǎn)換來實現(xiàn)。
下面是我通過自己變換實現(xiàn)的示例,提供參考;我的環(huán)境是VB.NET 2010
Imports System.Math
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
? '1,獲得一個Graphics對象
? Dim MyGraphics As Graphics
? MyGraphics = PictureBox1.CreateGraphics
? '2,定義一個Pen對象,用于繪制圖形(輪廓線)
? Dim MyPen As New Pen(Color.Black, 1)
? '3,定義一個Brush對象,用于填充圖形(如果需要填充的話)
? Dim MyBrush As New SolidBrush(Color.Orange)
? MyGraphics.DrawLine(MyPen, 0, 200, 700, 200)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
? '1,獲得一個Graphics對象
? Dim MyGraphics As Graphics
? MyGraphics = PictureBox1.CreateGraphics
? '2,定義一個Pen對象,用于繪制圖形(輪廓線)
? Dim MyPen As New Pen(Color.Black, 1)
? '3,定義一個Brush對象,用于填充圖形(如果需要填充的話)
? Dim MyBrush As New SolidBrush(Color.Orange)
? '聲明橫向和縱向比例變量
? Dim Heng As Integer = 20
? Dim Zong As Integer = 50
? '先獲得正弦值,保存到點坐標(biāo)數(shù)組
? Dim MyPoints(700) As Point
? Dim i As Integer
? For i = 0 To 700
? ? ? MyPoints(i) = New Point(i * Heng, 200 + Sin(i) * Zong)
? Next
? '采用繪制光滑線連接點的方式繪制曲線
? MyGraphics.DrawCurve(MyPen, MyPoints)
End Sub
End Class
顯示的效果圖:
Function ArcSin(X) As Double '反正弦
ArcSin = Atn(X / Sqr(-X * X + 1))
End Function
Function ArcCos(X) As Double '反余弦
ArcCos = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)
End Function
Function ArcSec(X) As Double '反正割
ArcSec = Atn(X / Sqr(X * X - 1)) + Sgn((X) - 1) * (2 * Atn(1))
End Function
Function ArcCsc(X) As Double '反余割
ArcCsc = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1))
End Function
Function ArcCot(X) As Double '反余切
ArcCot = Atn(X) + 2 * Atn(1)
End Function
Function HSin(X) As Double '雙曲正弦
HSin = (Exp(X) - Exp(-X)) / 2
End Function
Function HCos(X) As Double '雙曲余弦
HCos = (Exp(X) + Exp(-X)) / 2
End Function
Function HTan(X) As Double '雙曲正切
HTan = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X))
End Function
擴(kuò)展資料:
Visual Basic 開發(fā)的程序只能運行在Microsoft Windows中;且運行時還需要 VB 運行庫。
Visual Basic 不能很好的綜合Windows的基礎(chǔ) API,很多時候要使用低級運算的“小伎倆”來進(jìn)行編程。而C 語言的低級內(nèi)存運算比 VB 的要簡單得多。
VB語言作為計算機(jī)語言的入門,是很多學(xué)生學(xué)習(xí)編程的入門級語言,大學(xué)生利用VB語言開始了他們學(xué)習(xí)計算機(jī)的世界。
Visual Basic的強(qiáng)大在于能夠快速開發(fā)企業(yè)級軟件,使程序員有更多的時間和精力考慮用戶的需求,生產(chǎn)出滿足用戶需要的軟件,特別適合大型企業(yè)級軟件的開發(fā),比如MIS、MRP、MRP II、ERP等重量級的軟件,而不是花很長時間去制作一個只有幾K的DLL。
參考資料來源:百度百科-vb
參考資料來源:百度百科-三角函數(shù)
vb.net提供了許多命名空間,三角函數(shù)在?System.Math 命名里:
在代碼窗口的最上面添加如下代碼:
Imports System.Math
見下圖:
文章題目:vbnet三角函數(shù),vb設(shè)計三角函數(shù)代碼
當(dāng)前地址:http://muchs.cn/article32/pheisc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、品牌網(wǎng)站制作、響應(yīng)式網(wǎng)站、商城網(wǎng)站、電子商務(wù)、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)