Нескінченний цикл - програмування на c, c # і java

Як можна зрозуміти з назви, нескінченний цикл - це цикл, написаний таким чином, що він ніколи не припинить своє виконання, так як ніколи не виконається умова виходу з цього циклу.

В цілому, нескінченні цикли вважаються поганим тоном і майже завжди є наслідком неправильно написаної програми. Однак трапляються моменти, коли такі цикли бувають досить корисні. Наприклад, якщо, необхідно, щоб програма не закривати або щоб з неї не було виходу. Операційні системи і деякі програми мікроконтролерів часто також представляють собою нескінченні цикли.
У більшості мовах програмування створити нескінченні цикли можна трьома способами - за допомогою циклів for, while і do ... while. Ми розберемо нескінченні цикли для мови C #, однак подивившись на реалізацію, дуже просто спроектувати код на будь-який інший мову програмування. Також внизу статті будуть листинги нескінченних циклів на мовах C, Java і С ++.

Як можна помітити, для рядового програміста нескінченні цикли можуть стати в нагоді досить рідко, але це не привід обходити цю тему стороною і не знати, як реалізувати такий прийом. Так що давайте для прикладу зробимо програму, яка виводила б цифри від 1 до нескінченності.

Нескінченний цикл for на С #

Створити нескінченний цикл вкрай просто. Наприклад для того, щоб зробити нескінченним цикл for, необхідно просто залишити порожні поля в дужках при ньому: for (;;).
Давайте подивимося, як це виглядає в програмі. Для початку ми оголосимо і инициализируем змінну i нулем. З неї буде вестися відлік чисел. Потім йде цикл for без умов в дужках. Всередині циклу ми зробимо інкремент змінної i, іншими словами - додамо до змінної одиницю. Ну і, нарешті, так само в циклі будемо виводити значення змінної i в консоль.

Результат роботи програми представлений на скріншоті нижче:

За кілька секунд цикл дорахував уже до 180 000, і буде продовжувати працювати дальше.Із відсутність умов програма не зможе визначити, коли необхідно припинити свою роботу. Зупинити цикл ми зможемо лише примусово закривши програму.

Нескінченний цикл while на С #

Зробити нескінченний цикл while також легко, як і for. У даного циклу буде матися умова, на відміну від циклу for, проте ця умова ніколи не змінитися і через це цикл ніколи не припинить свою роботу.

static void Main (string [] args)

Console. WriteLine (i);

Як ми бачимо, відмінність цієї програми від попередньої є лише в рядку 8, де оголошується цикл while і йому присвоюється значення true (також можна замість «true» написати «1», так як для комп'ютера ці поняття еквівалентні). Цикл буде працювати до тих пір, поки це значення не зміниться на false (або «0»). Але так як в коді ми ніде більше не міняємо це значення, програма продовжує працювати нескінченно.

Результат роботи програми такий же, як і у попередньої.

Нескінченний цикл do ... while на С #

Цикл do-while обов'язково один раз буде виконаний (бо він з умовою поста). Після першої ітерації виконується перевірка умови виходу з циклу, потім цикл повторно виконує блок операторів, поки умовний вираз в while не прийме значення false (але в нашому випадку цього не буде). Виконання програми з даними циклом ідентично виконанню програми, описаної вище:

Як ви бачите, ми взяли нескінченний цикл for і додали в нього умовний оператор if і оператор break (рядок 12). Таким чином ми дали команду, що, якщо змінна i становитиме 12 345, необхідно буде виконати вихід з циклу, не дивлячись на те, що цикл може продовжувати роботу, так як умови виходу в ньому не були виконані.
Якщо запустити програму. то результат буде таким:

Нескінченний цикл - програмування на c, c # і java

Більше в консоль нічого не записувалося. Після того, як змінна i досягне свого значення в 12 345, викликається оператор break, що забезпечує примусовий вихід із циклу.

Таким чином можна контролювати нескінченний цикл і переривати його в необхідних місцях або при досягненні необхідних цілей.

Дякую за увагу! Завантажити всі описані вище робочі листинги ви можете за наступним посиланням:

Нижче будуть представлені листинги нескінченних циклів на мовах C, Java і С ++

Нескінченний цикл for на С

int _tmain (int argc. _TCHAR * argv [])

Нескінченний цикл while на С

int _tmain (int argc. _TCHAR * argv [])

Нескінченний цикл do ... while на С

int _tmain (int argc. _TCHAR * argv [])

Нескінченний цикл for на Java

public static void main (String [] args) throws java. lang. Exception

System. out. println (i);

Нескінченний цикл while на Java

public static void main (String [] args) throws java. lang. Exception

System. out. println (i);

Нескінченний цикл do ... while на Java

public static void main (String [] args) throws java. lang. Exception

System. out. println (i);

Нескінченний цикл for на С ++

Нескінченний цикл while на С ++

Нескінченний цикл do ... while на C ++

Поділитися в соц. мережах:

Пошук по сайту

  • Нескінченний цикл - програмування на c, c # і java
    Перетворення кольорового зображення в чорно-біле C #
  • Нескінченний цикл - програмування на c, c # і java
    Приєднання бази даних в Microsoft SQL Server
  • Нескінченний цикл - програмування на c, c # і java
    try з ресурсами на Java
  • Нескінченний цикл - програмування на c, c # і java
    MySQL і C # - працюємо з базою даних
    • Сьогодні Нед Міс Весь час
    • Нескінченний цикл - програмування на c, c # і java
      Симплекс-метод. Реалізація
    • Нескінченний цикл - програмування на c, c # і java
      Створення інсталятора в Visual Studio
    • Нескінченний цикл - програмування на c, c # і java
      Калькулятор Windows Forms на мові C #
    • Нескінченний цикл - програмування на c, c # і java
      QR-код на С #: генеруємо, розпізнаємо, зберігаємо, завантажуємо.
    • Нескінченний цикл - програмування на c, c # і java
      Пошук елементарних циклів у графі