البرمجة والذكاء الاصطناعي · الصف الأول الثانوي · الترم الأول
البرمجة التطبيقية (2): الدوال في Python (الوسيطات وقيمة الإرجاع)
مفهوم الدالة في Python، وتعريفها بالكلمة def، والوسيطة (argument) وقيمة الإرجاع (return value) واستدعاء الدالة، ودوال بوسيطة واحدة ووسيطتين مثل مساحة المثلث والدائرة وتحويل درجات الحرارة، والدوال المدمجة والدوال التي يعرّفها المستخدم.
آخر تحديث: · كيف نراجع المحتوى
مقدمة
- الوحدة الثانية عشرة: البرمجة — الموضوع 12-5
إذا احتجت إلى حساب مساحة مثلث عشر مرات في برنامجك، فهل تكتب المعادلة عشر مرات؟ الأفضل أن تكتبها مرة واحدة داخل دالة تسميها area، ثم تستدعيها كلما احتجت إليها وتعطيها القاعدة والارتفاع فتعيد إليك المساحة.
أهداف التعلم
- أن تعرّف الدالة والوسيطة وقيمة الإرجاع.
- أن تعرّف دالة في Python باستخدام
defوreturn. - أن تستدعي دالة وتمرر لها وسيطة أو أكثر وتحدد ناتجها.
- أن تفرق بين الدوال المدمجة والدوال التي يعرّفها المستخدم.
شرح الدرس
مفهوم الدالة
الدالة (Function): مجموعة من العمليات يقوم بها الكمبيوتر وتوصف بأنها وحدة واحدة متماسكة لها اسم.
- الوسيطة (Argument): المتغير الذي يستقبل قيمة داخل الدالة عند استدعائها.
- قيمة الإرجاع (Return value): القيمة الناتجة عن الدالة، ونمررها إلى من استدعاها بالعبارة
return. - استدعاء الدالة (Function call): كتابة اسم الدالة مع القيم بين القوسين لتشغيلها؛ فالدالة لا تعمل بمجرد تعريفها.
طريقة التعريف
def function_name(argument1, argument2):
process
return return_value
- الكلمة
defتبدأ التعريف، ثم اسم الدالة، ثم الوسيطات بين قوسين، ثم النقطتان:. - أوامر الدالة تُكتب بإزاحة.
الدوال المدمجة ودوال المستخدم
- الدوال المدمجة (Built-in functions): جاهزة في Python ونستخدمها دون تعريف، مثل
print(). - الدوال التي يعرّفها المستخدم (User-defined functions): نكتبها بأنفسنا باستخدام
def.
أمثلة وتطبيقات
مثال 1 (دالة بوسيطة واحدة: ):
def double(x):
y = 2 * x
return y
print(double(5))
عند الاستدعاء double(5) تستقبل الوسيطة x القيمة 5، فتحسب الدالة y = 10 وتُرجعها. ناتج التنفيذ: 10.
مثال 2 (دالة بوسيطتين: مساحة المثلث):
def area(base, height):
S = base * height / 2
return S
print(area(10, 5))
print(area(6, 7))
في الاستدعاء الأول: base = 10 وheight = 5، فالمساحة . ناتج التنفيذ: 25.0 ثم 21.0 (القسمة / تعطي عددًا عشريًّا).
مثال 3 (مساحة الدائرة):
def circle(r):
S = r * r * 3.14
return S
a = circle(5)
print(a)
ناتج التنفيذ: 78.5؛ لأن .
مثال 4 (تحويل درجة الحرارة من سلسيوس إلى فهرنهايت):
def celsius_to_fahrenheit(celsius):
fahrenheit = (celsius * 9 / 5) + 32
return fahrenheit
print(celsius_to_fahrenheit(25))
ناتج التنفيذ: 77.0؛ لأن .
مثال 5 (دالة بداخلها تفرع):
def judge(score):
if score >= 80:
print('Pass')
else:
print('Fail')
judge(40)
ناتج التنفيذ: Fail. هذه الدالة تعرض النتيجة مباشرة بـ print بدلًا من إرجاعها بـ return.
ملاحظات مهمة
- ترتيب القيم عند الاستدعاء يطابق ترتيب الوسيطات في التعريف: في
area(10, 5)تذهب 10 إلىbaseو5 إلىheight. - عند الوصول إلى
returnتنتهي الدالة فورًا وتُرجع القيمة؛ فأي أمر بعده داخل الدالة لا يُنفذ. - يجب تعريف الدالة قبل استدعائها في البرنامج.
- الفرق بين
returnوprint: الأولى تعيد القيمة لنستخدمها في حساب آخر أو نخزنها في متغير، والثانية تعرضها على الشاشة فقط.
المفاهيم الأساسية
- الدالة: عمليات مجمعة في وحدة لها اسم.
def name(arguments):لتعريف الدالة، وreturnلإرجاع القيمة.- الوسيطة تستقبل القيمة، وقيمة الإرجاع تعود إلى المستدعي.
- الدوال المدمجة مثل
print()، ودوال المستخدم نعرّفها بـdef.
ملخص الدرس
الدالة تجمع عمليات في وحدة واحدة لها اسم، فنكتبها مرة ونستخدمها مرات. نعرّفها بالكلمة def، ونمرر لها القيم عبر الوسيطات، وتعيد النتيجة بالعبارة return. ولا تعمل الدالة إلا عند استدعائها بكتابة اسمها والقيم بين قوسين. وفي Python دوال مدمجة جاهزة مثل print، ودوال يعرّفها المستخدم بنفسه.
أسئلة للتدريب
- عرّف: الدالة، الوسيطة، قيمة الإرجاع.
- أكمل:
____ circle(r):ثمS = r * r * 3.14ثم____ S. - ما ناتج
print(area(8, 3))باستخدام دالة مساحة المثلث في الدرس؟ - اكتب دالة اسمها
squareتستقبل عددًا وتُرجع مربعه، ثم استدعها بالقيمة 7. - ما ناتج
celsius_to_fahrenheit(100)؟ وما ناتجcelsius_to_fahrenheit(0)؟