🔹 1. فكرة المشروع
سنقوم بإنشاء آلة حاسبة بسيطة تتيح للمستخدم إجراء العمليات الحسابية الأساسية مثل:
✅ الجمع (+
)
✅ الطرح (-
)
✅ الضرب (*
)
✅ القسمة (/
)
🔹 2. إنشاء دالة لتنفيذ العمليات الحسابية
def calculator():
print("🔢 مرحبًا بك في الآلة الحاسبة!")
num1 = float(input("أدخل الرقم الأول: "))
operator = input("أدخل العملية (+, -, *, /): ")
num2 = float(input("أدخل الرقم الثاني: "))
if operator == "+":
result = num1 + num2
elif operator == "-":
result = num1 - num2
elif operator == "*":
result = num1 * num2
elif operator == "/":
if num2 == 0:
result = "خطأ: لا يمكن القسمة على صفر!"
else:
result = num1 / num2
else:
result = "خطأ: العملية غير صحيحة!"
print("🔹 النتيجة:", result)
# تشغيل الآلة الحاسبة
calculator()
✅ يطلب البرنامج من المستخدم إدخال رقمين واختيار العملية الحسابية.
✅ يتحقق من صحة العملية المدخلة ويتعامل مع خطأ القسمة على صفر.
✅ يعرض النتيجة النهائية للمستخدم.
🔹 3. تحسين المشروع – إضافة تكرار العملية
يمكننا تحسين الآلة الحاسبة بحيث تسمح للمستخدم بإجراء عمليات متعددة دون الحاجة إلى إعادة تشغيل البرنامج:
def calculator():
while True:
print("\n🔢 مرحبًا بك في الآلة الحاسبة!")
num1 = float(input("أدخل الرقم الأول: "))
operator = input("أدخل العملية (+, -, *, /) أو 'exit' للخروج: ")
if operator.lower() == "exit":
print("👋 تم إنهاء البرنامج. إلى اللقاء!")
break
num2 = float(input("أدخل الرقم الثاني: "))
if operator == "+":
result = num1 + num2
elif operator == "-":
result = num1 - num2
elif operator == "*":
result = num1 * num2
elif operator == "/":
if num2 == 0:
result = "خطأ: لا يمكن القسمة على صفر!"
else:
result = num1 / num2
else:
result = "خطأ: العملية غير صحيحة!"
print("🔹 النتيجة:", result)
# تشغيل الآلة الحاسبة
calculator()
✅ يستمر البرنامج في العمل حتى يكتب المستخدم "exit"
لإنهائه.
✅ يتيح للمستخدم إجراء عمليات حسابية متعددة دون الحاجة إلى إعادة تشغيل البرنامج.
🔹 4. تمرين عملي
🔹 حاول إضافة عمليات حسابية جديدة مثل الأس (**
) أو باقي القسمة (%
). 🔹 أضف ميزة تتيح للمستخدم اختيار عدد العمليات التي يريد تنفيذها قبل إنهاء البرنامج.
🎯 ماذا بعد؟ في الدرس القادم، سنتعلم مشروع تحليل بيانات بسيط باستخدام pandas
و matplotlib
!😊🚀