பைத்தானில் முக்கோணவியல் செயல்பாடுகளைக் கணக்கிடுங்கள் (சின், காஸ், டான், ஆர்க்சின், ஆர்க்கோஸ், ஆர்க்டான்)

வணிக

கணிதச் செயல்பாடுகளுக்கான பைத்தானின் நிலையான தொகுதியான கணிதத்தைப் பயன்படுத்தி, முக்கோணவியல் செயல்பாடுகள் (sin, cos, tan) மற்றும் தலைகீழ் முக்கோணவியல் செயல்பாடுகள் (arcsin, arccos, arctan) ஆகியவற்றைக் கணக்கிடலாம்.

பின்வரும் உள்ளடக்கங்கள் மாதிரி குறியீடுகளுடன் இங்கே விளக்கப்பட்டுள்ளன.

  • பை (3.1415926..):math.pi
  • கோண மாற்றம் (ரேடியன்கள், டிகிரி):math.degrees(),math.radians()
  • சைன், இன்வெர்ஸ் சைன்:math.sin(),math.asin()
  • கொசைன், தலைகீழ் கொசைன்:math.cos(),math.acos()
  • தொடுகோடு, தலைகீழ் தொடுகோடு:math.tan(),math.atan(),math.atan2()
  • கீழே உள்ள வேறுபாடுகள்:math.atan(),math.atan2()

பை (3.1415926..):math.pi

பை கணித தொகுதியில் மாறிலியாக வழங்கப்படுகிறது. இது பின்வருமாறு வெளிப்படுத்தப்படுகிறது.
math.pi

import math

print(math.pi)
# 3.141592653589793

கோண மாற்றம் (ரேடியன்கள், டிகிரி):math.degrees(),math.radians()

கணிதத் தொகுதியில் உள்ள முக்கோணவியல் மற்றும் தலைகீழ் முக்கோணவியல் செயல்பாடுகள் ரேடியனை கோணத்தின் அலகாகப் பயன்படுத்துகின்றன.

ரேடியன்கள் (ஆர்க் டிகிரி முறை) மற்றும் டிகிரி (டிகிரி முறை) ஆகியவற்றுக்கு இடையே மாற்ற, math.degrees() மற்றும் math.radians() ஐப் பயன்படுத்தவும்.

Math.degrees() என்பது ரேடியனில் இருந்து டிகிரிக்கும், math.radians() என்பது டிகிரியிலிருந்து ரேடியன்களுக்கும் மாறுகிறது.

print(math.degrees(math.pi))
# 180.0

print(math.radians(180))
# 3.141592653589793

சைன், இன்வெர்ஸ் சைன்:math.sin(),math.asin()

சைன் (sin) ஐக் கண்டுபிடிப்பதற்கான செயல்பாடு math.sin() மற்றும் தலைகீழ் சைனை (arcsin) கண்டுபிடிக்கும் செயல்பாடு math.asin() ஆகும்.

டிகிரிகளை ரேடியன்களாக மாற்ற math.radians() ஐப் பயன்படுத்தி 30 டிகிரியின் சைனைக் கண்டறிவதற்கான உதாரணம் இங்கே உள்ளது.

sin30 = math.sin(math.radians(30))
print(sin30)
# 0.49999999999999994

30 டிகிரியின் சைன் 0.5 ஆகும், ஆனால் ஒரு பிழை உள்ளது, ஏனெனில் pi, ஒரு விகிதாசார எண்ணை துல்லியமாக கணக்கிட முடியாது.

நீங்கள் சரியான எண்ணிக்கையிலான இலக்கங்களைச் சுற்றிட விரும்பினால், சுற்று() செயல்பாடு அல்லது வடிவம்() முறை அல்லது வடிவம்() செயல்பாட்டைப் பயன்படுத்தவும்.

round() இன் திரும்ப மதிப்பு ஒரு எண் (int அல்லது float), ஆனால் format() இன் திரும்ப மதிப்பு ஒரு சரம் என்பதை நினைவில் கொள்ளவும். அடுத்தடுத்த கணக்கீடுகளுக்கு இதைப் பயன்படுத்த விரும்பினால், சுற்று() ஐப் பயன்படுத்தவும்.

print(round(sin30, 3))
print(type(round(sin30, 3)))
# 0.5
# <class 'float'>

print('{:.3}'.format(sin30))
print(type('{:.3}'.format(sin30)))
# 0.5
# <class 'str'>

