русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Case Years mod 10 of


Дата добавления: 2015-06-12; просмотров: 599; Нарушение авторских прав


1: writeln('рік.');

2 . . 4 : writeln('роки.');

0,5..9: writeln('років.');

End;

End;

Readkey;

End.

Домашнє завдання:

• прочитати сторінки 65 - 66 запропонованого підручника;

• завдання №147, №148, №155, №157, №161.

УРОК 18. Типи циклів

Мета уроку: дати поняття про вказівку повторення та її використання при розв'язуванні задач, про типи циклів та їх оформлення мовою програмування Паскаль і мовою блок-схем.

Теоретичний матеріал

На початку уроку повторити з учнями загальні відомості про цикли. У мові програмування Паскаль існує три типи циклів: for, repeatта while. Якщо кількість повторень відома заздалегідь, використовується оператор for, якщо кількість повторень невідома, застосовуються оператори repeatабо while.

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

1.for <параметр цихлу> := <S1> to <S2> do

Begin

<серія>;

end;

2. for <параметр циклу> := <S1> downto <S2> do

Begin

<серія>;

end;

де 51 і 52 — вирази, що визначають початкове і кінцеве значення параметру циклу; for.. do— заголовок циклу; <серія> — тіло циклу.

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

Параметр циклу, його початкове і кінцеве значення повинні належати до одного типу даних. При цьому можливе використання будь-якого скалярного типу: цілого (integer, byte, word, longint); булівського (boolean); символьного (char). Дійсний тип даних використовувати заборонено. Значення параметру циклу послідовно збільшується при for... toабо зменшується при for... downtoна одиницю при кожному повторі. Кількість повторів тіла циклу в операторі for можна визначити за таблицею:



Оператор S1<S2 S1=S2 S1>S2
for... to S2-S1+1 разів 1 раз He виконується
for...downto He виконується 1 раз S1-S2+1 разів

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

Приклад програми з оператором For

Умова задачі. Знайти суму всіх натуральних чисел від 1 до 100.

Program Example_1;

Uses crt;

Var Sum, i: integer;

Begin

Clrscr;

Sum:= 0;

For i:= 1 to 10 do Sum:= Sum + i;

Writeln('Sum = ' Sum); Readkey;

End.

Оператор повторення repeat. Цей оператор циклу складається із заголовку (repeat), тіла та умови закінчення (until).

Формат опису:

Repeat

<серія>

until < умова >;

Умова — вираз булівського типу. Про умови ми вже говорили в темі «Команда розгалуження», і всі особливості їх застосування та оформлення в цій команді нічим не відрізняються від попереднього випадку. У цьому циклі спочатку виконується серія (тіло циклу), а потім перевіряється умова виходу з циклу. Саме тому ця команда повторення інакше називається циклом із післяумовою. Якщо умова виходу з циклу хибна (false), цикл активізується ще раз, якщо результат істинний (true), відбувається вихід із циклу.

Такий оператор повторення має наступні характерні риси:

• використовується коли не відома заздалегідь кількість повторень;

• тіло циклу виконується хоча б один раз;

• тіло циклу виконується, поки умова хибна (false);

• у тілі може знаходитися будь-яка кількість операторів без операторнихдужок (begin... end);

• принаймні один оператор у тілі циклу повинен змінювати значенняумови, інакше цикл буде виконуватися нескінченно.

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

Приклад програми з оператором Repeat

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

Program Example_2;

Uses crt;

Var a,b,c: integer;

Begin

Clrscr;

Repeat

Write(*Введіть величини кутів трикутника: ');

Readln(а,b,с);

Until (a>0)and(b>0)and(c>0)and(a+b+c)=180;

End.

Оператор повторення while. Оператор while аналогічний оператору repeat, але перевірка умови виконання тіла циклу виконується на самому початку оператора, тому цикл інакше називається циклом із предумовою.

Формат опису:

while < умова > do

Begin

<серія>;

end;

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

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

Приклад програми з оператором While

Умова. Дано натуральне число N. Визначити кількість цифр у числі.

Program Example_3;

Uses crt;

Var N: longint; Counter: integer;

Begin

Clrscr;

Write('Введіть число: ');

Readln(N);

Counter:= 0;

While N > 0 do

Begin

Counter:=Counter+1; {Підрахунок кількості цифр}

N:=N div 10; {Відкидання останньої, цифри}

End;

Writeln("Кількість цифр у заданому числі дорівнює', N);

Readkey;

End.

Домашнє завдання:

• Прочитати сторінки 83 — 89 із запропонованого підручника;

• Вивчити означення, що прочитані на лекції.



<== предыдущая лекция | следующая лекция ==>
Case Years of | УРОК 19. Цикли з параметром


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.241 сек.