توابع ریاضی و ویژوال بیسیک
مقدمه:
براي نوشتن برنامه هاي مهندسی ، محاسباتی ، گرافیکی و آماري نیاز
دارید تا از برخی توابع ریاضی استفاده نمائید . ویژوال بیسیک 6 داراي
مجموعه اي از توابع است که براي انجام محاسبات عددي پیش بینی
شده اند . در این مقاله ابتدا با این توابع آشنا شده و سپس چگونگی
ایجاد سایر توابع ریاضی را که در میان این مجموعه وجود ندارند
خواهید دید . در پایان نیز با توابع ریاضی موجود در دات نت آشنا می
شوید .
توابع ریاضی موجود در ویژوال بیسیک 6
قدرمطلق) : مقدار بدون علامت یک عدد را برمی گرداند . ) Abs - تابع
است که double آرك تانژانت) : خروجی تابع عددي از نوع ) Atn - تابع
برابر زاویه اي است که تانژانت آن عدد ورودي تابع است .
است که double کسینوس ) : خروجی تابع عددي از نوع ) Cos - تابع
برابر کسینوس زاویه ورودي است .
است که double توان نمانی) : خروجی تابع عددي از نوع ) Exp - تابع
به توان ورودي تابع است . e برابر
تابع کف یا تابع جزء صحیح) : نزدیکترین عدد صحیح ) Int - تابع
مساوي یا کوچکتر نسبت به عدد ورودي را برمی گرداند .
است که double لگاریتم ) : خروجی تابع عددي از نوع ) Log - تابع
یا همان e برابر لگاریم طبیعی عدد ورودي است ( لگاریتم بر مبناي عدد
( Ln
است double گرد کردن ) : خروجی تابع عددي از نوع ) Round - تابع
که برابر نزدیکترین عدد صحیح به مقدار عدد ورودي است .
علامت) : خروجی تابع عددي از نوع صحیح است که نشان ) Sgn - تابع
دهنده علامت عدد ورودي است .
است که double سینوس ) : خروجی تابع عددي از نوع ) Sin - تابع
برابر سینوس زاویه ورودي است .
است که برابر double جذر) : خروجی تابع عددي از نوع ) Sqr - تابع
ریشه دوم یا جذر عدد ورودي است .
است که double تانژانت) : خروجی تابع عددي از نوع ) Tan - تابع
برابر با تانژانت زاویه ورودي ( برحسب رادیان ) می باشد .
می توان صحیح یا اعشاري n ) ام یک عدد n نکته : براي محاسبه توان
باشد ) از اپراتور ^ استفاده نمائید . براي مثال :
2^5=32
9^0.5=3
4.2^3.7=202.31
چگونگی ایجاد سایر توابع ریاضی که در ویژوال بیسیک 6 وجود ندارند
جدول زیر چگونگی محاسبه سایر توابع ریاضی که در ویژوال بیسیک 6
وجود ندارند را نشان می دهد :
Sec(X) = 1 / Cos(X) سکانت
Cosec(X) = 1 / Sin(X) کسکانت
Cotan(X) = 1 / Tan(X) کتانژانت
Arcsin(X) = Atn(X / Sqr(1-X * X )) آرك سینوس
Arccos(X) = Atn(-X / Sqr(1-X * X)) + 2 * Atn( آرك کسینوس ( 1
Arcsec(X) = Atn(X / Sqr(X * X - 1)) + Sgn((X) - آرك سکانت * ( 1
(2 * Atn(1))
Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - آرك کسکانت
1) * (2 * Atn(1))
Arccotan(X) = Atn(X) + 2 * Atn( آرك کتانژانت ( 1
HSin(X) = (Exp(X) - Exp(-X)) / سیونس هیپربولیک
2
HCos(X) = (Exp(X) + Exp(-X)) / کسینوس هیپربولیک 2
HTan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(- تانژانت هیپربولیک
X))
HSec(X) = 2 / (Exp(X) + Exp(-X)) سکانت هیپربولیک
HCosec(X) = 2 / (Exp(X) - Exp(-X)) کسکانت هیپربولیک
HCotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(- کتانژانت هیپربولیک
X))
HArcsin(X) = Log(X + Sqr(X * X + آرك سینوس هیپربولیک (( 1
HArccos(X) = Log(X + Sqr(X * X - آرك کسینوس هیپربولیک ((
HArctan(X) = Log((1 + X) / (1 - X)) / آرك تانژانت هیپربولیک 2
HArcsec(X) = Log((Sqr(1-X * X) + 1) / X) آرك سکانت هیپربولیک
HArccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) + آرك کسکانت هیپربولیک / ( 1
X)
HArccotan(X) = Log((X + 1) / (X - 1)) / آرك کتانژانت هیپربولیک 2
LogN(X) = Log(X) / Log(N) N لگاریتم بر مبناي
در ویژوال بیسیک 6 e و π اعداد
در برنامه هاي خود ثوابت زیر را e براي استفاده از عدد پی و عدد
تعریف نمائید :
Const Pi = 3.14159265358979
Const e = 2.71828182845904
همچنین عدد پی را می توان به صورت زیر تعریف کرد :
Pi = 4*Atn(1)
تبدیل رادیان / درجه
چون اکثر توابع مثلثاتی بر حسب رادیان کار می کنند گاهی اوقات نیاز
داریم تا زاویا را از در جه به رادیان و بالعکس تبدیل کنیم . براي تبدیل
یک زاویه که بر حسب رادیان می باشد به درجه آنرا در 180 ضرب کرده
و سپس بر عدد پی تقسیم می کنیم :
Degree(x) =x*180/Pi
براي تبدیل یک زاویه که بر حسب درجه بیان شده به رادیان آنرا در عدد
پی ضرب کرده و سپس بر 180 تقسیم می کنیم :
Rad(x) =x*Pi/180
VB.Net توابع ریاضی و
مجموعه توابع ریاضی در در ویژوال بیسیک دات نت وجود دارند بسیار
System.Math قویتر و کاملتر هستند . این مجموعه توابع در کلاس
موجود می باشند :
براي نشان دادن پایه لگاریتم PI و E دو ثابت به اسم Math - در کلاس
طبیعی و عدد پی وجود دارند .
آرك سینوس) ، ) Asin ، ( آرك کسینوس ) Acos : - توابع مثلثاتی
آرك تانژانت خارج قسمت تقسیم ) Atan آرك تانژانت) ، 2 ) Atan
تانژانت ) ) Tan ، ( سینوس ) Sin ، ( کسینوس ) Cos ، ( ورودي ها
حاصلضرب کامل دو ) BigMul ، ( قدرمطلق ) Abs : - توابع عمومی
خارج قسمت نقسیم ) DivRem ، ( تابع سقف ) Ceiling ، ( عدد 32 بیتی
باقیمانده نقسیم ) IEEERemainder ، ( تابع کف ) Floor ، ( دو ع
مینیمم بین دو عدد ) ، ) Min ، ( ماکزیمم بین دو عدد ) Max ، ( دو عدد
تابع جذر ) ) Sqrt ، ( تابع علامت ) Sign ، ( تابع گرد کردن ) Round
سینوس ) Sinh ، ( کسینوس هیپربولیک ) Cosh : - توابع هیپربولیک
تانژانت هیپربولیک ) ) Tanh ، ( هیپربولیک
) Log ، ( به توان مقدار ورودي e عدد ) Exp : - توابع نمایی و لگاریتمی
تابع توان ) ) Pow ، ( لگاریتم بر پایه 10 ) Log لگاریتم ) ، 10
تصحیح چند اشتباه
در نوشتن مقاله "توابع ریاضی و ویژوال بیسیک" چند اشتباه رخ داده
بود که یکی از دوستان عزیر و خوانندگان این وبلاگ لطف کرده و این
اشتباهات را ذکر کردند :
"سلام بسیار عالی بود...مدت ها بود به دنبال این فرمولها می گشتم. اما
به توان e برابر exp خروجی تابع - pi=4*atn( با اجازه چند نکته : - ( 1
در فارسی به تابع جزء صحیح مشهور int عدد ورودي می باشد. - تابع
ام عدد از فرمول زیر استفاده می n است. - براي به دست آوردن ریشه
ام با تشکر " n ریشه = x^(1/n) : شود
این اشتباهات در مقاله فعلی تصحیح شده است .