§ 5. Аператар цыкла

5.1. Аператар цыкла з перадумовай

 

Для запісу аператара цыкла з перадумовай выкарыстоўваецца каманда while. Фармат каманды:

while. Фармат каманды:

while (<умова>){

  цела цыкла;

}

Умова ў запісе аператара цыкла можа быць простай і састаўной. Фігурныя дужкі могуць быць прапушчаны, калі цела цыкла складаецца з адной каманды.

Пымер 5.1. Напісаць праграму, якая вызначыць колькасць лічбаў у натуральным ліку n.

Этапы выканання задання

I. Зыходныя даныя: n (зададзены лік).

II. Вынік: k — колькасць лічбаў у ліку.

III. Алгарытм рашэння задачы.

1. Увод зыходных значэнняў. 
2. Пачатковае значэнне пераменнай  k = 0. 
3. Каб палічыць колькасць лічбаў у ліку, будзем дзяліць лік на 10 да таго часу, пакуль лік большы за 1. Паколькі ўмова працягвання працы невядомая, то будзем выкарыстоўваць цыкл  while
4. У цыкле будзем памяншаць лік n у 10 разоў і павялічваць значэнне k на 1.
5. Вывад выніку.

IV. Апісанне пераменных: n – int.

Цыкл while працуе да таго часу, пакуль умова цыкла праўдзівая. Для таго каб цыкл завяршыў сваю работу, у целе цыкла павінны быць каманды, выкананне якіх прывядзе да таго, што ўмова цыкла стане непраўдзівай. Калі такіх каманд няма, цыкл выконваецца бясконца. Такую сітуацыю называюць зацыкліваннем. У выпадку зацыклівання трэба перапыніць выкананне праграмы. У Code::Blocks для гэтага можна выкарыстоўваць кнопку  .

Ппрыклад 5.1.

V. Праграма:

#include<iostream>

#include<math.h>

 

using namespace std;

 

int main()

{

  int n;

  cout << "n = ";

  cin >> n;

  int k = 0;

  while (> 0)

  {

    ///уменьшение числа в 10 раз

    /= 10;

    k++;

  }

  cout << "v chisle " << k; 

  cout << " cifr" << endl;

  return 0;

}

IV. Тэсціраванне.