1 / 12
الوحدة الأولى: المعالجة الرقمية

الدوال (Functions)

الدرس الرابع — الصف العاشر

اليوم بنتعلم أذكى حركة يسويها المبرمج…
بدل ما يكرر نفس الشغل ١٠٠ مرة، يكتبه مرة وحدة وخلاص!

أ. حسين الصفار

مدرسة دعيج السلمان الصباح الثانوية — مارس ٢٠٢٦

مراجعة سريعة

وين نخزن البيانات في بايثون؟

[ ]

القوائم

بيانات مرتبة وتقدر تعدلها

names = ["علي", "فهد"]
( )

الصفوف

بيانات ثابتة ما تتغير

colors = ("Red", "Blue")
{ }

القواميس

مفتاح وقيمة (مثل القاموس الحقيقي)

student = {"Age": 15}

كل اللي فوق كان لتخزين البيانات
اليوم بنتعلم كيف نخزن الأوامر والأفعال!

المشكلة

ليش نحتاج شي جديد؟

تخيل تبرمج لعبة فيفا ⚽ — كل ما لاعب يسجل هدف:

# Goal 1
print("⚽ GOAL!!")
print("🔊 Crowd cheering")
print("📊 Score: +1")

# Goal 2
print("⚽ GOAL!!")
print("🔊 Crowd cheering")
print("📊 Score: +1")

# Goal 3... and again 😫
🤦‍♂️

بنكتب هالكود ١٠٠ مرة؟!

تكرار الكود = ضياع وقت
تكرار الكود = أخطاء أكثر
تكرار الكود = تعديل صعب

لازم يكون فيه حل أذكى…

🍔 كارثة المطعم

أنت المبرمج في مطعم — جرب تطبع فاتورة لكل زبون!

الزبائن: 0
# بانتظار الزبائن...

كيف نكتب الدالة؟

الدالة = مجموعة أوامر نعطيها اسم واحد، ونستدعيها وقت ما نبي

قاعدة بايثون
def score(): print("⚽ GOAL!!") print("📊 +1")
def
كلمة البداية
الاسم
نختاره يعبّر عن الوظيفة
( )
أقواس (للمدخلات)
:
نقطتين = "ابدأ"

📏 تحدي المسافة البادئة

بايثون تعتمد على المسافات! حرّك سطر الطباعة لداخل الدالة

def say_hi():
print("Hello!") ⬅️ انقر للتحريك

🧩 تحدي تركيب الدالة

اسحب القطع الصحيحة وحطها في مكانها!

??? say_hello()?
print("Hello!")
func
def
:
;

🔀 رتّب أسطر الكود

اسحب الأسطر ورتبها بالترتيب الصحيح عشان الدالة تشتغل!

التعريف مقابل الاستدعاء

بنينا الآلة… كيف نشغلها؟

🏭

١. التعريف (صناعة الآلة)

نكتب الدالة ونصنعها — بس ما تشتغل لحالها

def alarm():
print("⚠️ Warning!")

← "صنعنا جرس إنذار"

🔘

٢. الاستدعاء (تشغيل الآلة)

نناديها باسمها = تبدأ تشتغل فوراً


alarm()

← "ضغطنا الزر!"

قاعدة: التعريف يكون أول — والاستدعاء بعده

🧃 آلة البيع (المدخلات / Parameters)

الدالة مو بس تطبع — تقدر تاخذ مدخلات وتعطيك مخرجات!

آلة المشروبات
🥤

المدخل (Parameter): هو المعلومة اللي تعطيها للدالة عشان تشتغل.
مثل ما آلة البيع تحتاج عملة عشان تعطيك مشروب…
الدالة تحتاج مدخل عشان تعطيك مخرج (نتيجة).

# Function with parameter
def buy_drink(drink_name):
print("Order: " + drink_name)
print("Here you go! 🥤")

# Calling with input
buy_drink("Pepsi")
🪙
المدخل
Parameter
الدالة
buy_drink()
🥤
المخرج
Output

📱 تطبيق واقعي: إعدادات الجوال

مبرمج النظام كتب دالة لتغيير اللغة — اضغط عشان تستدعيها!

الإعدادات

ايش يصير ورا الكواليس (بايثون):

# Hidden system code
def change_language():
print("Language changed!")

change_language() ← تم الاستدعاء!
🏆

أحسنتوا!

الحين تعرفون سر الدوال — اكتبها مرة واستدعيها متى ما تبي!

📝 وقت التقييم

انتقلوا للرابط المرسل في الشات
وجاوبوا على الأسئلة الثلاثة

تابع إلى الجزء ٢ →

أ. حسين الصفار — مدرسة دعيج السلمان الصباح الثانوية  |  مارس ٢٠٢٦