Do While Loop
تعريف الحلقة do while
نستخدم الحلقة do while إذا كنا نريد تنفيذ الكود عدة مرات, ولكننا لا نعرف كم مرة بالتحديد لأننا نريد إيقاف التنفيذ إذا تحقق شرط معين.هذه الحلقة تتوقف عن تكرار نفسها إذا تحقق الشرط الذي وضعناه لها.
الفرق الوحيد بينها و بين الحلقة while أنها تتنفذ مرة واحدة على الأقل لأنها تتأكد من الشرط بعد تنفيذ الأوامر و ليس قبلهم.
هنا كأننا نقول: " طالما أن الشرط لم يتحقق إستمر في تكرار الكود ".
طريقة إستخدامها
initialisation; do{ //statements //increment أو decrement; } While( condition ){};
initialisation: هي أول خطوة تتنفذ في الحلقة و هي تتنفذ مرة واحدة فقط على عكس جميع العناصر الموجودة في الحلقة. في هذه الخطوة نقوم بتعريف متغير ( يسمى عداد ).
statements: هي الخطوة الثانية, و تعني تنفيذ جميع الأوامر الموجودة في الحلقة و هي تتنفذ في كل دورة.
decrement أو increment: هي الخطوة الثالثة, و هي تتنفذ في كل دورة. هنا نحدد كيف تزداد أو تنقص قيمة العداد.
condition: هي الخطوة الرابعة و الأخيرة و هي تتنفذ في كل دورة.
في هذه الخطوة نقوم بوضع شرط يحدد متى تتوقف الحلقة, في نهاية كل دورة يتم التأكد إذا تحقق الشرط أم لا. هنا طالما أن نتيجة الشرط تساوي true سيعيد تكرار الكود.
تذكر فقط أن جميع هذه الخطوات تتكرر في كل دورة ما عدا أول خطوة, و السبب أننا لا نحتاج إلى تعريف عداد جديد في كل دورة, بل نستعمل العداد القديم و الذي من خلاله نعرف في أي دورة أصبحنا.
مثال حول الحلقة do while
في المثال التالي قمنا بتعريف حلقة تطبع جميع الأرقام من 1 إلى 10.package loops; public class DoWhileLoop { public static void main(String[] args) { // هنا قمنا بتعريف المتغير الذي استخدمناه كعداد في الحلقة int i=1; // تظل تنفذ الأوامر الموضوعة فيها طالما أن قيمة العدد لا تزال أصغر أو تساوي 10 while هنا أنشأنا حلقة do { // في كل دورة سيتم طباعة قيمة العداد ثم إضافة 1 عليها System.out.println( i ); i++; } while( i<=10 ); } }
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
برنامج طباعة عناصر المصفوفة
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
int arr[]={4,7,3,9,10,15,46};
//i starts with 0 as array index starts with 0 too
int i=0;
do{
System.out.println(arr[i]);
i++;
} while(i<7);
}
}
4 7 3 9 10 15 46
ليست هناك تعليقات:
إرسال تعليق
ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.