print(format(sin30, '.3'))
print(type(format(sin30, '.3')))
# 0.5
# <class 'str'>

சுற்று() சார்பு அதன் இரண்டாவது வாதமாக தசம இடங்களின் எண்ணிக்கையைக் குறிப்பிடுகிறது. இது கண்டிப்பாக ரவுண்டிங் இல்லை என்பதை நினைவில் கொள்ளவும். விவரங்களுக்கு பின்வரும் கட்டுரையைப் பார்க்கவும்.

வடிவமைப்பு() முறை மற்றும் வடிவம்() செயல்பாடு வடிவமைப்பு விவரக்குறிப்பு சரத்தில் உள்ள தசம இடங்களின் எண்ணிக்கையைக் குறிப்பிடுகிறது. விவரங்களுக்கு பின்வரும் கட்டுரையைப் பார்க்கவும்.

நீங்கள் ஒப்பிட விரும்பினால், நீங்கள் math.isclose() ஐப் பயன்படுத்தலாம்.

print(math.isclose(sin30, 0.5))
# True

இதேபோல், 0.5 இன் தலைகீழ் சைனைக் கண்டறிவதற்கான உதாரணம் இங்கே உள்ளது. math.asin() ரேடியன்களை வழங்குகிறது, அவை math.degrees() உடன் டிகிரிகளாக மாற்றப்படுகின்றன.

asin05 = math.degrees(math.asin(0.5))
print(asin05)
# 29.999999999999996

print(round(asin05, 3))
# 30.0

கொசைன், தலைகீழ் கொசைன்:math.cos(),math.acos()

cosine (cos) ஐக் கண்டுபிடிப்பதற்கான செயல்பாடு math.cos(), மற்றும் தலைகீழ் கோசைன் (arc cosine, arccos) கண்டுபிடிக்கும் செயல்பாடு math.acos() ஆகும்.

60 டிகிரி கொசைன் மற்றும் 0.5 இன் தலைகீழ் கோசைனைக் கண்டறிவதற்கான உதாரணம் இங்கே.

print(math.cos(math.radians(60)))
# 0.5000000000000001

print(math.degrees(math.acos(0.5)))
# 59.99999999999999

நீங்கள் பொருத்தமான இலக்கத்திற்குச் சுழற்ற விரும்பினால், சைனைப் போன்று சுற்று() அல்லது வடிவத்தை() பயன்படுத்தலாம்.

தொடுகோடு, தலைகீழ் தொடுகோடு:math.tan(),math.atan(),math.atan2()

தொடுகோட்டை (டான்) கண்டுபிடிப்பதற்கான செயல்பாடு math.tan(), மற்றும் தலைகீழ் தொடுகோடு (arctan) கண்டுபிடிக்கும் செயல்பாடு math.atan() அல்லது math.atan2() ஆகும்.
Math.atan2() பின்னர் விவரிக்கப்பட்டுள்ளது.

45 டிகிரியின் தொடுகோடு மற்றும் 1 டிகிரியின் தலைகீழ் தொடுகோடு கண்டறிவதற்கான உதாரணம் கீழே காட்டப்பட்டுள்ளது.

print(math.tan(math.radians(45)))
# 0.9999999999999999

print(math.degrees(math.atan(1)))
# 45.0

math.atan() மற்றும் math.atan2() இடையே உள்ள வேறுபாடு

math.atan() மற்றும் math.atan2() ஆகிய இரண்டும் தலைகீழ் தொடுகோடு திரும்பும் செயல்பாடுகள், ஆனால் அவை வாதங்களின் எண்ணிக்கை மற்றும் திரும்பும் மதிப்புகளின் வரம்பில் வேறுபடுகின்றன.

math.atan(x) க்கு ஒரு வாதம் உள்ளது மற்றும் ரேடியன்களில் arctan(x) ஐ வழங்குகிறது. திரும்ப மதிப்பு -pi \ 2 மற்றும் pi \ 2 (-90 முதல் 90 டிகிரி வரை) இடையே இருக்கும்.

print(math.degrees(math.atan(0)))
# 0.0

print(math.degrees(math.atan(1)))
# 45.0

print(math.degrees(math.atan(-1)))
# -45.0

print(math.degrees(math.atan(math.inf)))
# 90.0

print(math.degrees(math.atan(-math.inf)))
# -90.0

மேலே உள்ள எடுத்துக்காட்டில், math.inf என்பது முடிவிலியைக் குறிக்கிறது.

