14-11-13, 12:51 AM
السلام عليكم...
حلقتا For كلتاهما خطأ، و كذلك جمل If. يبدو أن الأخ المبرمج البسيط1 كان يعمل بلغة Pascal أو أخذ كوداً مكتوباً بها.
حلقة For في VB لا تستعمل كلمة Do. الصحيح للحلقة الأولى:
و جملة End If التي بعد الحلقة الأولى خاطئة من ناحيتين: أولاً لأنه إذا كتبنا جواب الشرط بعد Then (جملة If أحادية السطر) فإن جملة If لا تحتاج إلى End If. و ثانياً حتى إذا كانت جملة If متعددة الأسطر و تحتاج إلى End If فإنها في الكود المذكور في السؤال يجب أن تكون داخل الحلقة (قبل Next و ليس بعدها) لإن جملة If التي تتبعها موجودة داخل الحلقة.
أما حلقة For الثانية فبها الأخطاء التالية:
1. يجب كما قلنا أعلاه حذف كلمة Do من سطر For.
2. جملة If الطويلة يجب أن تنهي بـ Then و ليس and.
3. كما ذكرنا سابقاً، جملة End If يجب أن تكون قبل Next و ليس بعدها لأن If المقابلة لها موجودة داخل الحلقة.
نرجو الاستفادة و السلام.
حلقتا For كلتاهما خطأ، و كذلك جمل If. يبدو أن الأخ المبرمج البسيط1 كان يعمل بلغة Pascal أو أخذ كوداً مكتوباً بها.
حلقة For في VB لا تستعمل كلمة Do. الصحيح للحلقة الأولى:
كود :
For i = 1 to 9
If Max > MCG(i) Then Max = MCG(i)
Next iو جملة End If التي بعد الحلقة الأولى خاطئة من ناحيتين: أولاً لأنه إذا كتبنا جواب الشرط بعد Then (جملة If أحادية السطر) فإن جملة If لا تحتاج إلى End If. و ثانياً حتى إذا كانت جملة If متعددة الأسطر و تحتاج إلى End If فإنها في الكود المذكور في السؤال يجب أن تكون داخل الحلقة (قبل Next و ليس بعدها) لإن جملة If التي تتبعها موجودة داخل الحلقة.
أما حلقة For الثانية فبها الأخطاء التالية:
1. يجب كما قلنا أعلاه حذف كلمة Do من سطر For.
2. جملة If الطويلة يجب أن تنهي بـ Then و ليس and.
3. كما ذكرنا سابقاً، جملة End If يجب أن تكون قبل Next و ليس بعدها لأن If المقابلة لها موجودة داخل الحلقة.
نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
