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

اقتباس:
المشاركة الأصلية كتبت بواسطة أحـمد قرنى مشاهدة المشاركة
أستاذ سيف معذرة ( ممكن تيسط لى الامور شوية ) :
أنا عارف ان لو أتت ال Msgbox بعد كلمة next هتكون قيمة i هى 9 .
بينما لو اتت ال msgbox قبل كلمة next هتكون قيم i هى 0 و 3 و 6 .

بس المشكلة أن فى جميع امتحاناة المحافظات السابقة ونماذج الوزارة بيأتى بالمثال بدون ذكر ال msgbox .
كلاالتى
x = 4
for i = 0 to 7 step3
x = x * 2
next

فى هذه الحالة قيم i داخل التكرار هى 0 و 3 و 6
بينما قيمة i خارج التكرار هى 9 , وهى القيمة التى يتوقف فيها العداد عن التكرار .

مما سبق لماذا يتم ذكر القيمة 9 وهى خارج التكرار وأيضاً القيمة النهائية عندى أقصاها 7 .
,ولماذا لم يتم اختيار القيمة 6 لو أتت اختيارى وخاصة أنها ايضاً من قيم i .

x = 4

ماذا يحدث بعد تنفيذ الخطوة السابقة
اليس قيمة المتغير x في الذاكرة 4


for i = 0 to 7 step3
ماذا يحدث بعد تنفيذ الخطوة السابقة
اليس قيمة المتغير i في الذاكرة 0


x = x * 2
ماذا يحدث بعد تنفيذ الخطوة السابقة
اليس قيمة المتغير x في الذاكرة 8

next
ماذا يحدث بعد تنفيذ الخطوة السابقة
اليس يعود البرنامج الى الخطوة التالية

for i = 0 to 7 step3
مع زيادة i قيمة 3 فتكون قيمة i في الذاكرة 3
فيقوم البرنامج بتفيذ

x = x * 2
ويكون قيمة x هي 16
ثم

next
ماذا يحدث بعد تنفيذ الخطوة السابقة
اليس يعود البرنامج الى الخطوة التالية

for i = 0 to 7 step3
مع زيادة i قيمة 3 فتكون قيمة i في الذاكرة 6
فيقوم البرنامج بتفيذ

x = x * 2
ويكون قيمة x هي 32
ثم

next
ماذا يحدث بعد تنفيذ الخطوة السابقة
مما لا شك فيه البرنامج لن يتوقف هنا
الن يعود البرنامج الى الخطوة التالية
for i = 0 to 7 step3
مع زيادة i قيمة 3 فتكون قيمة i في الذاكرة 9
فيذهب البرنامج الى خارج loop فلا يجد شئ فيتوقف




آخر تعديل بواسطة سيف سالم ، 08-04-2011 الساعة 09:09 PM
رد مع اقتباس