> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kayanos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# دوال الرياضيات

> جميع الدوال الرقمية المسجلة، مع التواقيع والأمثلة للحقول المحسوبة والقواعد.

## متى تستخدم هذه الدوال؟

استخدم هذه الدوال لجمع القيم ومقارنة الحدود وتقريب النتائج وحساب النسب. وهي متاحة كدوال وكتحويلات.

## طريقة الكتابة

استخدم الدالة بصيغة `round($.requested_amount, 2)`. لا تكون كل دالة متاحة في كل مكان: دوال التحقق ودوال النموذج ودوال قالب المستند لها عقود سياق مختلفة. لا تفترض أن اقتراح المحرر يعني أن الدالة مدعومة وقت التشغيل.

## مرجع الدوال الكامل

### `abs`

تعيد القيمة المطلقة للعدد، أي قيمته دون الإشارة السالبة.

**التوقيع:** `abs(x)`

**مثال:**

```txt theme={null}
abs(-5) // 5
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | abs(...)`.

### `acos`

تعيد جيب التمام العكسي للقيمة بوحدة الراديان.

**التوقيع:** `acos(x)`

**مثال:**

```txt theme={null}
acos(1) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | acos(...)`.

### `asin`

تعيد الجيب العكسي للقيمة بوحدة الراديان.

**التوقيع:** `asin(x)`

**مثال:**

```txt theme={null}
asin(0) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | asin(...)`.

### `atan`

تعيد الظل العكسي للقيمة بوحدة الراديان.

**التوقيع:** `atan(x)`

**مثال:**

```txt theme={null}
atan(0) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | atan(...)`.

### `atan2`

تعيد الزاوية من إحداثيي `y` و`x` بوحدة الراديان مع المحافظة على الربع الصحيح.

**التوقيع:** `atan2(y, x)`

**مثال:**

```txt theme={null}
atan2(1, 1) // Math.PI / 4
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | atan2(...)`.

### `avg`

تعيد المتوسط الحسابي للقيم المعطاة.

**التوقيع:** `avg(...values)`

**مثال:**

```txt theme={null}
avg(1, 2, 3) // 2
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | avg(...)`.

### `cbrt`

تعيد الجذر التكعيبي للعدد.

**التوقيع:** `cbrt(x)`

**مثال:**

```txt theme={null}
cbrt(8) // 2
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | cbrt(...)`.

### `ceil`

تقرب العدد إلى الأعلى، ويمكن ضبط دقة التقريب.

**التوقيع:** `ceil(x, precision?)`

**مثال:**

```txt theme={null}
ceil(4.21, 1) // 4.3
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | ceil(...)`.

### `clamp`

تحصر القيمة بين حد أدنى وحد أقصى شاملين.

**التوقيع:** `clamp(value, min, max)`

**مثال:**

```txt theme={null}
clamp(5, 0, 10) // 5
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | clamp(...)`.

### `cos`

تعيد جيب تمام الزاوية بالراديان.

**التوقيع:** `cos(x)`

**مثال:**

```txt theme={null}
cos(0) // 1
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | cos(...)`.

### `exp`

تعيد قيمة العدد الطبيعي `e` مرفوعاً إلى الأس المعطى.

**التوقيع:** `exp(x)`

**مثال:**

```txt theme={null}
exp(0) // 1
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | exp(...)`.

### `factorial`

تعيد مضروب عدد صحيح غير سالب.

**التوقيع:** `factorial(n)`

**مثال:**

```txt theme={null}
factorial(5) // 120
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | factorial(...)`.

### `floor`

تقرب العدد إلى الأسفل، ويمكن ضبط دقة التقريب.

**التوقيع:** `floor(x, precision?)`

**مثال:**

```txt theme={null}
floor(4.76, 1) // 4.7
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | floor(...)`.

### `gcd`

تعيد أكبر قاسم مشترك لعددين.

**التوقيع:** `gcd(a, b)`

**مثال:**

```txt theme={null}
gcd(48, 18) // 6
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | gcd(...)`.

### `isPrime`

تتحقق من كون عدد صحيح أكبر من واحد عدداً أولياً.

**التوقيع:** `isPrime(n)`

**مثال:**

```txt theme={null}
isPrime(5) // true
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | isPrime(...)`.

### `lcm`

تعيد أصغر مضاعف مشترك لعددين.

**التوقيع:** `lcm(a, b)`

**مثال:**

```txt theme={null}
lcm(4, 6) // 12
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | lcm(...)`.

### `lerp`

تعيد قيمة بالاستيفاء الخطي بين البداية والنهاية وفق النسبة المعطاة.

**التوقيع:** `lerp(start, end, t)`

**مثال:**

```txt theme={null}
lerp(0, 10, 0.5) // 5
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | lerp(...)`.

### `log`

