جرانجر في فهرنهايت 451 للمؤلف راي برادوري
“كان جدي يقول إن كل إنسان لا بد أن يترك شيئاً
وإلا لن يذهب إلى الجنة يترك طفلاً ، جداراً ، نبتة ، قصيدة ، كتاباً
شيئاً لمسته يداك … وكلما نظر الناس للجدار أو النبتة
وجدوك فيها لا يهم أن تكون بارعاً المهم أن تغير شيئاً عما كان عليه قبل أن تمسه”
أعجبتني هذه المقولة
ليس بالشرط أن تعجبني كلية
لكنها تطرقت إلى نقطة جميلة
لابد أن تتغير الدنيا بسبب وجودك فيها
هناك الكثير من الناس يمرون على الدنيا
ويخرجون منها كأنهم لم يمروا عليها
اعمل بجد لكي لا تكون من الغثاء
على العموم دعوكم من هذا الكلام وتعالوا نتحدث عن موضوعنا
كيف اكتب حلقة تكرار باستخدام for ؟
الصيغة العامة لـ for كالتالي
for(initialization;condition;operation){ }
كل شيء في for اختياري ماعدا كلمة for والفاصلتين المنقوطتين و القوسين ()
initialization تنفذ مرة واحدة عند بداية for
operation تنفذ كل مرة بعد فحص الشرط
condition يجب أن يكون تعبير ناتجه boolean
تستطيع كتابة أي شيء في الجزيئيتين initialization operation
بما في ذلك جملة الطباعة (جملة واحدة فقط)
يستثنى من ذلك تعريف المتغيرات في operation
عند حذف الجزئية condition فإن التكرار سيستمر إلى مالانهاية
ويسمى حينها infinite loop
في حالة وجود أي من القوسين }{ فإنه يجب تواجد الآخر
في حالة وجود هذه الأقواس
فإن التكرار سيكون على الجمل المتواجدة بين القوسين
في حالة عدم وجود هذه الأقواس
فإن التكرار سيكون على جملة واحدة
وهي التي تلي التكرار مباشرة
مثال
for(initialization;condition;operation) something;
تستطيع إيقاف الحلقة التكرارية سواءاً كان لها شرط أم حذف شرطها
باستخدام الكلمة المفتاحية break
تستطيع إيقاف اللفة الحالية للتكرار
باستخدام الكلمة المفتاحية continue
مثال 1
for(initialization;condition;operation){ if(something){ break; } doAnthoerthing; } doAnthoerthing2;
مثال 2
for(initialization;condition;operation){ if(something){ continue; } doAnthoerthing; }
في مثال 1 عند تحقق الشرط سيتوقف التكرار نهائياً
بمعنى أنه سينتقل إلى doAnthoerthing2
في مثال 2 عند تحقق الشرط لن يكمل اللفة
بمعنى أنه سيتجاهل doAnthoerthing
نلاحظ أنه في حال وجود أكثر من حلقة متداخلة
فإنه سيتم تنفيذ الإيقاف أو التجاهل على الحلقة الأقرب
مثال
for(initialization1;condition1;operation1){ for(initialization2;condition2;operation2){ break; } doAnthoerthing; }
في المثال السابق نلاحظ أنه سيخرج من التكرار 2
ويكمل في التكرار 1 بشكل عادي
إذا أردنا أن نجعله يخرج من التكرار 1
نستخدم العناوين lables لذلك
مثال
for1:for(initialization1;condition1;operation1){ for(initialization2;condition2;operation2){ break for1; } doAnthoerthing; }
لن أطيل عليكم أي استفسارات أنا جاهز
نسيت أن أخبركم بأن الموضوع للمبتدئين فقط
عادة قبيحة فعلاً
تحياتي
machkour akhi 🙂 dayman mobdi3 hhhh akhok amine mini almaghrib
java developper
العفو أخي أمين
حفظك الله
وأهلاً بك وبكل أهل المغرب
تحياتي