دستورات While و Do-While در زبان جاوا


دستورات While و Do-While در زبان جاوا
برای خرید این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

دستورات While و Do-While در زبان جاوا


دستور while همانند دستور for به ما کمک میکند تا قطعه کد هایی را کنترل و تکرار کنیم.
شاید این سوال برای شما هم پیش بیاید که وقتی میخواهیم قطعه کدی را تکرار کنیم بهتر است از for استفاده کنیم یا while؟ و یا این که آیا این دو توانایی یکسانی دارند ؟
نکته: تمام کد هایی که به دستور for نوشته میشود امکان این را دارد تا با دستور while نیز نوشته شود؛ اما توصیه میشود در شرایط مختلف با توجه به نیازتان از هرکدام استفاده کنید.
به طور کلی‌تر زمانی از for استفاده میکنیم که تعداد دفعات تکرار مشخص باشد؛ و اگر در برنامه ما این شرط وجود داشت که (تا زمانی که یک رخ‌داد اتفاق بی‌افتد یک کار مشخص را انجام بده) باید ازز دستور while استفاده کنیم.

 

دستور while


برای مثال اگر بخواهیم یک دستور را سه بار به صورت تکراری چاپ کنیم، باید ابتدا یک متغیر یا همان شمارنده تعریف کنیم؛ سپس باید موقعیت شروع شمارنده را تعیین کنیم؛ در قدم بعدی باید تعیین کنیم که این شمارنده تا چه مقداری باید ادامه پیدا کند. یک نکته بسیار مهم در نوشتن دستور while این است که میزان پرش در بلاک کد تعیین میشود و اگر این کار انجام نشود برنامه تا بینهایت ادامه پیدا خواهد کرد.
برای درک بهتر این مطلب به کد زیر توجه کنید:

 

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		int i;
		i=1;
		while(i<=3){
			System.out.println("darsman.com");
			System.out.println(i);
			i++;
			
		}
	}
}


برای درک بهتر کاربرد دستور while به مثال زیر توجه کنید:

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		Scanner reader= new Scanner(System.in);
		System.out.print("Enter Number : ");
		int num= reader.nextInt();
		int count=0;
		while(num>0)
		{
			num/=10;
			count++;
		}
		System.out.println("count is : "+count);

	}

}

در این کد تعداد دفعات تکرار حلقه مشخص نیست و همانطور که گفته شد هر گاه تعداد تکرار مشخص نباشد باید از دستور while استفاده کنیم.
نکته: در بعضی از حلقه ها ممکن است بر اساس شرطی که خودمان تعیین کرده‌ایم حلقه اجرانشود چون شرط ما غلط میباشد قطعه کد زیر نمونه ای از این نوع حلقه ها است:

 

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		
	int i=1;
	while(i>3)
	{
		System.out.println("Darsman.com");
		i++;
	}

}
}

 

دستور do while


دستور do while همانند دستور while میباشد با این تفاوت که در do while شرط در آخر حلقه بررسی میشود؛ ساختار نوشتاری آنها نیز با هم کمی متفاوت است؛ کد زیر نمونه ای از موارد استفاده از do while است:
 

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		
	int i=1;
	do {
		System.out.println("Darsman.com");
		i++;
	}while(i>3);
}
}


در مثال قبلی دیدیم که دستور while اجرا نشد اما در دستور do while همان شرط حداقل یک بار اجرا خواهد شد چون شرط در پایان حلقه بررسی میشود.
دستور break و continue در حلقه ها یا بلاک ها استفاده میشود؛ این دو دستور به ما کمک میکند تا روند اجرای حلقه را مقداری تغییر بدهیم.

 

دستور break


دستور break بنا به شرطی که دارد حلقه را خاتمه میدهد. یک نمونه از استفاده این دستور را در کد زیر مشاهده میکنید:
 

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		
	int i;
	for(i=1;i<=10;i++)
	{
		if(i==5)
		{
			break;
		}
		System.out.println("Item_"+i);
	}

}
}

 

دستور continue


اما دستور continue باعث میشود تا دستورات آن دور از حلقه بر اساس شرطی که دارد اجرا نشود و حلقه دوباره از بالا اجرا شود:
 

package mypac;

import java.util.Scanner;

public class myclas {

	public static void main(String[] args) {
		
	int i;
	for(i=1;i<=10;i++)
	{
		if(i==5)
		{
			continue;
		}
		System.out.println("Item_"+i);
	}

}
}

همان طور که مشاهده کردید در خروجی این برنامه Item_5 چاپ نشد چون در شرط continue از چاپ شدن این مورد جلوگیری شد.

 


برچسب ها :

while

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 26 جلسه
مدت زمان 685 دقیقه
حجم دوره 1/84 گیگابایت
سطح مهارت مقدماتی
وضعیت دوره پایان یافته
: میانگین امتیاز دوره

رایگان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی
مهدی عباسی

درباره مدرس :

مدیر‌ عامل‌ شرکت آریا‌ نرم‌‌ افزار دارنده مدرک کارشناسی‌ ارشد مهندسی کامپیوتر 12‌ سال سابقه تدریس دروس کامپیوتر را در دانشگاههای دولتی، آزاد، پیام‌نور ملایر، شهیدشمسی‌پور تهران و تدریس برنامه‌نویسی در انیستیتو ایزایران، مجتمع فنی و موسسه راه‌آینده تهران دارا میباشد و تا به حال راهنمایی انجمنهای علمی دانشگاه و صدها پروژه دانشجویی را برعهده داشته است. تخصص اصلی: با داشتن گواهی‌نامه‌های معتبر تدریس از انیستیتو‌ ایزایران، راه آینده‌تهران و سازمان‌فنی‌حرفه‌ای، تدریس و آموزش‌ دروس کامپیوتر، ‌برنامه‌نویسی کامپیوتر و کلاسهای کنکور کارشناسی و کارشناسی‌ارشد میباشد.همچنین تجربه داوری و نظارت مسابقات برنامه‌نویسی کشوری‌ACM را در سالهای متعدد داشته و تیم مورد رهبری ایشان در 3سال متوالی مقام اول مسابقات کشوری را از آن خود کرده است.ایشان مقالاتی در زمینه شبکه‌های کامپیوتری، تکنیک‌های وزارت دفاع و ... به ثبت رسانده و مشاور و کارشناس در طراحی و برنامه نویسی بیش از 50‌برنامه کاربردی تحت وب و ویندوز و موبایل میباشد. افتخارات دیگر:کسب مقام دوم ایده‌های برتر در مسابقات استارت‌آپ و بکند کشوری را نام برد.