مدیر جان یه سوال از خدمتت داشتم:
تانژانت 90 مگه تعریف نشده نیست؟
پس چرا تو این برنامه که واسم گذاشتید -272241.8084 نشون میده؟
آیا برنامه مشکل داره؟
(Tan(90 برابر بینهایت است که یک مقدار انتزاعی است، اعداد هم در کامپیوتر مثل هر چیز دیگه ای
در دنیای واقعی محدودیت دارند. ویژوال بیسیک (Tan(
π / 2 رو 16331778728383800 حساب می کنه،
یعنی مثلا یک عدد خیلی بزرگ مثل بی نهایت، اما اونی که الان شما دارید می بینید (1.5708)Tan است،
1.5708 با
π / 2 خیلی فرق داره.
نه برنامه مشکلی نداره، مشکل اینه که بی نهایت رو نمیشه با عدد نمایش داد، در ضمن دقت اعشاری برنامه
چهار رقم بعد از اعشاره. اگه دقت کنید می بینید که 90 درجه برابر 1.5708 رادیان نوشته شده، اما چهار رقم بعد از
اعشار برای محاسبه کردن Tan نزدیک به بی نهایت خیلی کمه. هر چقدر که دقت اعشاری بیشتر باشه، خروجی
به بی نهایت نزدیکتر میشه. اما به هر حال بی نهایت یعنی یک عدد خیلی بزرگ.
90 درجه تقریبا برابر با 1.5707963267948966192313216916398 است، اگه این مقدار رو مستقیما در زاویه
بر حسب رادیان (TextBox دوم) وارد کنید، Tan دقیقتر میشه. دلیلش هم اینه که محاسبات با واحد رادیانه و چون
رادیان اعشاری است، هر چی اعشار دقیقتر باشه نتیجه بهتره.
شما اگه مقدار 90 رو وارد کنین اول به رادیان تبدیل میشه، اونم فقط با چهار رقم بعد از اعشار.
Tan در مقادیر نزدیک به 90 درجه خیلی حساسه، کوچکترین تغییری در زاویه نتیجه رو خیلی تغییر میده.
اگر بخواهید (Tan(90 رو ببینید باید مقدار 1.5707963267948966192313216916398 رو برحسب رادیان وارد کنید.