Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Оператори циклу.






Мета роботи – вивчення та набуття навичок використання операторів циклу для організації циклічних ділянок програми.

 

10.1. Загальні відомості

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

У ТВ передбачено використання трьох операторів циклу

for … next

while … wend

do … loop.

 

10.1.2. Оператор циклу while … wend

Оператор while … wend організує виконання певного блоку програми доки буде істинна умова, що вказана після службового слова while.

Формат оператора

while умова

тіло циклу

wend

умова – будь-яке відношення або логічний вираз, що приймає значення (- 1), якщо умова істинна та (0), якщо умова хибна.

Службове слово while визначає початок циклу та організує перевірку істинності умови. Якщо умова істинна, то виконуються оператори, що утворюють тіло циклу. У протилежному випадку керування програмою передається у рядок, що є наступним за службовим словом wend.

Службове слово wend завершує циклічну конструкцію та після виконання тіла циклу повертає керування у рядок зі службовим словом while.

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

Приклад:

i=0

j=5

while i< j

i=i+sin(i/2)

print i

wend

У наведеному прикладі оператор тілу циклу виконується п’ять разів. Під час виконання цього оператора циклу на екран буде виводитись значення виразу i=i+sin(i/2) п’ять разів. Коли і буде дорівнювати 5 умова i< j буде хибною й цикл завершить свою роботу.

Цикли while … wend можуть міститись один в іншому. У цьому випадку їх називають вкладеними циклами. Тобто до тіла зовнішнього циклу входить внутрішній. Кількість таких вкладень необмежена. Вимогою до створення таких конструкцій є те, що цикли не можуть перехрещуватись та повинні мати різні імена змінних, що задають умови циклів.

Приклад вкладених циклічних операторів:

while i=1

i=j-j/2

while j> 1

input a

j=a+a^2

while hh=4

input hh

s1=sa+s1+s2

wile s2< 100

input s

s2=s2+s

wend

wend

wend

wend

У цьому випадку кожному while повинен відповідати свій wend.

 

10.1.3. Оператор циклу do…loop.

Організує виконання певного блоку програми (тіла циклу) з перевіркою умови закінчення на початку або в кінці циклу.

Для перевірки умови закінчення циклу використовуються службові слова while (доки) та util (доки не).

Якщо використовується while, то цикл продовжується поки істинна умова, що стоїть за while.

Якщо використовується until, то цикл продовжується поки наступна за until умова не стане істинною.

 

Формати оператора:

Перевірка на початку циклу

do while умова тіло циклу loop   do until умова тіло циклу loop
Перевірка у кінці циклу
do тіло циклу loop while умова   do тіло циклу loop until умова

 

Можливі й подвійні перевірки умови завершення циклу – на початку та у кінці. Для цього може бути використана комбінація наведених форматів запису оператора.

Як " умова" може використовуватись будь-яке відношення або логічний вираз, що приймає істинне (-1) чи хибне (0) значення. Наприклад:

 

do

cls

input " "; password$

loop until password$=" myname" or password$=" MYNAME"

cls

locate 12, 30

print " Wellcome"

 

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

Оператори doloop можуть бути корисними для тимчасової зупинки виконання програми до натискання будь-якої клавіші. Для цього у відповідне місце програми має бути поставлена конструкція:

 

print " Для продовження програми натисніть будь-яку клавішу"

do

loop until instat

 

Функція instat має значення 0 до натиснення будь-якої клавіші. Після натискання вона отримує значення -1. Таким чином для виходу з наведеного циклу необхідно натиснути будь-яку клавішу. При цьому у службове слово until функція instat поверне значення -1, яке сприймається як істина умова.

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

 

10.2. Послідовність виконання роботи

Перше заняття

10.2.1. Увімкнути комп’ютер та завантажити ТВ.

10.2.2. Відповідно до варіанту завдання (див. лаб. роб. № 4) для циклічного алгоритму розробити програму з використання оператора циклу while … wend. Набрати текст та злагодити програму.

10.2.3. Результати обчислень вивести на екран з необхідними коментарями.

10.2.4. У разі успішного виконання переписати виведені результати до протоколу.

10.2.5. Переписати текст працюючої програми до протоколу.

 

 

Друге заняття

10.2.6. Увімкнути комп’ютер та завантажити ТВ.

10.2.7. Відповідно до варіанту завдання (див. лаб. роб. № 4) для циклічного алгоритму розробити 4 окремі програми з використання оператора циклу do … loop (з використанням while, until та перевірками на початку та наприкінці циклу, відповідно). Набрати текст та злагодити програму.

10.2.8. Результати обчислень вивести на екран з необхідними коментарями.

10.2.9. У разі успішного виконання переписати виведені результати до протоколу.

10.2.10. Переписати текст працюючої програми до протоколу.

 

10.3. Зміст протоколу.

 

10.3.1. Протокол лабораторної роботи має містити назву, мету роботи, теоретичну частину в обсязі необхідному для виконання та захисту лабораторної роботи, блок-схему та програми відповідно до завдання.

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

10.3.3. Студенти, що не мають належним чином оформлений протокол до виконання та захисту лабораторної роботи не допускаються.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.009 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал