اهلا وسهلا بك فى بوابة الثانوية العامة ... سجل الان

العودة   بوابة الثانوية العامة المصرية > المرحلة الاعدادية > الفصل الدراسى الثانى > الصف الثالث الاعدادى > الكمبيوتر وتكنولوجيا المعلومات 3 ع ترم 2 > حاسب آلى 3ع ترم2

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 12-05-2016, 05:37 PM
الصورة الرمزية dentist do
dentist do dentist do غير متواجد حالياً
Student
 
تاريخ التسجيل: Dec 2012
المشاركات: 579
معدل تقييم المستوى: 13
dentist do is on a distinguished road
Star

اقتباس:
المشاركة الأصلية كتبت بواسطة زياد_عاطف مشاهدة المشاركة

فى الحالة الأولى

الحالة الاولى
Dim X as single
For X = 1 to 10 step 0
MsgBox (X) 000
Next
MsgBox ("Hiiiii " & X) 000
نلاحظ قيمة البداية أقل من قيمة النهاية فيتم التكرار إلى مالا نهاية و لا يتم الخروج من الحلقة التكرارية و تكون قيمة العداد X بعد كل تكرار هى قيمة البداية للعداد و هى 1 و فى هذا البرنامج سيتم طباعة قيمة العداد و هى [1] من خلال صندوق الرسالة لمالا نهاية و لا يتم التخلص من هذا الوضع اللا نهائى الا بعمل Stop Debugging

الحالة الثانية
Dim X as single
For X = 10 to 1 step 0
MsgBox (X) 000
Next
MsgBox ("Hiiiii " & X) 000

لاحظ قيمة البداية أكبر من قيمة النهاية و لن يتم التكرار و يأخذ المتغير X قيمة البداية للعداد و هى 10 و فى هذا البرنامج سيتم طباعة ما بعد Next و تنفيذ الجملةMsgBox ("Hiiiii " & X) 000 فيتم طباعة Hiiiii 10 أى طباعة Hiiiii متبوعة بقيمة العداد و هى [10] من خلال صندوق الرسالة
أما إذا أردت لااستفسار لماذا لم يتم طباعة 10 لمالا نهاية فى الحالة الثانية كما حدث و طبع [1] لما لا نهاية كما فى الحالة الاولى - فأقول هذه هى ديناميكية عمل حملة For Next و من صمموا لغة البرمجة جعلوها تعمل كما سبق شرحه

..................

شكرااا طب ماذا يحدث فى الكود التالى
for m=1 to 10 step -2
msgbox(m( ???
رد مع اقتباس
  #2  
قديم 12-05-2016, 06:39 PM
الصورة الرمزية زياد_عاطف
زياد_عاطف زياد_عاطف غير متواجد حالياً
معلم كمبيوتر و تكنولوجيا المعلومات
 
تاريخ التسجيل: Aug 2008
المشاركات: 503
معدل تقييم المستوى: 17
زياد_عاطف is on a distinguished road
افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة dentist do مشاهدة المشاركة
..................

شكرااا طب ماذا يحدث فى الكود التالى
for m=1 to 10 step -2
msgbox(m( ???
===================
طالما أن قيمة البداية أقل من قيمة النهاية فى جملة For Next يجب أن تكون قيمة الزيادة التى بعد Step موجبة حتى يتم التكرار -
و إذا كانت قيمة البداية أقل من قيمة النهاية فى جملة For Next و كانت قيمة الزيادة التى بعد Step سالبة لن يتم التكرار -
و سواء تم تكرار أم لم يتم عندما يتم الذهاب لكلمة Next يتم تخزين قيمة البداية فى العداد

لذلك فى هذه الجملة لن يتم التكرار لان قيمة البداية أقل من قيمة النهاية و قيمة الزيادة سالبة فيتم تخزين قيمة البداية 1 فى العداد M و بعد كلمة Next مباشرة تكون قيمة العداد M هى قيمة البداية [1]
=========
عاطف مهدى
رد مع اقتباس
إضافة رد

العلامات المرجعية


ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع


جميع الأوقات بتوقيت GMT +2. الساعة الآن 09:51 AM.