17534

Дослідження операторів ітерації (циклів) в С++

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторна робота №3 Дослідження операторів ітерації циклів Мета Набути практичних навичок щодо використання циклів у програмного коду. Теоретичні відомості Цикл оператор ітерації це різновид керуючої конструкції яка призначена для організації багат

Украинкский

2013-07-04

58 KB

5 чел.

Лабораторна робота №3

Дослідження операторів ітерації (циклів)

Мета

Набути практичних навичок щодо використання циклів у програмного коду.

Теоретичні відомості

Цикл (оператор ітерації) - це різновид керуючої конструкції, яка призначена для організації багаторазового виконання набору інструкцій. Також циклом може називатися будь-яка послідовність інструкцій, яка багаторазово виконується.

Види циклів:

1. Безумовні цикли

2. Цикл з передумовою

3. Цикл з постумовою

4. Цикл з лічильником

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

a=0; while(a<10)

    {

      cout<<a++;

     }

Цикл з постумовою. Цикл, у якому умова перевіряється після виконання тіла циклу. Звідси випливає, що тіло завжди виконується хоча б один раз. Реалізується оператором
do-while.

a=0; do

     {

      cout<<a++;

     } while(a<10);

Оператори while, do-while використовуються, коли невідомо наперед, скільки разів цикл буде виконуватись і перевіряють необхідність завершення при кожній ітерації.

Цикл з лічильником. Цикл, у якому деяка змінна змінює своє значення від заданого початкового значення до кінцевого значення з деяким кроком, і для кожного значення цієї змінної тіло циклу виконується один раз. У більшості процедурних мов програмування реалізується оператором for, в якому вказується: лічильник (змінна циклу), необхідна кількість проходів і крок, з яким змінюється лічильник.

Оператор for використовується, коли:

  1.  немає потреби керувати циклом із середини;
  2.  керування циклом полягає в інкременті та декременті (наприклад, при проході по елементам контейнера);
  3.  тоді, коли відомо, скільки ітерацій має виконати цикл.

Оператор for може містити декілька лічильників, від яких може залежати умова чи зміна лічильника:

for (int i=0, int j=0; i+j<100; i++, j++)

{…}

У циклі може існувати декілька умов виходу. При хибності будь-якої із заданих умов цикл завершується:

for(int a=0, b=5; a<10 && b>2; a++, b--)

{…} 

Умова виходу із циклу може залежати не тільки від змінної-лічильника, але будь-яких інших факторів (закінчення строк у потоці, тощо):

for (int i=0; (text=serlz.ReadLine())!=null; i++)

{…}

Якщо немає необхідності задавати якусь із частин оператору for її можна пропустити:

for(; i< node.Length; i++)

{…}

Якщо немає необхідності виконувати якісь операції в тілі циклу, то можна створити пустий оператор for:

for(int i=0; text[i]!=’\0’; i++);

Оператор переривання.  Оператор break забезпечує припинення виконання самого внутрішнього із об'єднуючих його операторів  break switch, do, for, while. Після виконання оператора break керування передається операторові, що іде за перерваним.

Оператор продовження continue

Оператор  continue, як і оператор  break, використовується тільки всередині операторів циклу, але на відміну від останнього виконання програми продовжується не з оператора, що іде за перерваним оператором, а з початку перерваного оператора.

Наприклад,

int main()

 { int a,b;

   for (a=1,b=0; a<100; b+=a,a++)

{ if (b%2) continue;

           ...    // обробка парних сум  

     }

   return 0;

 }

Коли сума чисел від 1 до а стає непарною, оператор continue передає керування на чергову ітерацію циклу  for, не виконуючи оператори обробки парних сум.

Оператор continue, як і оператор break, перериває самий внутрішній із об'єднуючих його циклів.

Завдання

Побудувати модель програмного коду відповідно до свого варіанту. ( див. таблицю варіантів).

Таблиця варіантів

1

Скласти на комп’ютері квадрат Піфагора - таблицю множення натуральних чисел.

2

Знайти суму членів послідовності  (кількість членів задається користувачем)

3

Знайти суму цифр у числі N.

4

Cкласти програму табуляцій значень функції у = cos(x) для аргумента х, котрий змінюється від 0о до 180о із шагом 6о.

5

Визначити 20-те число Фібоначчі. Числа Фібоначчі вираховуються: перші два значення дорівнюють 0 та 1, а кожне наступне значення – це сума двох попередніх

6

Задано  20 випадкових елементів. Знайти суму додатніх елементів

7

За допомогою цикл з пост- або передумовою написати програму підрахунку факторіала заданого цілого числа.

8

Обчислити суму 5 елементів геометричної прогресії, що зменшується: початкове значення – 81, крок – 3

9

Сформувати послідовність з 10 чисел Фібоначчі: перші два значення дорівнюють 0 та 1, а кожне наступне значення – це сума двох попередніх

10

Обчислити добуток елементів арифметичної прогресії, що зростає: початкове значення – 2, кінцеве – 30, крок – 4

11

За допомогою цикла з передумовою або цикла з постумовою написати програму піднесення числа А до цілого степеня N.

12

