• حلقه ها در جاوا حلقه بی نهایت برای (جاوا).

    اخرین بروزرسانی: 31.10.2018

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

    برای حلقه

    حلقه for دارای تعریف رسمی زیر است:

    برای ([تغییر شمارشگر]؛ [شرط]؛ [تغییر شمارنده]) ( // اقدامات )

    یک استاندارد برای حلقه در نظر بگیرید:

    برای (int i = 1; i< 9; i++){ System.out.printf("Квадрат числа %d равен %d \n", i, i * i); }

    اولین قسمت از اعلان حلقه، int i = 1، شمارنده i را ایجاد و مقداردهی اولیه می کند. لازم نیست شمارنده از نوع int باشد. این می تواند هر دیگری باشد نوع عددیبه عنوان مثال شناور. قبل از اجرای حلقه، مقدار شمارنده برابر با 1 خواهد بود. در این حالت، این همان اعلان متغیر است.

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

    و قسمت سوم افزایش شمارنده یک عدد است. باز هم لازم نیست یک عدد افزایش دهیم. می توانید کاهش دهید: i--.

    در نتیجه بلوک حلقه 8 بار اجرا می شود تا مقدار i برابر با 9 شود و هر بار این مقدار 1 افزایش می یابد.

    لازم نیست هنگام اعلام یک حلقه، همه شرایط را مشخص کنیم. به عنوان مثال می توانیم اینگونه بنویسیم:

    Int i = 1; for (; ;)( System.out.printf("مربع %d %d \n است"، i، i * i)؛ )

    تعریف چرخه ثابت می ماند، فقط اکنون بلوک های موجود در تعریف خالی هستند: برای (; ;) . اکنون هیچ متغیر شمارنده اولیه، هیچ شرطی وجود ندارد، بنابراین حلقه برای همیشه اجرا می شود - یک حلقه بی نهایت.

    یا می توانید تعدادی از بلوک ها را حذف کنید:

    Int i = 1; برای (;i<9;){ System.out.printf("Квадрат числа %d равен %d \n", i, i * i); i++; }

    این مثال معادل مثال اول است: یک شمارنده نیز داریم، فقط خارج از حلقه ایجاد می شود. ما یک شرط اجرای حلقه داریم. و یک افزایش از شمارنده در حال حاضر در خود بلوک for وجود دارد.

    حلقه for می تواند چندین متغیر را به طور همزمان تعریف و مدیریت کند:

    int n = 10; for(int i=0، j = n - 1; i< j; i++, j--){ System.out.println(i * j); }

    انجام حلقه

    حلقه do ابتدا کد حلقه را اجرا می کند و سپس شرایط موجود در دستور while را بررسی می کند. و در حالی که این شرط درست است، چرخه تکرار می شود. مثلا:

    int j = 7; do( System.out.println(j); j--; ) while (j > 0);

    در این حالت کد حلقه 7 بار اجرا می شود تا j صفر شود. توجه به این نکته ضروری است که حلقه do تضمین می کند که اقدامات حداقل یک بار اجرا می شوند، حتی اگر شرط موجود در دستور while درست نباشد. بنابراین، می توانیم بنویسیم:

    int j = -1; do( System.out.println(j); j--; ) while (j > 0);

    حتی اگر j در ابتدا کمتر از 0 باشد، حلقه همچنان یک بار اجرا می شود.

    حلقه while

    حلقه while بلافاصله درستی یک شرط را بررسی می کند و اگر شرط درست باشد، کد حلقه اجرا می شود:

    int j = 6; while (j > 0)( System.out.println(j); j--; )

    ادامه و شکستن عبارات

    دستور break به شما امکان می دهد در هر زمان از حلقه خارج شوید، حتی اگر حلقه کار خود را تمام نکرده باشد:

    مثلا:

    < nums.length; i++){ if (nums[i] >10) شکستن؛ System.out.println(nums[i]); )

    از آنجایی که حلقه بررسی می کند که آیا عنصر آرایه بزرگتر از 10 است، ما دو عنصر آخر را در کنسول نخواهیم دید، زیرا زمانی که nums [i] بزرگتر از 10 (یعنی برابر با 12) باشد، دستور break کار خواهد کرد. و حلقه به پایان می رسد.

    درست است، ما آخرین عنصر را که کمتر از 10 است نیز نخواهیم دید. حالا آن را طوری می سازیم که اگر عدد بزرگتر از 10 باشد، حلقه تمام نمی شود، بلکه به سادگی به عنصر بعدی می رود. برای این کار از عبارت continue استفاده می کنیم:

    int nums = int جدید ( 1، 2، 3، 4، 12، 9); برای (int i = 0; i< nums.length; i++){ if (nums[i] >10) ادامه دهید؛ System.out.println(nums[i]); )

    در این حالت، زمانی که اجرای حلقه به عدد 12 می رسد که شرایط تست را برآورده نمی کند، برنامه به سادگی از این عدد رد می شود و به عنصر بعدی آرایه می رود.

    هنگامی که نیاز دارید همان عمل را چندین بار انجام دهید یا تا یک شرایط خاص انجام شود، حلقه ها به کمک می آیند.

    زبان جاوا چندین راه برای ایجاد حلقه دارد. همانطور که ممکن است حدس بزنید، ما همه آنها را در نظر خواهیم گرفت.

    اولین راه برای اعلام یک حلقه استفاده از ساختار زیر است: for (شرط شروع حلقه، شرط پایان، مرحله ای که حلقه با آن حرکت می کند) (بدنه حلقه)

    بیایید مستقیماً به سراغ مثال ها برویم. فرض کنید وظیفه داریم 10 بار عبارت سلام دنیا را نمایش دهیم. اگر از حلقه ها استفاده نمی کنید، فقط می توانید System.out.println ("Hello world") را بنویسید. ده بار و مشکل را حل کنید. بیایید از حلقه ها برای این منظور استفاده کنیم. یک کلاس جدید ایجاد کنید و نام آن را برای مثال CuclesInJava بگذارید. حالا یک شرط حلقه (بگذارید 0 باشد)، یک شرط پایانی 10 و یک مرحله را اعلام کنید. قدم به قدم پیش خواهیم رفت. در بدنه حلقه، خط System.out.println ("Hello world");

    در اینجا یک کد نمونه است:

    حاصل این کد 10 سطر متوالی عبارت «سلام دنیا!» خواهد بود.

    چه برسد به نوشتن چیز پیچیده تر. ما قبلاً موارد اساسی را یاد گرفته ایم. از آنها استفاده کنیم.

    بیایید یک برنامه ساده بنویسیم که هر بار که مرحله + مقداری متغیر برابر با 5 می شود یک خط با یک هشدار نمایش می دهد. تصورم خیلی بد است))

    ابتدا بیایید کدی بنویسیم که متغیری را که از کنسول وارد شده است به عنوان ورودی بپذیرد. در مقاله قبلی مثالی از این کد زدم و قرار گذاشتیم که بعداً نحوه کارکرد و از کجا آمده است. در حال حاضر، ما فقط از آن استفاده می کنیم:

    در مرحله بعد، باید یک حلقه بنویسید که از صفر شروع شود و تا ده شمارش کند (مانند مثال قبلی). در بدنه حلقه، یک دستور شرطی می نویسیم که بررسی می کند که آیا این متغیر برابر با 5 است یا خیر، و اگر چنین است، رشته "OK" را نمایش می دهیم. این چیزی است که من دریافت کردم:

      وارد کردن java.util.Scanner;

      کلاس عمومی CuclesInJava(

      متغیر int = scanner.nextInt(); //به تدریج به این موضوع می رسیم و بعد معلوم می شود که چگونه کار می کند

      برای (int i = 1 ; i< 10 ; i++ ) {

      int newVariable = i + متغیر;

      if (newVariable== 5) (

    خیلی خوب نشد با این مثال، من می‌خواستم نشان دهم که چگونه می‌توان از حلقه‌ها با شاخه‌ها در ارتباط استفاده کرد.

    راه بعدی برای اعلام حلقه ها با while(condition is true) (بلوک کدی که باید اجرا شود) است. این طرح شکل دیگری دارد:

    do (بلوکی از کد برای اجرا) while (شرط درست است). تفاوت بین اول و دوم این است که دومی بدون در نظر گرفتن اینکه شرط درست است یا نه، یک چرخه را اجرا می کند. می توانید خودتان فکر کنید: ابتدا کد را اجرا می کنیم و سپس شرایط را بررسی می کنیم. و حتی اگر شرط درست نباشد باز هم کد یکبار اجرا می شود، در زمانی که شرط برای اولین بار در فرم اول ساخت بررسی می شود و تا زمانی که درست نباشد، کد اجرا نمی شود.

    کد باید بصری باشد. فکر می کنم شایان ذکر است که با ساختارهای while و do-while می توانید "حلقه"اگر شرایط خروج از حلقه را ثبت نکنید یا به اشتباه ثبت کنید برنامه را انجام دهید. به مثال بالا نگاه کنید و به این فکر کنید که اگر i++ را به جای i- بنویسم چه اتفاقی می افتد. یا به جای i>0، i<0. Моя программа никогда не вышла бы из цикла и продолжала бы выводить строку Hello world! до тех пор, пока не завис компьютер. Поэтому, будьте очень осторожными с циклами и всегда следите, чтобы из них Ваша программа могла выйти или закончить работу.

    خوب، یک مثال با do-while:

    در این مورد، من فکر می کنم، ما می توانیم مقاله را در مورد آن به پایان برسانیم حلقه ها در جاوا. همانطور که می بینید، طرح ها خیلی پیچیده نیستند، اما بسیار مفید هستند. وقتی با آرایه‌ها و رشته‌ها آشنا می‌شویم، آنها بسیار مفید خواهند بود.

    تقریباً مانند هر زبان برنامه نویسی، جاوا ابزارهایی برای تکرار یک قطعه کد خاص دارد. به چنین ابزارهایی چرخه می گویند. حلقه ها در جاوا با عباراتی مانند while و for و همچنین تغییرات آنها نمایش داده می شوند. حلقه‌ها معمولاً برای تکرار از طریق آرایه‌های یک‌بعدی و چند بعدی و ساختار داده‌ها برای یافتن عناصر خاص و سپس کار بر روی آنها استفاده می‌شوند. اما این تنها راه برای استفاده از ابزاری مانند حلقه جاوا نیست. همانطور که آنها در نظر گرفته می شوند، نمونه هایی از استفاده ارائه خواهد شد.

    حلقه while جاوا: توضیحات و مثال ها

    while عبارت حلقه اساسی در جاوا است. قطعه کد محصور شده در بدنه آن تا زمانی که شرایط عبارت محصور شده در پرانتز پس از برآورده شدن مقدار واقعی تکرار می شود. عملگر while به طور کلی به شکل زیر است: while (شرط)(//بدنه حلقه). به محض اینکه مقدار شرط منطقی درست نباشد، کد محصور شده در بدنه حلقه دیگر اجرا نخواهد شد. کنترل به خطی که بلافاصله بعد از آن می آید منتقل می شود. اگر فقط یک عبارت در بدنه حلقه وجود داشته باشد، می توان مهاربندهای فرفری را حذف کرد. با این حال، در بین برنامه نویسان، همیشه روشن بودن آنها به عنوان یک روش خوب در نظر گرفته می شود. بیایید مثالی بزنیم:

    کلاس عمومی whileDemo(

    System.out.println("چاپ اعداد از 1 تا 10");

    در حالی که (شمارش<=10) {

    System.out.println(count);

    مقدار متغیر count در ابتدا دارای مقدار 1 است. در مرحله بعد، یک عبارت منطقی را می بینیم که بعد از نام عملگر در براکت ها قرار می گیرد. اگر مقدار درست باشد، حلقه true برمی گردد تا زمانی که مقدار متغیر count برابر یا کمتر از 10 شود. با هر پاس یا تکرار، مقدار متغیر 1 افزایش می یابد و در صفحه کنسول نمایش داده می شود. زمانی که مقدار متغیر به مقدار 11 رسید، حلقه خاتمه یافت. اگر مقدار تعداد متغیر ابتدا 11 بود، شرط حلقه نادرست بود. این برنامه حتی وارد بدن نمی شد. لازم به ذکر است که نحو جاوا امکان استفاده از دستور while را بدون بدنه فراهم می کند. مثال زیر را در نظر بگیرید. فرض کنید شما دو متغیر دارید: i=100 و j=200. ما با این کار روبرو هستیم که میانگین حسابی آنها را به صورت برنامه ای محاسبه کنیم، برای این منظور می توانید از حلقه "empty" while استفاده کنید:

    در حالی که (++i<- — j);

    در نتیجه این عملیات، مقدار هر یک از این دو متغیر برابر با میانگین مقادیر اولیه آنها خواهد بود. همانطور که در این مثال می بینید، حلقه بدون بدنه به خوبی کار می کند و تمام اقدامات لازم را در عبارت شرطی انجام می دهد.

    حلقه do-while

    در مثال‌های قبلی، اگر عبارت شرط false را برگرداند، برنامه بدنه حلقه را نادیده گرفته و اجرای بعدی را ادامه می‌دهد. اما گاهی اوقات شرایطی پیش می‌آید که اجرای کد موجود در بدنه حلقه حداقل یک بار بدون توجه به صحت بیان شرط الزامی است. به عبارت دیگر، گاهی پیش می آید که لازم است صحت عبارت شرطی را در ابتدا بررسی کنیم، نه در انتهای حلقه. عملکرد مشابهی را می توان با نوعی حلقه while با نام شرطی do-while ارائه کرد. شکل زیر را دارد: do (// loop body) while (شرط). همانطور که می بینید ابتدا بدنه حلقه در اینجا اجرا می شود و سپس شرط از نظر صحت بررسی می شود. این در هر تکرار انجام می شود. کد بالا تقریباً به همان روشی که در مورد while کار می کند. اما اگر بخواهیم متغیر count را روی 11 قرار دهیم، بدنه حلقه هنوز یک بار اجرا می شود تا اینکه دستور بتواند صحت عبارت را آزمایش کند.

    مثال ها و توضیحات: برای - حلقه جاوا

    حلقه for یک فرم زبان همه کاره و کارآمد در زبان جاوا است. تا نسخه 5 JavaSDK، تنها یک شکل سنتی از عبارت for وجود داشت. پس از آن، یک مورد جدید ظاهر شد - foreach. در این بخش به شکل سنتی اپراتور می پردازیم. حلقه for در جاوا به شکل زیر است:

    برای (inti=0; i<10; i++) {//Loop statements to be executed

    قبل از اینکه کنترل به کد انتهای حلقه منتقل شود، متغیر i که به عنوان شمارنده عمل می کند مقداردهی اولیه می شود. بعد، باید عبارت شرطی را بررسی کنید که در آن شمارنده با یک مقدار خاص مقایسه شده است. اگر برنامه true را برگرداند، بدنه حلقه اجرا می شود. در همان زمان، مقدار شمارنده با مرحله مشخص شده از قبل تغییر می کند و عبارت شرطی دوباره بررسی می شود. این تا زمانی ادامه می یابد که شرایط نادرست شود. برای درک بهتر، در اینجا مثالی از نحوه عملکرد حلقه آورده شده است. برای جاوا.

    کلاس عمومی ForLoops(

    اصلی خالی استاتیک عمومی (رشته آرگ) (

    intend_value=11;

    برای؛ //یک آرایه از نوع "something" با n عنصر ایجاد کنید

    برای (int i = 0; i< n; i++){

    آرایه[i] = newSomething(); // "چیزی" را ایجاد کنید و آن را در یک آرایه قرار دهید

    }

    چگونه از حلقه جاوا خارج شویم

    برای خروج از حلقه، کلمات کلیدی break - "وقفه"، ادامه - "رزومه" و بازگشت - "بازگشت" وجود دارد. دستور break برنامه را سوئیچ می کند تا عبارات زیر حلقه را اجرا کند. شرایط شکستن حلقه در جاوا از طریق شاخه بندی if انجام می شود. نکته اصلی این است که بررسی قبل از قسمت اصلی بدنه حلقه انجام می شود.

    //بعد از ایجاد آرایه m می نویسیم:

    برای (a:m)(

    if (a==5) break;

    System.out.println(a);

    }

    عملگرهای شاخه و حلقه در جاوا اغلب با هم کار می کنند: ما حلقه را شروع می کنیم، و در داخل آن بررسی می کنیم که آیا شرط هنوز برآورده شده است، که تحت آن باید حلقه را بشکنیم یا کار دیگری انجام دهیم.

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

    برای شکستن تکرار یک حلقه for در جاوا، از continue استفاده می شود. هنگامی که برنامه به آن رسید، از قسمت ناتمام تکرار می گذرد، شمارنده را به روز می کند و به تکرار بعدی می رود.

    در ساختارهای while، همان continue به طور متفاوتی کار می کند: ما را به بررسی شرایط برای ادامه حلقه برمی گرداند. دستور دیگری - return - برنامه را به محلی که متد فراخوانی شده است، که حلقه در آن قرار دارد، برمی گرداند.

    هر دو ادامه و شکست را می توان با یک برچسب - برای پرش به قسمت مورد نظر کد - با قیاس با goto استفاده کرد:

    breakMark1; //با فرض اینکه Mark1 جایی بالاتر باشد:

    حلقه بی نهایت جاوا

    ایجاد یک حلقه نامتناهی آسان است - فقط پارامترها را برای:

    برای (؛ ؛) ()

    استفاده از آن سخت تر است. معمولا بی نهایت بودن حلقه یک خطای بحرانی است که مانع از اجرای برنامه می شود. بنابراین، هر چرخه باید از نظر توانایی انجام صحیح در زمان مناسب بررسی شود. برای این شما نیاز دارید:

    • شرایط وقفه را در بدنه حلقه مشخص کنید،
    • مطمئن شوید که متغیر در شرایط شکست می تواند مقداری را بگیرد که در آن حلقه متوقف شود.

    در این آموزش، ما یاد می گیریم که چگونه با مشاهده انواع مختلف حلقه ها، قسمت هایی از کد خود را به صورت کنترل شده مجددا اجرا کنیم. جاوا. درباره چرخه ها بیشتر بدانید: در حالی که, انجام دادن-در حالی که, برای. ما سعی خواهیم کرد تعیین کنیم که کدام یک از چرخه ها برای استفاده مناسب تر است.

    سپس نگاهی کوتاه به مبحث اعداد تصادفی خواهیم داشت ( تصادفیشماره). بیایید نگاهی بیندازیم به جاوا-کلاس تصادفیو چگونه او می تواند در بازی ما به ما کمک کند.

    همانطور که از نام آن پیداست، یک حلقه روشی برای اجرای همان قطعه کد به تعداد دفعات لازم است (در حالی که نتیجه اجرای کد در حلقه لزوما تکرار نخواهد شد). تعداد تکرارهای اجرای حلقه می تواند از قبل تعیین شود یا برای خود برنامه نویس ناشناخته باشد. ما انواع اصلی حلقه هایی را که زبان به ما پیشنهاد می دهد تا استفاده کنیم را در نظر خواهیم گرفت. جاوا.و سپس برخی از آنها را وارد بازی خود می کنیم و از این طریق آن را بهبود می بخشیم.

    حلقه while

    چرخه در حالی کهساده ترین نحو را دارد. یاد آوردن اگر- دستورالعمل هایی که کمی پیشتر مطالعه کردیم. در یک عبارت عملگر شرطی اگر(آنچه در داخل پرانتز بعد از کلمه آمده است اگر) تقریباً می توانید هر ترکیبی از عملگرها و متغیرها را قرار دهید. اگر عبارت درست باشد ( درست است، واقعی، سپس کدی که در بدنه بلوک محصور شده است اگراجرا خواهد شد. به طور مشابه، در یک چرخه در حالی کهما عبارتی قرار می دهیم که بتوان آن را ارزیابی کرد درست است، واقعییا نادرست، همانطور که در این کد نشان داده شده است:

    int x = 10; while(x> 0)(x--; //x با هر تکرار حلقه یک بار کاهش می یابد)

    اینجا چه خبره؟ اولین چیزی که خارج از حلقه است در حالی کهیک متغیر اعلام کردیم ایکسنوع بین المللیو مقدار "10" را به این متغیر اختصاص داد. سپس چرخه شروع می شود در حالی که، در شرایطی که نوشته شده است x > 0”- این بدان معنی است که کد نوشته شده در بدنه حلقه در حالی کهتا زمانی که متغیر اجرا می شود ایکسبیشتر 0 و شرط به مقدار نمی رسد نادرست. بنابراین، کد 10 بار اجرا می شود (x=10,x>0 ; x=9,x>0 ; x=8,x>0 ; x=7,x>0 ; x=6,x>0 ; x=5،x>0؛ x=4،x>0؛ x=3،x>0؛ x=2،x>0؛ x=1،x>0). در پاس اول حلقه x=10، در دوم 9 ، در سوم 8 و غیره. و وقتی که ایکسبرابر خواهد بود 0 ، در این صورت شرط ورود به حلقه انجام نمی شود و پس از پایان حلقه برنامه از خط بعدی ادامه می یابد.

    مانند اپراتور اگر، وضعیتی ممکن است که در آن حلقه حتی یک بار هم اجرا نشود. به مثال زیر دقت کنید:

    int x = 10; while(x > 10)( //برخی کد //اما تا زمانی که x بزرگتر از 10 نشود هرگز اجرا نمی شود)

    علاوه بر این، هیچ محدودیتی در پیچیدگی عبارت شرط یا مقدار کدی که می توان در بدنه حلقه نوشت وجود ندارد:

    int playerLives = 3; int alienShips = 10; while(playerLives >0 && alienShips >0)( //همه کدهای بازی اینجا //... //... // و غیره ) //برنامه زمانی که playerLives یا alienShips = 0 در اینجا ادامه خواهد داشت

    این حلقه تا هر یک از متغیرها ادامه خواهد داشت پخش زنده، یا کشتی های بیگانهمساوی یا کمتر از صفر نخواهد بود. به محض اینکه یکی از این شرایط رخ داد، عبارت شرط مقداری را به خود می گیرد نادرستو برنامه پس از اتمام حلقه با خط بعدی ادامه می یابد.

    شایان ذکر است که پس از ورود برنامه به بدنه حلقه، حتی اگر شرط حلقه تبدیل شود، اجرا خواهد شد. نادرست، جایی در بدنه حلقه، زیرا شرایط فقط در هنگام ورود بررسی می شود:

    int x = 1; while(x > 0)(x--; //x اکنون 0 است و شرط دفعه بعد به false ارزیابی می شود //اما این خط اجرا می شود //و این یکی //و حتی این یکی)

    در مثال بالا، بدنه حلقه یک بار اجرا می شود. علاوه بر این، می توانید شرطی را تنظیم کنید تا حلقه برای همیشه اجرا شود - این نامیده می شود چرخه بی پایانبه عنوان مثال:

    int x = 0; while(true)(x++; //من واقعا بزرگ خواهم شد!)

    از چرخه آنها خارج شوید. کلمه کلیدی زنگ تفريح

    اگر واقعاً نیاز به استفاده از یک حلقه بی‌نهایت داشته باشیم، چه می‌شود، اما برای اینکه بتوانیم تصمیم بگیریم در چه نقطه‌ای از آن خارج شویم. برای این منظور در جاوایک کلمه کلیدی وجود دارد زنگ تفريح. ما میتوانیم استفاده کنیم زنگ تفريحزمانی که باید از حلقه "خروج" کنیم:

    int x = 0; while(true)(x++; //من خیلی بزرگ خواهم شد!

    مطمئناً قبلاً حدس زده اید که امکان ترکیب ابزارهای مختلف تصمیم گیری مانند اگر،دیگر،تعویضداخل حلقه ما در حالی کهو چرخه های دیگر که در زیر بررسی خواهیم کرد. به عنوان مثال:

    int x = 0; int tooBig = 10; while(true)(x++; //بسیار بزرگ خواهم شد! if(x == tooBig)( break; //نه، این کار را نمی کنید. ) //کد در اینجا تا زمانی که x به 10 برسد در دسترس خواهد بود.

    شما می توانید بسیاری از تغییرات مختلف را یادداشت کنید، اما برای ما مهمتر است استفاده عملیاین دانش، بنابراین ما در حال حاضر به عمق نخواهیم پرداخت. بیایید به مفهوم دیگری نگاه کنیم که می تواند در یک حلقه عمل کند.

    کلمه کلیدی ادامه هید

    ادامه هیدتقریباً مشابه کار می کند زنگ تفريح. کلمه کلیدی ادامه هیدشما را از بدنه حلقه خارج می کند، اما سپس عبارت شرطی را بررسی کنید، به جای اینکه از جایی که پس از بسته شدن پرانتز حلقه متوقف شد، ادامه دهید، همانطور که در مورد اتفاق می افتد زنگ تفريح. مثال زیر کاربرد را نشان می دهد ادامه هید:

    int x = 0; int tooBig = 10; int tooBigToPrint = 5; while(true)(x++; //من خیلی بزرگ خواهم شد! if(x == tooBig)( break; ) //نه، این کار را نمی کنید. //کد در اینجا فقط تا زمانی که x 10 شود در دسترس خواهد بود if(x > = tooBigToPrint)( //دیگر روی صفحه چاپ نمی شود، اما حلقه ادامه می یابد؛ ) //کد در اینجا تا زمانی که x 5 شود در دسترس خواهد بود //کد برای چاپ x روی صفحه )

    توضیح: ما متغیرها را اعلام و مقداردهی اولیه می کنیم. ما به حلقه می رویم - به مقدار متغیر اضافه می کنیم ایکسواحد (اکنون ایکس= 1). علامت زدن "1 است 10؟" - نادرست- اپراتور اول اگرانجام نمی شود. بررسی بعدی"آیا 1 بزرگتر یا مساوی 5 است؟" - نادرست- اپراتور دوم اگرانجام نمی شود. خروجی ایکسبه صفحه نمایش

    موردی را در نظر بگیرید که ایکسهنگام وارد کردن حلقه مقدار 5 را می گیرد. ما به حلقه می رویم - به مقدار متغیر اضافه می کنیم ایکسواحد (اکنون ایکس= 6). علامت زدن "6 است 10؟" - نادرست- اپراتور اول اگرانجام نمی شود. بررسی بعدی این است که "6 بزرگتر یا مساوی 5 است؟" - درست است، واقعی- وارد بدن شود اگرادامه هید، از حلقه خارج شده و شرایط ورود حلقه را بررسی کنید.

    حالا گزینه کی است ایکسهنگام وارد کردن حلقه مقدار 9 را می گیرد. ما به حلقه می رویم - به مقدار متغیر اضافه می کنیم ایکسواحد (اکنون ایکس= 10). علامت زدن "10 است 10؟" - درست است، واقعی- وارد بدن شود اگرزنگ تفريح، از حلقه خارج شوید و کد در پشت بند بسته شدن حلقه ادامه می یابد در حالی که.

    حلقه do-while

    تقریباً مانند حلقه قبلی، به جز یک ویژگی - عبارت شرطی بعد از بدنه حلقه بررسی می شود. این به این معنی است که چرخه انجام دادن-در حالی کههمیشه حداقل یک بار اجرا می شود. به یک مثال نگاه کنید:

    int x = 0; انجام دهید (x++;) while(x< 10); //x теперь = 10

    کلید واژه ها زنگ تفريح،ادامه هید

    برای حلقه

    چرخه برایدارای نحو پیچیده تری نسبت به در حالی کهو انجام دادن-در حالی که، زیرا برای مقداردهی اولیه نیاز به دستکاری بیشتری دارد. بیایید ابتدا نگاهی به آن بیندازیم و سپس آن را قطعه قطعه کنیم:

    برای (int i = 0; i< 10; i++){ //Что-то, что должно произойти 10 раз будет записано здесь }

    کامپایلر آن را چگونه می بیند؟ مثل این:

    برای (اعلان و مقداردهی اولیه؛ شرط؛ تغییر پس از هر بار تکرار حلقه) ( // بدنه حلقه )

    • اعلان و مقداردهی اولیه- ما یک جدید ایجاد کردیم متغیر نوع بین المللیبا نام منو به آن مقدار اختصاص داد 0 ;
    • وضعیت- مانند سایر چرخه هایی که قبلاً بحث شد، در اینجا شرایط ورود به چرخه را بررسی می کنیم. اگر مقدار به صورت محاسبه شود درست است، واقعی، سپس وارد بدنه حلقه می شویم.
    • تغییر دادن بعد از هر چرخه- در مثال بالا من++ یعنی بعد از پاس بعدی حلقه به مقدار متغیر می رسیم منیک (1) اضافه کنید. علاوه بر این، می توانیم در متغیر تغییر و بنویسیم منبرای تفریق یک، به عنوان مثال:
    برای (int i = 10; i > 0; i--) ( // شمارش معکوس ) //کلید برای شروع، i = 0

    کلید واژه ها زنگ تفريح،ادامه هیدهمچنین می تواند در این چرخه استفاده شود.

    چرخه برایمقداردهی اولیه، بررسی شرایط و تغییر متغیر را کنترل می کند. بیایید بلافاصله پس از آشنایی با آن، این چرخه را در برنامه خود در عمل امتحان کنیم اعداد تصادفی و مواد و روش ها.