Главная » Файлы » Для вчителя » Інформатика [ Добавить материал ]

Вказівка повторення та її опис мовою програмування. Конспект
[ Скачать с сервера (91.5 Kb) · Скачать удаленно () ] 19.01.2010, 02:15
Тема уроку. Вказівка повторення та її опис мовою програмування.
Мета уроку: дати поняття про вказівку повторення та її використання при розв'язуванні задач, про типи циклів та їх оформлення мовою програ¬мування Паскаль і мовою блок-схем.
Тип уроку: вивчення нового матеріалу.

І. Організаційний момент
Вправа на активізацію учасників „Емоція по колу”
ІІ. Мотивація вивчення нового матеріалу
Циклічність – загальна властивість розвитку та існування будь-якої біологічної системи. Циклічність в природі, в розмноженні, в життєдіяльності клітини підтримує необхідний баланс для їх існування. Якщо подивитись глобально на винаходи людства, то помітно, що практично всі вони моделюють природні об’єкти. Не виключення і цикл як одна з базових логічних конструкцій.
ІІІ. Вивчення нового матеріалу
Формую проблемну ситуацію.
Складіть програму для виведення на екран всіх цілих чисел від 1 до 5; від 1 до 10; від 1 до 1000.
(Очікується використання великої кількості вказівок виведення.)
А чи можна знайти більш раціональний спосіб виконання цього завдання? Яку закономірність слід реалізувати?
Відповідь на це запитання допоможе знайти сьогоднішній урок.
Повідомляю тему та мету уроку…
3.1 Інформаційне занурення (пояснення і демонстрацією за допомогою мультимедійної дошки)
Цикл — це послідовність операторів, що може виконуватися більше одного разу.
Цикли використовуються при розв'язуванні таких задач, де необхідно повторити деяку по¬слідовність команд більше одного разу.
Відомо два типи команди повторення, що сут¬тєво різняться:
— цикл із відомою заздалегідь кількістю по¬вторів;
— цикл із невідомою кількістю повторів.
Щоб це пояснити, розглянемо приклад. Вчи¬телька в першому класі дає дітям завдання: «Діти, напишіть, будь ласка, десять літер «А» та рядочок літер «Б». Чим відрізняються ці два зав¬дання? В першому випадку зразу ж відомо, скільки разів необхідно повторювати виконан¬ня команди «напишіть літеру А», а в другому — кількість літер «Б» буде залежати від різних факторів: почерку дитини, розміру літер, відстані між літерами тощо. Ясно, що в першо¬му випадку ми можемо чітко обумовити кількість повторів, а в другому — необхідно знайти таку умову, перевіряючи яку, дитина зможе закінчити свою роботу.
Примітка: Даю дітям можливість знайти цю умову та придумати свої подібні варіанти циклів.
У мові програмування Паскаль існує три типи циклів: for, repeat та while. Якщо кількість повто¬рень відома заздалегідь, використовується оператор for, якщо кількість повторень невідома, застосовуються оператори repeat або while.
Оператор повторення for.
Цей оператор повторення інакше називається циклом з параметром (або лічильником). Він скла¬дається із заголовку та тіла циклу і може бути по¬даний у двох форматах:
1. for <параметр циклу> := to do
begin <серія>; end;
2. for <параметр циклу> := downto do
begin <серія>; end;
де S1 і S2 — вирази, що визначають початкове і кінцеве значення параметру циклу;
for.. do — заголовок циклу; <серія> — тіло циклу. Тіло циклу може бути простим або складеним.
Цей оператор забезпечує виконання тіла цик¬лу доти, доки не будуть перебрані всі значення параметра циклу від початкового до кінцевого.
Параметр циклу, його початкове і кінцеве зна¬чення повинні належати до одного типу даних. При цьому можливе використання будь-якого скаляр¬ного типу: цілого (integer, byte, word, longint); булівського (boolean); символьного (char). Дійсний тип даних тут не використовується. Значення параметру циклу послідовно збільшується при for... to або зменшується при for... downto на одиницю при кож¬ному повторі.
Кількість повторів тіла циклу в операторі for можна визначити за таблицею:
Таблиця
Оператор S1S2
for...to S2-S1+1 разів 1 раз Не виконується
for...downto Не виконується 1 раз Sl-S2+1 разів

