البرمجة

تحسين برنامج الالتحاق بالمدرسة: نصائح لتحسين الكود

في بداية المقال، يظهر أنك قد قمت بإنشاء برنامج لتسهيل عملية التقديم للالتحاق بالمدرسة، وعلى الرغم من تقدم الأمور بشكل جيد إلى حد ما، إلا أنك تواجه بعض الصعوبات في الحصول على النتائج الصحيحة. سأقوم بتفحص الكود الذي قدمته ومناقشة بعض النقاط التي قد تساعدك في حل مشكلتك.

أولًا، يبدو أن هناك بعض الأخطاء النحوية في الشيفرة. على سبيل المثال، استخدمت دالة print بشكل غير صحيح، حيث يجب أن تكون ملفات الطباعة بين قوسين كما يظهر في الشيفرة. على سبيل المثال، يجب تعديل السطر:

python
print'Student =>',t2[i],'of Id number',t2[i+1]

ليصبح:

python
print('Student =>', t2[i], 'of Id number', t2[i + 1])

ثانيًا، في دالة search، يظهر أنك تحاول البحث عن الطالب باستخدام حلقتين تكرار، ولكن الطريقة التي قمت بها ليست صحيحة. يمكنك تبسيط البحث باستخدام حلقة واحدة فقط، على سبيل المثال:

python
def search(t2): s = input('Enter student ID=') for student in t2: if s in student: print('Student =>', student[0], 'of Id number', student[1]) break else: print('Invalid Entry, try again')

ثالثًا، في دالة details، يوجد خطأ في تكرار الطلاب. يمكنك تحسينها بشكل أفضل عن طريق تحديد عدد الطلاب الذين يمكن قبولهم في الفئة مسبقًا، وإجراء فحص قبل إضافة الطالب. هذا مثال لتحسين الكود:

python
def details(t1): if len(t1) < 5: n = input('Enter applicant name=') t2 = (('xxx', 1), ('yyy', 2), ('zzz', 3)) idn = input('Enter the Id no.=') t1 = t1 + ((n, idn),) print('Student added successfully to class') else: print('Sorry, class full')

باختصار، يبدو أن برنامج الالتحاق بالمدرسة الذي قمت بإنشائه يحتاج إلى بعض التحسينات لضمان عمله بشكل صحيح. استمر في تطوير مهارات البرمجة الخاصة بك، ولاتتردد في طرح المزيد من الأسئلة إذا كنت بحاجة إلى مساعدة إضافية.

المزيد من المعلومات

لتحسين برنامج الالتحاق بالمدرسة الخاص بك، يمكنني توجيه انتباهك إلى بعض النقاط الأخرى. أولاً وقبل كل شيء، يبدو أن هناك دوالًا غير مستخدمة في الكود مثل details و delete، رغم أنك قد قمت بتعريفها داخل دالة search. يجب عليك التأكد من استخدام هذه الدوال بشكل صحيح أو حذفها إذا لم تكن ذات فائدة.

علاوة على ذلك، يمكنك استخدام هيكلة أفضل للكود لتحسين قراءته وفهمه. يمكنك تقسيم البرنامج إلى دوال فرعية صغيرة تقوم بمهام محددة، مما يجعل الكود أكثر نظافة وإدارة. على سبيل المثال، يمكنك إعادة تنظيم الكود كالتالي:

python
def search(t2): s = input('Enter student ID=') for student in t2: if s in student: print('Student =>', student[0], 'of Id number', student[1]) break else: print('Invalid Entry, try again') def add_student(t1): if len(t1) < 5: n = input('Enter applicant name=') t2 = (('xxx', 1), ('yyy', 2), ('zzz', 3)) idn = input('Enter the Id no.=') t1 = t1 + ((n, idn),) print('Student added successfully to class') else: print('Sorry, class full') def delete(t2): l = list(t2) j = input('Enter the student ID=') for i in range(len(t2)): for ch in l: if j == ch: del l[i] del l[i + 1] break else: print('Student not found. Please try again') print(tuple(l)) def main(): n = input('Enter the number of students=') t1 = tuple() t2 = (('xxx', 1), ('yyy', 2), ('zzz', 3)) name = input('Enter the student name=') idn = input('Enter the Id no.=') for i in range(n): t1 = t1 + ((name, idn),) while True: print('\n\n\t\t----Admission Menu----') print('\t\t1->Apply for admission') print('\t\t2->Search for a student') print('\t\t3->Remove a student') print('\t\t4->Exit') ch = input('Enter your choice=') if ch == 1: add_student(t1) elif ch == 2: search(t1) elif ch == 3: delete(t1) elif ch == 4: print('Thank You for visiting --School Name--') exit() else: print('Wrong choice, please select a valid choice and try again') if __name__ == "__main__": main()

يتيح لك هذا النهج استخدام كل دالة لأغراض معينة، مما يجعل الكود أكثر قابلية للصيانة والتطوير. تأكد من فحص الأخطاء واستمر في تعزيز مهاراتك في البرمجة.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر