Skip to content

Functions

Functions are reusable blocks of code defined with the دالة keyword.

Basic Function

sad
دالة greet(name)
  اطبع_سطر("Hello, " + name + "!")
نهاية

greet("World")   # Hello, World!

Return Values

Use ارجع to return a value:

sad
دالة add(a, b)
  ارجع a + b
نهاية

متغير result = add(3, 5)
اطبع_سطر(result)   # 8

Default Parameters

sad
دالة greet(name, greeting = "Hello")
  اطبع_سطر(greeting + ", " + name + "!")
نهاية

greet("Ali")              # Hello, Ali!
greet("Ali", "Welcome")   # Welcome, Ali!

Multiple Return Values

Functions can return arrays for multiple values:

sad
دالة min_max(arr)
  متغير min = arr[0]
  متغير max = arr[0]
  لكل val في arr
    إذا (val < min)
      min = val
    نهاية
    إذا (val > max)
      max = val
    نهاية
  نهاية
  ارجع [min, max]
نهاية

متغير result = min_max([3, 1, 7, 2, 9])
اطبع_سطر("Min: " + result[0] + ", Max: " + result[1])

Recursive Functions

sad
دالة factorial(n)
  إذا (n <= 1)
    ارجع 1
  نهاية
  ارجع n * factorial(n - 1)
نهاية

اطبع_سطر("5! = " + factorial(5))   # 5! = 120

Lambda Functions

Anonymous functions using لامدا:

sad
متغير double = لامدا(x) ارجع x * 2 نهاية

اطبع_سطر(double(5))   # 10

Summary

KeywordPurposeExample
دالةDefine functionدالة name(params)
ارجعReturn valueارجع value
لامداAnonymous functionلامدا(x) ارجع x نهاية
نهايةEnd function blockRequired

Released under MIT License