math.atan2(y, x) இரண்டு வாதங்களைக் கொண்டுள்ளது மற்றும் ரேடியன்களில் arctan(y \ x) ஐ வழங்குகிறது. இந்த கோணம் என்பது துருவ ஒருங்கிணைப்புத் தளத்தில் உள்ள x அச்சின் நேர் திசையுடன் தோற்றத்திலிருந்து ஆயத்தொலைவுகளுக்கு (x, y) திசையன் உருவாக்கும் கோணம் (சரிவு) ஆகும், மேலும் திரும்பிய மதிப்பு -pi மற்றும் pi (-180) இடையே இருக்கும். 180 டிகிரி வரை).

இரண்டாவது மற்றும் மூன்றாவது நாற்கரங்களில் உள்ள கோணங்களையும் சரியாகப் பெற முடியும் என்பதால், துருவ ஒருங்கிணைப்புத் தளத்தைக் கருத்தில் கொள்ளும்போது math.atan() ஐ விட math.atan2() மிகவும் பொருத்தமானது.

வாதங்களின் வரிசை y, x, x, y அல்ல என்பதை நினைவில் கொள்ளவும்.

print(math.degrees(math.atan2(0, 1)))
# 0.0

print(math.degrees(math.atan2(1, 1)))
# 45.0

print(math.degrees(math.atan2(1, 0)))
# 90.0

print(math.degrees(math.atan2(1, -1)))
# 135.0

print(math.degrees(math.atan2(0, -1)))
# 180.0

print(math.degrees(math.atan2(-1, -1)))
# -135.0

print(math.degrees(math.atan2(-1, 0)))
# -90.0

print(math.degrees(math.atan2(-1, 1)))
# -45.0

மேலே உள்ள எடுத்துக்காட்டில், x அச்சின் எதிர்மறை திசை (y பூஜ்ஜியம் மற்றும் x எதிர்மறையானது) pi (180 டிகிரி), ஆனால் y எதிர்மறை பூஜ்ஜியமாக இருக்கும்போது, ​​அது -pi (-180 டிகிரி) ஆகும். நீங்கள் குறியை கண்டிப்பாக கையாள விரும்பினால் கவனமாக இருங்கள்.

print(math.degrees(math.atan2(-0.0, -1)))
# -180.0

எதிர்மறை பூஜ்ஜியங்கள் பின்வரும் செயல்பாடுகளின் விளைவாகும்

print(-1 / math.inf)
# -0.0

print(-1.0 * 0.0)
# -0.0

முழு எண்கள் எதிர்மறை பூஜ்ஜியங்களாக கருதப்படுவதில்லை.

print(-0.0)
# -0.0

print(-0)
# 0

x மற்றும் y இரண்டும் பூஜ்ஜியமாக இருந்தாலும் கூட, முடிவு குறியைப் பொறுத்தது.

print(math.degrees(math.atan2(0.0, 0.0)))
# 0.0

print(math.degrees(math.atan2(-0.0, 0.0)))
# -0.0

print(math.degrees(math.atan2(-0.0, -0.0)))
# -180.0

print(math.degrees(math.atan2(0.0, -0.0)))
# 180.0

math.atan2() அத்துடன் math.sin(), math.asin(), math.tan(), மற்றும் math.atan() போன்ற எதிர்மறை பூஜ்ஜியங்களைப் பொறுத்து முடிவின் அடையாளம் மாறுவதற்கான பிற எடுத்துக்காட்டுகள் உள்ளன. .

print(math.sin(0.0))
# 0.0

print(math.sin(-0.0))
# -0.0

print(math.asin(0.0))
# 0.0

print(math.asin(-0.0))
# -0.0

print(math.tan(0.0))
# 0.0

print(math.tan(-0.0))
# -0.0

print(math.atan(0.0))
# 0.0

print(math.atan(-0.0))
# -0.0

print(math.atan2(0.0, 1.0))
# 0.0

print(math.atan2(-0.0, 1.0))
# -0.0

இதுவரை எடுத்துக்காட்டுகள் CPython இல் நிரலை இயக்குவதன் முடிவுகள் என்பதை நினைவில் கொள்க. மற்ற செயலாக்கங்கள் அல்லது சூழல்கள் எதிர்மறை பூஜ்ஜியங்களை வித்தியாசமாக கையாளலாம் என்பதை நினைவில் கொள்ளவும்.

Copied title and URL