الرياضيات#
مقدمة#
توفر مكتبة C++ القياسية وظائف رياضية أساسية من خلال <cmath>، وهي مدعومة في VEXcode IQ. تتيح لك هذه الوظائف إجراء عمليات رياضية شائعة مثل حساب المثلثات والتقريب والأسس وغيرها.
استخدمها لحساب المواقع والزوايا والمسافات، أو لإجراء التحويلات بين الدرجات والراديان.
فيما يلي قائمة بالوظائف الرياضية والثوابت والأدوات المساعدة المتاحة:
الوظائف الرياضية الشائعة – الأدوات الرياضية الشائعة.
abs– تُرجع القيمة المطلقة للعدد.fmin– تُرجع أصغر قيمة من قيم الإدخال.fmax– تُرجع أكبر قيمة من قيم الإدخال.pow– يرفع عددًا إلى قوة معينة.
الثوابت – قيم محددة مسبقًا من <cmath>.
علم المثلثات – حساب الزوايا والعلاقات بين الأضلاع.
sin– جيب الزاوية بالراديان.cos– جيب تمام الزاوية بالراديان.tan– ظل الزاوية بالراديان.atan– دالة الظل العكسي لقيمة بالراديان.atan2– ظل الزاوية العكسي لـ y/x بالراديان، مع الأخذ في الاعتبار الربع.asin– Arcsine لقيمة بالراديان.acos– معكوس جيب التمام لقيمة بالراديان.
التقريب والقيمة المطلقة - ضبط الدقة أو الاتجاه.
الأسس واللوغاريتمات – حسابات القوة والجذر واللوغاريتم.
sqrt– تُرجع الجذر التربيعي.exp– يحسب e مرفوعًا للأس x.log– اللوغاريتم الطبيعي (الأساس e).log10– اللوغاريتم ذو الأساس 10.
عمليات الفاصلة العائمة – فحص أو تحليل قيم الفاصلة العائمة.
الدوال الرياضية الشائعة#
abs#
تُعيد القيمة المطلقة للرقم، مع إزالة أي إشارة سالبة.
Available Functions1 — تُرجع القيمة المطلقة لعدد صحيح.
int abs( int x );
Parameters2 — تُرجع القيمة المطلقة لعدد عشري مزدوج.
double abs( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد صحيح أو عدد عشري. |
يُعيد القيمة المطلقة للمدخلات من نفس النوع.
Examples// Display the absolute value of -10
Brain.Screen.print("%d", abs(-10));
// Output: 10
fmin#
يُرجع القيمة الأصغر من بين قيمتين كعدد عشري مزدوج.
Available Functionsdouble fmin( double value1, double value2 );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
القيمة الأولى التي يجب مقارنتها. |
|
|
القيمة الثانية للمقارنة. |
تُرجع قيمة double تمثل أصغر قيمتي الإدخال.
// Display the lower of two values
Brain.Screen.print("%f", fmin(7, 4));
// Output: 4.000000
fmax#
يُرجع القيمة الأعلى من بين قيمتين كقيمة عشرية.
Available Functionsdouble fmax( double value1, double value2 );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
القيمة الأولى التي يجب مقارنتها. |
|
|
القيمة الثانية للمقارنة. |
تُرجع قيمة double تمثل القيمة الأكبر من بين قيمتي الإدخال.
// Display the higher of two values
Brain.Screen.print("%f", fmax(7, 4));
// Output: 7.000000
pow#
يُرجع عددًا مرفوعًا إلى قوة معينة كعدد عشري مزدوج.
Available Functionsdouble pow( double base, double exponent );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
الرقم الأساسي. |
|
|
الأس. |
تُرجع قيمة double تمثل الأساس مرفوعًا إلى قوة الأس.
// Display 2 to the power of 3
Brain.Screen.print("%f", pow(2, 3));
// Output: 8.000000
الثوابت#
الثوابت هي قيم محددة مسبقاً تظل ثابتة طوال فترة المشروع. ويمكن استخدامها في العمليات الحسابية دون الحاجة إلى أي تعريف أو تعيين.
M_PI#
M_PI يعطي الثابت الرياضي π، وهو نسبة محيط الدائرة إلى قطرها.
const double M_PI;
هذا الثابت ليس له معلمات.
Return Valuesتُرجع الدالة الثابت الرياضي π كقيمة عشرية double.
// Calculate the area of a circle with radius 5
double area = M_PI * 5 * 5;
Brain.Screen.print("%f", area);
// Output: 78.539816
M_E#
الثابت الرياضي e (عدد أويلر)، أساس اللوغاريتم الطبيعي.
Available Constantsconst double M_E;
هذا الثابت ليس له معلمات.
Return Valuesتُرجع الدالة الثابت الرياضي e كقيمة عشرية double.
// Calculate e raised to the power of 2
double result = pow(M_E, 2);
Brain.Screen.print("%f", result);
// Output: 7.389056
علم المثلثات#
sin#
يحسب جيب الزاوية بالراديان ويعيد قيمة مزدوجة.
Available Functionsdouble sin( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج يمثل زاوية بالراديان. |
Returns a double representing the sine of the angle.
// Convert 30 degrees to radians
double radians = 30 * M_PI / 180.0;
// Display the sine of 30 degrees
Brain.Screen.print("%f", sin(radians));
// Output: 0.500000
cos#
يحسب جيب تمام الزاوية بالراديان ويعيد قيمة مزدوجة.
Available Functionsdouble cos( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج يمثل زاوية بالراديان. |
تُرجع قيمة double تمثل جيب تمام الزاوية.
// Convert 60 degrees to radians
double radians = 60 * M_PI / 180.0;
// Display the cosine of 60 degrees
Brain.Screen.print("%f", cos(radians));
// Output: 0.500000
tan#
يحسب ظل الزاوية بالراديان ويعيد قيمة مزدوجة.
Available Functionsdouble tan( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج يمثل زاوية بالراديان. |
Returns a double representing the tangent of the angle.
// Convert 45 degrees to radians
double radians = 45 * M_PI / 180.0;
// Compute tangent of 45 degrees
Brain.Screen.print("%f", tan(radians));
// Output: 1.000000
atan#
يحسب الظل العكسي (ظل القوس) لعدد ما ويعيد قيمة مزدوجة تمثل الزاوية بالراديان.
Available Functionsdouble atan( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
قيمة مزدوجة. |
تُرجع قيمة double تمثل ظل الزاوية بالراديان.
// Calculate the arc tangent of 1 in degrees
double degrees = atan(1.0) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 45.000000
atan2#
يحسب القيمة الرئيسية لظل الزاوية العكسي لـ y/x ويعيد قيمة مزدوجة تمثل الزاوية بالراديان.
Available Functionsdouble atan2( double y, double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج يمثل الإحداثي الصادي. |
|
|
عدد مزدوج يمثل الإحداثي السيني. |
تُرجع قيمة double تمثل ظل الزاوية العكسي لـ y/x بالراديان.
// Calculate the inverse tangent of 1/1 in degrees
double degrees = atan2(1.0, 1.0) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 45.000000
asin#
يحسب معكوس الجيب (الجيب العكسي) لعدد ما ويعيد قيمة مزدوجة تمثل الزاوية بالراديان.
Available Functionsdouble asin( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج بين -1 و 1. |
تُرجع قيمة double تمثل دالة الجيب العكسي بالراديان.
// Calculate the arc sine of 0.5 in degrees
double degrees = asin(0.5) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 30.000000
acos#
يحسب معكوس جيب التمام (arc cosine) لعدد ما ويعيد قيمة مزدوجة تمثل الزاوية بالراديان.
Available Functionsdouble acos( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج بين -1 و 1. |
تُرجع قيمة double تمثل جيب التمام العكسي بالراديان.
// Calculate the arc cosine of 0.5 in degrees
double degrees = acos(0.5) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 60.000000
التقريب والقيمة المطلقة#
ceil#
يُرجع رقمًا مقربًا لأعلى كرقم مزدوج.
Available Functionsdouble ceil( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
يجب تقريب الرقم إلى اثنين. |
تُرجع قيمة double مزدوجة تمثل أصغر عدد صحيح أكبر من أو يساوي x.
// Round up 9.7
Brain.Screen.print("%f", ceil(9.7));
// Output: 10.000000
floor#
يُرجع رقمًا مقربًا إلى أقرب عدد صحيح مزدوج.
Available Functionsdouble floor( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
رقم مزدوج يتم تقريبه إلى الأدنى. |
تُرجع قيمة double مزدوجة تمثل أكبر عدد صحيح أقل من أو يساوي x.
// Round down 9.7
Brain.Screen.print("%f", floor(9.7));
// Output: 9.000000
trunc#
يُرجع رقمًا من نوع double، مع ضبط الجزء العشري منه على الصفر.
Available Functionsdouble trunc( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
سيتم اقتطاع النص المزدوج. |
تُرجع قيمة double مع إزالة الجزء العشري.
// Truncate 9.7
Brain.Screen.print("%f", trunc(9.7));
// Output: 9.000000
الأسس واللوغاريتمات#
sqrt#
يُعيد الجذر التربيعي لعدد ما.
Available Functionsdouble sqrt( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مضاعف غير سالب. |
تُرجع قيمة double تمثل الجذر التربيعي لـ x.
// Display the square root of 121
Brain.Screen.print("%f", sqrt(121));
// Output: 11.000000
exp#
يحسب الدالة الأسية لعدد ما.
Available Functionsdouble exp( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
عدد مزدوج لحساب الأس. |
تُرجع قيمة double مرفوعة إلى قوة x.
// Calculate e raised to the power of 1
double result = exp(1);
Brain.Screen.print("%f", result);
// Output: 2.718282
log#
يحسب اللوغاريتم الطبيعي لعدد ما.
Available Functionsdouble log( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
مضاعف إيجابي. |
تُرجع قيمة double تمثل اللوغاريتم الطبيعي لـ x.
// Calculate the natural logarithm (base e) of e
double result = log(M_E);
Brain.Screen.print("%f", result);
// Output: 1.000000
log10#
يحسب اللوغاريتم العشري لعدد ما.
Available Functionsdouble log10( double x );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
مضاعف إيجابي. |
تُرجع قيمة double تمثل اللوغاريتم العشري لـ x.
// Calculate the base-10 logarithm of 1000
double result = log10(1000);
Brain.Screen.print("%f", result);
// Output: 3.000000
عمليات الفاصلة العائمة#
fmod#
يعيد باقي القسمة مع الحفاظ على إشارة المقسوم.
Available Functionsdouble fmod( double x, double y );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
الأرباح الموزعة. |
|
|
المقسوم عليه. |
تُرجع قيمة double تمثل باقي قسمة x/y مع إشارة x.
// Calculate remainder of 10 / -3
// that preserves the sign of 10
double result = fmod(10.0, -3.0);
Brain.Screen.print("%f", result);
// Output: 1.000000
copysign#
تُرجع هذه الدالة رقمًا بقيمة x وإشارة y.
Available Functionsdouble copysign( double x, double y );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
القيمة التي سيتم استخدام مقدارها. |
|
|
القيمة التي سيتم استخدام إشارتها. |
تُرجع قيمة double مع مقدار x وإشارة y.
// Return -10 with the sign of -3 (negative)
double result = copysign(10, -3);
Brain.Screen.print("%f", result);
// Output: -10.000000