В операторі for після do може знаходитися скла¬дений оператор, у тілі якого заборонені оператори, що змінюють значення параметру циклу. Після нор¬мального завершення циклу значення параметру циклу дорівнює кінцевому значенню.
Цикл може не виконатися зовсім (див. табл.), але ніколи не може «зациклитися», на відміну від наступних двох операторів повторення.
Приклад програми з оператором For
Умова задачі. Вивести на екран своє прізвище 300 разів.
(Учні дають відповідь на проблемне запитання)
Оператор повторення repeat
Наступний оператор циклу складається із за¬головку (repeat), тіла та умови закінчення (until). Формат опису:
repeat
<серія> until < умова >;
Умова — вираз булівського типу. Про умови ми з вами вже говорили в темі «Команда розгалу¬ження», і всі особливості їх застосування та оформ¬лення в цій команді нічим не відрізняються від попереднього випадку.
В цьому циклі спочатку виконується серія (тіло циклу), а потім перевіряється умова виходу з цик¬лу. Саме тому ця команда повторення інакше на¬зивається циклом із післяумовою. Якщо умова ви¬ходу з циклу хибна tfake), цикл активізується ще раз, якщо результат істинний (true), відбувається вихід із циклу.
Мовою блок-схем цей цикл описується таким чином:

Такий оператор повторення має наступні характерні риси:
• використовується у випадках, коли користувачу не відома заздалегідь кількість повторень;
• тіло циклу виконується хоча б один раз;
• тіло циклу виконується, поки умова хибна False;
• у тілі може знаходитися будь-яка кількість операторів без операторних дужок (begin... end);
• принаймні один оператор у тілі циклу пови¬нен змінювати значення умови, інакше цикл буде виконуватися нескінченно.
Для передчасного виходу з циклу можна при¬своїти параметру циклу значення, що виходить за діапазон дозволених значень.
Приклад програми з оператором Repeat
Умова задачі. Перевірка коректності введення. Дано три числа, що задають величини кутів три¬кутника. Визначити, чи можна побудувати трикутник, що має задані кути. Якщо ні, користувач по¬винен ввести інші дані.
Розв'язання:
Program Example_2;
Uses crt;
Var a,b,c: real;
Begin
Clrscr;
Repeat
Write('Введіть довжини сторін трикут¬ника: ');
Readln(a,b,c);
Until
(a>0)and(b>0)and(c>0)and(а+b+с)=180;
End.
Оператор повторення while
Оператор while аналогічний оператору repeat, але перевірка умови виконання тіла циклу виконуєть¬ся на самому початку оператора, тому цикл інак¬ше називається циклом із передумовою.
Формат опису:
while < умова > do begin <серія>; end;
Умова — булівський вираз, а серія — простий або складений оператор. Перед кожним виконан¬ням тіла циклу обчислюється значення виразу умо¬ви. Якщо результат є істинним (true), тіло циклу виконується, а інакше відбувається вихід із циклу і перехід до першого після while оператору. Якщо перед першим виконанням циклу значення вира¬зу було хибним false, то тіло циклу взагалі не виконується і відбувається перехід на наступний оператор.
Мовою блок-схем цей цикл описується таким чином:
Як і в попередньому випадку, програміст сам повинен подбати про переприсвоєння значення змінної, що визначає умову виходу з циклу, інак¬ше він буде нескінченним.
Приклад програми з оператором While
Умова задачі. Дано натуральне число N. Визна¬чити кількість цифр у числі.
Розв'язок:
Program Example_3;
Uses crt;
Var N: longxnt; Counter: integer;
Begin
Clrscr;
Write('Введіть число: ');
Readln(N);
Counter:= 0;
While N > 0 do Begin
Counter:=Counter+l; {Підрахунок кількості цифр}
N:=N div 10; {Відкидання останньої цифри}
End;
Writeln(' Кількість цифр у заданому числі дорівнює ', N);
Readkey;
End.
IV. Практичний тренінг
– учні формулюють основні відмінності між циклами
Задача. Знайти суму всіх натуральних чисел від 1 до 100.
Розв'язання:
Program Example_l;
Uses crt;
Var Sum, і: integer;
Begin
Clrscr; Sum:= 0;
For i:= 1 to 10 do Sum:= Sum + і;
Writeln('Sum= V, Sum); Readkey;
End.
Резервна задача: знайти добуток всіх натуральних чисел з проміжку [a;b], які є точними квадратами цілих чисел.
V. Підсумки уроку.
Як, на вашу думку, можна використати циклічні конструкції при створенні програми-тесту? (підводжу до підсумку про застосування циклу для повторення тесту спочатку, або для встановлення пароля)
V. Домашнє завдання:
• опрацювати конспект
• складіть програму, яка запитуватиме, скільки Вам років, доки ви не введете „100”.

Категория: Інформатика | Добавил: referatwm | Теги: Вказівка повторення та її опис мово
Просмотров: 815 | Загрузок: 284 | Рейтинг: 5.0/2