تقوم دالة جيب التمام العكسي، المعروفة أيضًا باسم قوس جيب التمام، بحساب الزاوية التي يكون جيب تمامها رقمًا معينًا. يوفر بايثون عدة طرق فعالة لحساب جيب التمام العكسي، ولكل منها نقاط قوتها. تستعرض هذه المقالة ثلاثة أساليب شائعة: استخدام الوحدة النمطية math
المدمجة، والاستفادة من الوحدة النمطية math
مع تحويل الدرجات، واستخدام مكتبة NumPy لمعالجة المصفوفات.
جدول المحتويات
- حساب جيب التمام العكسي باستخدام
math.acos()
- حساب جيب التمام العكسي بالدرجات
- حساب جيب التمام العكسي باستخدام NumPy
حساب جيب التمام العكسي باستخدام math.acos()
أبسط طريقة تستخدم دالة math.acos()
. تُرجع هذه الدالة قوس جيب التمام بالراديان.
import math
value = 0.5
inverse_cosine_radians = math.acos(value)
print(f"جيب التمام العكسي لـ {value} بالراديان هو: {inverse_cosine_radians}")
تذكر أن المدخل لـ math.acos()
يجب أن يكون بين -1 و 1 (ضمنيًا). ستؤدي القيم خارج هذا النطاق إلى ظهور خطأ ValueError
.
حساب جيب التمام العكسي بالدرجات
للحصول على نتائج بالدرجات، اجمع بين math.acos()
و math.degrees()
.
import math
value = 0.5
inverse_cosine_radians = math.acos(value)
inverse_cosine_degrees = math.degrees(inverse_cosine_radians)
print(f"جيب التمام العكسي لـ {value} بالدرجات هو: {inverse_cosine_degrees}")
يُحسب هذا الأسلوب الراديان أولاً ثم يحوله إلى درجات.
حساب جيب التمام العكسي باستخدام NumPy
توفر NumPy دالة arccos()
(np.arccos()
)، وهي مثالية لعمليات المصفوفات. إنها أسرع بكثير من التكرار عبر القوائم وتطبيق math.acos()
بشكل فردي.
import numpy as np
values = np.array([0.5, 0.0, -0.5]) # مصفوفة مثال
inverse_cosine_radians = np.arccos(values)
inverse_cosine_degrees = np.degrees(inverse_cosine_radians)
print(f"جيب التمام العكسي لـ {values} بالراديان هو: {inverse_cosine_radians}")
print(f"جيب التمام العكسي لـ {values} بالدرجات هو: {inverse_cosine_degrees}")
تتعامل مُعالجة المتجهات في NumPy مع مدخلات متعددة بكفاءة. يجب أن تكون قيم المدخلات لا تزال ضمن النطاق [-1، 1]؛ خلاف ذلك، سيتم إثارة خطأ ValueError
.
قدمت هذه المقالة ثلاث طرق لحساب جيب التمام العكسي في بايثون. اختر الطريقة التي تناسب احتياجاتك بشكل أفضل. بالنسبة للقيم المفردة، تكون math.acos()
كافية. بالنسبة للدرجات، اجمعها مع math.degrees()
. لمعالجة المصفوفات، فإن np.arccos()
في NumPy هو الخيار الأكثر كفاءة. تعامل دائمًا مع استثناءات ValueError
المحتملة للمدخلات خارج النطاق الصحيح.