Студопедия

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

КАТЕГОРИИ:

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






Завдання. Вивчити умовні оператори циклу While і Repeat






Мета роботи

 

Вивчити умовні оператори циклу While і Repeat. Набути навичок їхнього використання при складенні циклічних програм.

 

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

 

Оператор циклу з передумовами While

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

 

Алгоритм роботи оператора наведено на рис.4.1.

...

 


Рисунок 4.1 – Алгоритм роботи оператора While

 

Доки значення логічної умови істина (true) – буде виконуватися блок операторів. Вихід з циклу здійснюється у тому разі, якщо умова стане хибною (false). Очевидно, що усередині блоку операторів мають бути оператори, котрі впливають на значення логічного виразу, інакше циклічний процес буде нескінченним.

Блок операторів може складатися лише з одного оператора. У цьому разі операторні дужки begin і end не потрібні.

Приклад 1. Обчислити добуток непарних чисел від 101 до 150 включно.

...

s: =0; n: =101;

while n< =150 do

begin s: =s+n;

n: =n+2;

end;

Приклад 2. Обчислити таблицю значень функції y=cos x, де x змінюється від 0 до 2 з кроком 0, 1.

x: =0;

while x< =2 do

begin y: =cos (x);

Str(x: 3: 1, sx); // перетворення числової змінної x в рядкову sx

Str(y: 6: 3, sy); // перетворення числової змінної y в рядкову sy

Memo1.Lines.Add(sx+’ | ‘+sy);

x: =x+0.1;

end;

2.2 Оператор циклу з післяумовою Repeat

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

 
 

 

 


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

Приклад 3. Обчислити добуток парних чисел від 10 до 14 включно.

p: =1; n: =10;

Repeat

p: =p*n;

n: =n+2;

until n> 14;

 

Приклад 4. Скласти фрагмент програми, що визначає чи є число n – простим.

Фрагмент програми має вигляд:

…..

k: =1;

Repeat

k: =k+1

until n mod k=0;

if k=n

then ShowMessage(' - Просте число')

else ShowMessage(' - Складене число');

end.

 

2.3 Особливості використання операторів циклу з умовами

Між оператором циклу з передумовою While і оператором циклу з післяумовою Repeat є три основні відмінності:

1 В операторі Repeat перевірка умови виходу з циклу виконується наприкінці, а не з початку циклу, як це відбувається в операторі While, тому блок операторів неодмінно виконується принаймні одноразово.

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

2 В операторі While вихід з циклу здійснюється, якщо значення логічного виразу буде хибним (false), а в операторі Repeat – Until - якщо воно істиним (true).

3 В операторі Repeat – Until операторні дужки begin і end навіть за наявності у блоці декількох операторів є непотрібні, а в операторі While у цьому разі вони мають бути наявними обов’язково.

3 Приклад циклічної програми з використанням умовних операторів циклу While і Repeat

Завдання

а) Обчислити суму знакозмінного ряду

до члена ряду, значення якого за модулем стане менше за задане число . Визначити кількість доданків. Значення х (-1< x< 1) вводити з клавіатури. Для віднайдення наступного члена ряду вивести рекурентну формулу й використати її у програмі.

б) Виконати табулювання функції при зміні х від а до b з кроком h. В якості функції використати добуток членів ряду, обчисленого у пункті а.

 

3.2 Виведення рекурентної формули

 

Нехай обчислюється сума ряду:

S = U1 + U2 +… + Uк + …

Тоді , звідси Uк = Uк-1 R.

Виведемо формулу R (рекурентну формулу).

Отже,

 

 

Далі записується вираз для першого члена ряду (при к = 1).


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

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