Опис і реалізація найпростіших циклічних програм

Матеріал з Фізмат Вікіпедії
Перейти до: навігація, пошук

Тема уроку: Опис і реалізація найпростіших циклічних програм.

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

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

                                                                       Хід уроку:

1. Організаційний момент:

Записуємо нову тему у зошиті "Опис і реалізація найпростіших циклічних програм "

2.Актуалізація опорних знань

Давайте пригадаємо що ви вже знаєте.

1). Що називається циклом?

2). Які цикли ви знаєте?

3). В яких випадках використовується цикл While (For)?

До дошки викликаються три учні. Кожному дається завдання описати один з типів циклів і розповісти, як він працює.

3. Розв'язування вправ.

На попередньому уроці ми з вами вивчили як описуються цикли в мові Паскаль, а сьогодні спробуємо навчитися застосовувати ці знання для розв'язування задач.

Задача1:

Із чисел від 10 до 99 вивести ті, сума цифр яких дорівнює n.

Питання до учнів:

-Яким типом циклу будемо користуватися?

- Яким чином можна виділити останню (молодшу) цифру числа?

-Яким чином можна виділити першу (старшу) цифру числа?

Позначимо через к- чергове число;

P1 - старшу цифру числа k,

P2 - молодшу цифру числа k,

S - суму цифр числа k, будемо друкувати тільки в тому випадку, коли сума P1 и P2 буде рівна S.

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

PROGRAM Z1;

VAR k,n,P1,P2,S:INTEGER;

BEGIN

WRITELN('введіть ціле число');

Readln(n); {вводимо ціле число}

For k:=10 to 99 do

Begin

P1:=k div 10; {виділяемо старшу цифру}

P2:=k mod 10; {виділяємо молодшу цифру}

S:=P1+P2;

IF S=n THEN WRITELN(k);

END;

END.

Задача 2:

Роздрукувати квадрати чисел, які знаходяться в діапазоні від 0 до 1 з кроком 0,2.

- Чи можна дану задачу розв'язати, використовуючи цикл For?

- Який цикл будемо використовувати?

Як і в попередній раз записуємо задачу біля дошки.

PROGRAM Z2;

var k, s : integer;

begin

s := 0;

while s <= 1 do

begin

k := sqr(s);

writeln (k);

s := s + 0.2;

end;

readln;

end.

Задача 3:

Для перевірки фізичного розвитку перевіряють зріст учнів. Складіть програму, в якій запитується зріст чергового учня і обчислюється після завершення медогляду середній зріст тих, що пройшли медогляд. Кількість учнів, які підлягають огляду наперед невідома.

-Що треба знати щоб отримати середній зріст?

Щоб отримати середній зріст С, треба знати кількість учнів К та їх сумарний зріст S.

- Який цикл будемо використовувати і чому?

Для обчислення величин K і S будемо використовувати цикл WHILE, оскільки кількість учнів наперед невідома. Однак, постає проблема, яку умову слід обрати для завершення циклу. Легше всього домовитися – в кінці робочого дня у відповідь на запит про зріст учня ввести яке-небуть фіктивне значенне, наприклад, 0.

PROGRAM Z3;

var k, s, r : integer; c : real;

begin

s := 0; k := 0;

write (‘введіть зріст учня’);

readln (r);

while r <> 0 do

begin

k := k + 1;

s := s + r;

write (‘введіть зріст учня’);

readln (r);

end;

c := s/k;

writeln (‘середній зріст учня’,c)

readln;

end.

4. Самостійна робота на комп'ютерах:

Для самостійної работи на комп'ютері учням пропонуються два варіанта:

Варіант 1.

1. Температура С в градусах Цельсія змінюється від 0 до 100 з кроком 5. Надрукувати таблицю переводу температури із градусів Цельсія в градуси Фаренгейта (F). Формула переводу: F = 1,8 C + 32.

2. Складіть таблицю значень функції y = 5x – 2 на відрізку [1; 20] з кроком b = 2.

3.* У перший день пловець проплив 3 км. В кожний наступний день він пропливав на 10% більше, ніж в попередній.

а) В якій по рахунку день пловець почне пропливати больше 5 км?

б) До якого дня він суммарно пропливе більше 30 км?

Варіант 2.

1. Надрукувати таблицю відповідності між вагою в фунтах і вагою в кг для значень від 1 до 10 фунтів з кроком 0,5 фунта. Формула переводу: 1 фунт = 400 г.

2. Складіть таблицю значень функції y = 5x2 – 2x + 1 на відрізку [-5; 5] з кроком b = 2.

3.* Врожай яблук в 1990 році склав 20 тон. Вподальшому кожні два роки врожай зменшувався на 20%.

а) Починаючи з якого року, буде зібрано менше 5 тон?

б) В якому році сумарний врожай яблук перевищить 90 тонн?

Задачі 3* підвищеної складності. Вони призначені для роботи учням, які проявляють підвищений інтерес до предмету. Їх можно запропонувати учням, у яких залишився час після виконання основної роботи. Учнів, які правильно розв'язали дані задачі отримують підвищені підсумкові оцінки за работу на уроці.