تعيد اللوغاريتم الطبيعي للعدد.

**التوقيع:** `log(x)`

**مثال:**

```txt theme={null}
log(1) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | log(...)`.

### `log10`

تعيد لوغاريتم العدد للأساس 10.

**التوقيع:** `log10(x)`

**مثال:**

```txt theme={null}
log10(10) // 1
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | log10(...)`.

### `log2`

تعيد لوغاريتم العدد للأساس 2.

**التوقيع:** `log2(x)`

**مثال:**

```txt theme={null}
log2(2) // 1
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | log2(...)`.

### `median`

تعيد الوسيط للقيم الرقمية المعطاة.

**التوقيع:** `median(...values)`

**مثال:**

```txt theme={null}
median(1, 2, 3) // 2
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | median(...)`.

### `mode`

تعيد القيمة الأكثر تكراراً بين القيم المعطاة.

**التوقيع:** `mode(...values)`

**مثال:**

```txt theme={null}
mode(1, 2, 2, 3) // 2
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | mode(...)`.

### `pow`

تعيد الأساس مرفوعاً إلى الأس المعطى.

**التوقيع:** `pow(base, exponent)`

**مثال:**

```txt theme={null}
pow(2, 3) // 8
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | pow(...)`.

### `random`

تعيد عدداً عشوائياً شبه عشوائي بين 0 و1. لا تستخدمه في قرار محفوظ أو رقم مرجعي يحتاج إلى ثبات.

**التوقيع:** `random()`

**مثال:**

```txt theme={null}
random() // 0.123456789
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | random(...)`.

### `round`

تقرب العدد إلى أقرب قيمة، ويمكن ضبط عدد المنازل العشرية.

**التوقيع:** `round(x, precision?)`

**مثال:**

```txt theme={null}
round(4.74, 1) // 4.7
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | round(...)`.

### `roundTo`

تقرب القيمة إلى عدد محدد من المنازل العشرية.

**التوقيع:** `roundTo(value, decimals)`

**مثال:**

```txt theme={null}
roundTo(3.14159, 2) // 3.14
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | roundTo(...)`.

### `sign`

تعيد `-1` أو `0` أو `1` بحسب إشارة العدد.

**التوقيع:** `sign(x)`

**مثال:**

```txt theme={null}
sign(5) // 1
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | sign(...)`.

### `sin`

تعيد جيب الزاوية بالراديان.

**التوقيع:** `sin(x)`

**مثال:**

```txt theme={null}
sin(0) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | sin(...)`.

### `sqrt`

تعيد الجذر التربيعي للعدد غير السالب.

**التوقيع:** `sqrt(x)`

**مثال:**

```txt theme={null}
sqrt(9) // 3
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | sqrt(...)`.

### `stddev`

تعيد الانحراف المعياري للقيم الرقمية المعطاة.

**التوقيع:** `stddev(...values)`

**مثال:**

```txt theme={null}
stddev(1, 2, 3) // 0.816496580927726
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | stddev(...)`.

### `tan`

تعيد ظل الزاوية بالراديان.

**التوقيع:** `tan(x)`

**مثال:**

```txt theme={null}
tan(0) // 0
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | tan(...)`.

### `toDegrees`

تحول زاوية من الراديان إلى الدرجات.

**التوقيع:** `toDegrees(radians)`

**مثال:**

```txt theme={null}
toDegrees(3.141592653589793) // 180
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | toDegrees(...)`.

### `toRadians`

تحول زاوية من الدرجات إلى الراديان.

**التوقيع:** `toRadians(degrees)`

**مثال:**

```txt theme={null}
toRadians(180) // 3.141592653589793
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | toRadians(...)`.

### `trunc`

تحذف الجزء العشري من العدد دون تقريب.

**التوقيع:** `trunc(x)`

**مثال:**

```txt theme={null}
trunc(4.9) // 4
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | trunc(...)`.

### `variance`

تعيد تباين القيم الرقمية المعطاة.

**التوقيع:** `variance(...values)`

**مثال:**

```txt theme={null}
variance(1, 2, 3) // 0.6666666666666666
```

**ملاحظة:** يمكن أيضاً كتابتها كتحويل عندما تكون القيمة الأولى هي المدخل: `value | variance(...)`.

## قائمة تحقق قبل النشر

* ابدأ بقيمة معروفة وتحقق من النتيجة المتوقعة.
* تعامل صراحةً مع القيم الفارغة وnull والقوائم الفارغة.
* لا تضع أسراراً أو رموز وصول أو بيانات شخصية حساسة داخل تعبير.
* راجع [سياقات وتوافر التعبيرات](/ar/reference/expressions/contexts) قبل نسخ تعبير بين ميزتين.

![دوال الرياضيات في KayanOS](https://kayanos.app/docs-images/ar/reference/expressions-helpers-math.png)
