UkrReferat.com
найбільша колекція україномовних рефератів

Всього в базі: 75843
останнє поновлення: 2016-12-04
за 7 днів додано 10

Реферати на українській
Реферати на російській
Українські підручники

$ Робота на замовлення
Реклама на сайті
Зворотній зв'язок

 

ПОШУК:   

реферати, курсові, дипломні:

Українські рефератиРусские рефератыКниги
НазваПАСКАЛЬ: цикл "поки" та його використання (реферат)
Автор
РозділІнформатика, компютерні науки
ФорматWord Doc
Тип документуРеферат
Продивилось2209
Скачало254
Опис
ЗАКАЧКА
Замовити оригінальну роботу

ПАСКАЛЬ: ЦИКЛ "ПОКИ" ТА ЙОГО ВИКОРИСТАННЯ

 

Цикл – це ряд подій, що регулярно повторюються в тому самому порядку.

 

З Оксфордського словника англійської мови

 

1. Поки...

 

Приклад 4.1. Розглянемо дещо штучну задачу: написати цілочислову функцію

з ім'ям pow для обчислення степеня an за довільним натуральним a і n? 0.

Задача має елементарне розв'язання: an=enlna, і в тілі функції достатньо

написати pow:=round(exp(n*ln(a))). Проте невід'ємні степені цілих чисел

є цілими, тому спробуємо обійтися без нецілих виразів із функціями exp і

ln.

 

За означенням, an є a? a? ...? a, тобто a0=1, ai=ai-1? a для i=1, 2, ...

, n. Це підштовхує до спроби обчислення an шляхом багаторазового

множення на a. Спочатку шуканий степінь p=1, і треба n разів умножити

його на a. Після першого множення p=a, і треба n-1 разів умножити його

на a тощо. Перед останнім множенням p=an-1. Таким чином,

 

спочатку p=1 і треба виконати n множень на a, і поки залишаються

"невикористані" множники a, ми множимо p на a, одержуємо новий степінь p

і запам'ятовуємо, що "невикористаних" множників стало менше на 1.

 

Остання фраза, власне, і є алгоритмом обчислення an. Перекладемо його на

мову Паскаль.

 

Нам потрібні змінні p і a для збереження степеня і його основи, а також

змінні n і k для збереження показника степеня й кількості

"невикористаних" множників. Змінні a і n – параметри нашої функції, тому

їх початкові значення тут не важливі. Тепер алгоритм можна уточнити:

 

p:=1; k:=n;

 

поки k>0 виконувати {залишилися "невикористані" співмножники}

 

begin p:=p*a; k:=k-1 end

 

Якщо перекласти на англійську мову слова поки і виконувати як while і

do, то утвориться:

 

p:=1; k:=n;

 

while k>0 do{залишилися "невикористані" співмножники}

 

begin p:=p*a; k:=k-1 end

 

Але це вже Паскаль! Справа в тім, що вираз вигляду

 

while умова do оператор

 

називається while-оператором, або оператором циклу з перед-умовою. Вираз

"while умова do" називається заголовком циклу, "оператор" – тілом. Ми б

назвали while-оператор циклом з умовою продовження, але цей термін

дотепер у літературі не з'являвся.

 

Опишемо семантику оператора циклу та прокоментуємо всі ці назви.

Виконання оператора циклу починається з того, що обчислюється умова,

записана в заголовку. Якщо вона істинна, то виконується тіло циклу і

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

при черговому обчисленні умова стає хибною, то тіло циклу не виконується

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

при першому обчисленні умова хибна, то тіло циклу не виконується жодного

разу.

 

Отже, обчислення умови й виконання тіла повторюється, тобто має

циклічний характер. Можна сказати, що обчислення умови й виконання тіла

утворюють цикл, як день і ніч, змінюючи одне одного, утворюють добу.

Істинність умови веде до продовження виконання оператора циклу, хибність

– до його завершення, тому умова називається умовою продовження. Вона

також називається перед-умовою, оскільки з її обчислення починається

черговий цикл. Останній цикл неповний – у ньому тільки обчислюється

-----> Page:

0 [1] [2] [3] [4] [5] [6] [7]

ЗАМОВИТИ ОРИГІНАЛЬНУ РОБОТУ