عرض مشاركة واحدة
  #10  
قديم 17-05-2015, 07:09 PM
سيف سالم سيف سالم غير متواجد حالياً
مــٌــعلــم
 
تاريخ التسجيل: Jul 2008
العمر: 57
المشاركات: 4,642
معدل تقييم المستوى: 21
سيف سالم is on a distinguished road
افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة زياد_عاطف مشاهدة المشاركة
[size="3"]================================================
الكود الاول ليس فيه مشكلة لإقناع الطالب بالخطأ لو تتبع الأوامر و ماذا يجمع و يخزن فى المتغير s
فأول تكرار s=s+n=0+0=0 ثم زيادة قيمة العداد ليكون n=n+2=0+2=2--- ثانى تكرار s=s+n=0+2=2 ثم زيادة قيمة العداد ليكون n=n+2=2+2=4 ---- ثالث تكرار s=s+n=2+4=6 ثم زيادة قيمة العداد ليكون n=n+2=4+2=6 ---- رابع تكرار s=s+n=6+6=12 ثم زيادة قيمة العداد ليكون n=n+2=6+2=8 ---- خامس تكرار s=s+n=12+8=20 ثم زيادة قيمة العداد ليكون n=n+2=8+2=10 ---- سادس تكرار s=s+n=20+10=30 ثم زيادة قيمة العداد ليكون n=n+2=10+2=12 ----
و يصبح الشرط خطأ حيث أن الشرط n<=10 أى 12<=10 fals و يتوقف التكرار و نخرج منه لجعل قيمة خاصية ال text لأداة العنوان مجموع الأعداد 0+2+4+6+8+10 و لو قمنا بصياغتها بصورة موجزة نقول مجموع الأعداد الزوجية من 0 الى 10 و هو غير المطلوب و هو خطأ

الكود الثانى يعطى نتيجة صحيحة كما هو مطلوب من معطيات المسألة – لكن ما هى المشكلة الوهمية ؟ أن شكل الكود مختلف عما هو شائع فى المقررات الدراسية الرسمية او غير الرسمية

فأول تكرار n=n+2=1+2=3 ثم s=s+n=1+3=4 ثم يتم طباعة ناتج الجمع و هو قيمة المتغير s على أداة العنوان و هو 1+3=4 ---- و ثانى تكرار n=n+2=3+2=5 ثم s=s+n=4+5=9 ثم يتم طباعة ناتج الجمع و هو قيمة المتغير s على أداة العنوان و هو 1+3+5=9 ---- و ثالث تكرار n=n+2=5+2=7 ثم s=s+n=9+7=16 ثم يتم طباعة ناتج الجمع و هو قيمة المتغير s على أداة العنوان و هو 1+3+5+7=16 --- و رابع تكرار n=n+2=7+2=9 ثم s=s+n=16+9=25 ثم يتم طباعة ناتج الجمع و هو قيمة المتغير s على أداة العنوان و هو 1+3+5+7+9=25 ----
و يصبح الشرط خطأ حيث أن الشرط n<=9 أى 9 => 8 false و يتوقف التكرار و نخرج من الحلقة التكرارية
ملاحظة :- ما سيتم طباعتة على أداة العنوان سيكون أثناء الحلقة التكرارية و ليس خارجها فيتم طباعة الأعداد 4 ثم 9 ثم 16 ثم 25 و لكن ذلك كله يكون فى جزء من مليون جزء من الثانية و العين البشرية لا تستطيع رؤية ذلك لأن العين لا تلاحظ إلا الأشياء التى تتغير خلال عُشر ثانية تقريباً - فترى آخر رقم ثبت على اداة العنوان و هو ناتج جمع الأعداد 4+5+7+9=25 و هو نفسه ناتج جمع الأعداد 1+3+5+7+9=25 و هو ناتج جمع الأعداد الفردية من 1 الى 10


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

عاطف مهدى حسان / ميت موسى[
/size]

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