Створити програму, що вираховує для заданого х суму: (кількість членів задається користувачем)

13

Обчислити суму елементів арифметичної прогресії, що убуває: початкове значення – 3, кінцеве – -4, крок – /2

14

Обчислити спільний дільник для двох цілих десяткових чисел.

15

Cкласти програму табуляцій значень функції у = sin(x) для аргумента х, котрий змінюється від 0 до 2,   із шагом /6,.

Примітка: аргументи функцій sin(x) та cos(x) визначаються в радіанах.
2 радіан = 360о,    1радіан = /180о .

Контрольні питання

  1.  Що таке цикл?
  2.  Які види циклів ви знаєте?
  3.  Опишіть конструкцію циклів з постумовою та передумовою, циклів з лічильником.
  4.  Коли використовується оператор for?
  5.  Чим характеризуються різні типи операторів повторення? За яким призначенням вони використовуються?
  6.  Як конструювати дострокове завершення циклів?


 

А также другие работы, которые могут Вас заинтересовать

50250. Определение электроемкости конденсатора при последовательном и параллельном соединении 164.5 KB
  Определение электроемкости конденсатора. Принципиальная схема установки или её главных узлов: Схема установки исследуемого конденсатора. Емкость конденсатора определяется с помощью соотношения:...
50251. Пристрій й основні елементи твердотельных лазерів 1.29 MB
  Устаткування й прилади Лазерна технологічна установка Квант16 ; лазер газовий ЛГ105; генераторна головка твердотільного лазера; лазерний стрижень лампа накачування відбивний блок набір дзеркал резонатора випромінювач газового лазера; штангенциркуль лінійка; матеріали вата спирт метиловий дрантя. Процес під дією якого атоми переводяться на верхні рівні називається накачуванням. Існує кілька методів накачування. У цьому випадку електромагнітна хвиля що поширюється в напрямку перпендикулярному до дзеркал буде по черзі відбиватися...
50252. Технологія одержання отвору в заготовці електроерозійної (електроіскровий) обробкою 237.5 KB
  Мета роботи: вивчити процес електроіскрової обробки технологію одержання отвору в заготовці різними способами цього виду обробки. Короткі теоретичні відомості Призначення електроерозійної обробки Цей вид обробки забезпечує великий економічний ефект при виготовленні деталей складного контуру криволінійних отворів і отворів складної форми розрізання дорогих матеріалів. Принцип електроерозійної обробки Електроерозійний спосіб обробки був відкритий в 1943 р. Один з видів електроерозійної обробки – електроіскров що характеризується імпульсами...
50253. ОПРЕДЕЛЕНИЕ МОМЕНТА ИНЕРЦИИ МАХОВИКА. МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ 167 KB
  ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ Вращением абсолютно твёрдого тела вокруг неподвижной оси называется такое его движение при котором все точки тела движутся в плоскостях перпендикулярных к неподвижной прямой называемой осью вращения тела и описывают окружности центры которых лежат на этой оси. Основной закон динамики вращательного движения тела закреплённого в одной неподвижной точке формулируется следующим образом: скорость изменения момента импульса тела вращающегося вокруг неподвижной точки равна...
50254. Определение длины световой волны по методу Юнга. Методическое указание 297 KB
  Совмещая перекрестие сначала с одной интерференционной полосой а затем с другой с помощью двойной риски перемещающейся по внутренней линейной шкале определяют целое число мм а по внешней круговой шкале – десятые и сотые доли мм. Отсчёты на внешней шкале барабана снимаются напротив неподвижной тонкой риски нанесённой на неподвижную часть барабана. Для этого необходимо плавно вращая барабан З установить сначала перекрестие приблизительно в центре выбранной полосы в верхней части наблюдаемого поля обычно резкое изображение...
50255. Типические признаки жанров журналистики. Аналитичность журналистского материала 50.5 KB
  Информирование общественности о фактах действительности; пропаганда и распространение опыта; популяризация знаний; анализ окружающей действительности (освещение результатов анализа, постановка проблем, пути их решения)...
50256. ИЗУЧЕНИЕ ЭЛЕКТРОСТАТИЧЕСКОГО ПОЛЯ МЕТОДОМ ЭЛЕКТРОЛИТИЧЕСКОЙ ВАННЫ 108.5 KB
  На этом основан метод исследования электростатических полей получивший название метода электролитической ванны. На дно ванны нанесена масштабнокоординатная сетка. На координатной сетке ванны отобразить положение электродов 2 и 3.
50257. Електромагнітне поле та електромагнітна індукцій 284.5 KB
  Експериментально встановлено (теоретично це передбачили М. Фарадей і Дж. Максвелл), що магнітне поле виникає також тоді, коли довільно змінюється напруженість електричного поля. Так, якщо з’єднати пластини зарядженого конденсатора провідником, то магнітне поле існуватиме як навколо провідника
50258. Определение производственного цикла изготовления партии отливок 652.99 KB
  Определение производственного цикла изготовления партии отливок, изучение методов определения и оценки технологичности конструкции изделия, разработка рекомендаций по разработке технологических процессов, описание структуры и продолжительности производственного цикла, организация путей сокращения производственного цикла.