1 2 3 4 Тема. Що ми розуміємо під масивом у програмуванні? Як здійснюється опис таблиці? Що таке «індекс масиву»? Які масиви називаються одновимірними, які — двовимірними? Як організовується введення елементів масиву? Як організовується виведення елементів масиву? Як відбувається обробка масивів?
Розв'язання Очевидно, що для знаходження середньодобової температури потрібно визначити середнє арифметичне зі значень 24 температур протягом доби. Відповідно спочатку слід визначити суму цих температур. Позначимо цю суму s, її початкове значення дорівнює нулю. Результатом виконання алгоритму є отримане значення суми температур s, поділене на 24, яке буде дійсним числом. Позначимо його ts. program z1; uses crt; var trarray [1..24] of integer; і,s:integer; ts:real; begin clrscr; writeln('Уведіть значення температур:'); for i:=l to 24 do begin write('t[‘,i,']=') ; readln(t[i]); end; s: =0; for i:=l to 24 do s:=s+t[i]; ts:=s/24; writeln('Середня температураза добу:',ts:2:3); readln; end. Зауваження. Для знаходження добутку елементів масиву достатньо зробити дві зміни у наведеній вище програмі: замінити операцію додавання операцією множення і початкове значення змінної, в якій буде накопичуватися добуток, замінити на 1. Задача 2.( Добуток елементів) В одновимірному масиві дійсних чисел а [ 1: n] знайдіть добуток усіх елементів з парними індексами. Розв'язання Позначимо добуток змінною p. Його початкове значення дорівнює 1. Перший спосіб program z2; uses crt; var a:array [1..1000] of real; i,n:integer; p:real; begin clrscr; write('Уведіть кількість елементів масиву'); readln(n); {Уведення n} writeln('Уведіть значення елементів масиву:'); for і:=1 to n do begin write('a[',i,']='); readln(a[ I ]); end; p:=1; i:=2; while i<=n do begin p:=p*a[ I ] ; i:=i+2; end; writeln('Добуток елементів таблиці з парними індексами дорівнює', р:2:3) ; readln; end. Зауваження. 1. Виведення суми або добутку елементів масиву виконують за межами циклу. 2. Якщо кількість елементів у масиві невідома (наприклад — n), то в описі таблиці резервуємо пам'ять на елементи таблиці із запасом (наприклад, a: array [1..1000] of real;) або перед описом (наприклад, а: array [l..n] of real;) кількість елементів розглядаємо як константу (наприклад — const n=10). Другий спосіб program z2; uses crt; const n=7; var a:array [l1..n] of real; і:integer; p:real; begin clrscr; p:=1; wrіteln(‘Уведіть значення елементів масиву:'); for і:=1 to n do begin write(‘a[‘,i,']='); readln(a[i]); end; P:=l; i:=2; while i<=n do begin p:=p*a[ i ] ; i:=i+2; end; writeln(‘Добуток елементів таблиці з парними індексами дорівнює', р:2:3); readln; end. Додаткові завдання Задача 3. Знайти суму непарних елементів таблиці дійсних чисел m [ 1: 9 ]. Задача 4. Знайти добуток від'ємних елементів таблиці дійсних чисел b [ 1: 4,1:5 ]. Задача 5. Задано натуральні числа п, р, цілі числа cvc2, с3, ...,сn. Знайти добуток тих елементів послідовності cvc2, с3, ..сn, які кратні p. IV. Введення та реалізація програм на комп'ютері V. Підсумок уроку. Повідомлення домашнього завдання. Мотивація подальшої діяльності УРОК 20. ОПРАЦЮВАННЯ ТАБЛИЧНИХ ВЕЛИЧИН Тема. Складання алгоритмів та програм на опрацювання табличних величин. Мета: формувати навички складання та реалізації найпростіших типових програм обробки табличних величин; розвивати логічне мислення, навички введення та виведення елементів масиву, формування масиву; виховувати культуру мови. Обладнання: комп'ютери, картки, підручники, посібники, таблиці, опорні конспекти. Учні повинні знати: поняття табличних величин, їх опис мовою програмування Pascal, поняття індексу масиву; означення одновимірних та двовимірних масивів та відмінність між ними; способи введення та виведення елементів масиву, принципи обробки елементів масиву, правила використання операторних дужок, розділових знаків, логічних умов під час обробки масивів, порядок виконання дій на комп'ютері, правила знаходження суми або добутку елементів таблиці, команди роботи в середовищі мови програмування Turbo Pascal 7.0. . Учні повинні вміти: описувати мовою програмування одновимірні та двовимірні масиви, розв'язувати задачі з використанням уведення, обробки, виведення елементів масиву, знаходити суму і добуток елементів таблиці. Тип уроку. Урок формування вмінь і навичок. ХІД УРОКУ І. Актуалізація опорних знань Перевірка домашнього завдання. Аналіз створених програм. Фронтальне опитування. —Що ми розуміємо під масивом у програмуванні? Як здійснюється опис масивів? Що таке «індекс масиву»? Які масиви називаються одновимірними, які — двовимірними? Як організовується введення елементів масиву? Як організовується виведення елементів масиву? Як відбувається обробка масивів? II. Постановка теми, мети III. Виклад теми. Розв'язування задач Задача 1. Опишіть цілочисельний одновимірний масив з дев'яти елементів та знайдіть кількість елементів, рівних 8. Розв'язання Нехай дано лінійний масив цілих чисел b [1: 9], Позначимо k— кількість елементів масиву, які дорівнюють числу 8. program nl; uses crt; var b:array [1..9] of integer; і,k:integer; begin clrscr; for i:=l to 9 do begin write('Уведіть елемент масиву Ь[', і, Ч=')/ readln(b[i]); end; k:=0; for i:=l to 9 do begin if b[i]=8 then k:=k+l; end; writeln(^Кількість елементів, рівних числу 8, дорівнює:', k:3) readln; end. ( Кінець J Задача 2. Дано таблицю дійсних чисел т[1:10]. Створити масив дійсних чисел г [1:5], кожний елемент якого є модудем відповідного елемента масиву m [ 1:10 ], розміщеного на непарному місці. Розв'язання Очевидно, що в результаті виконання алгоритму отримаємо: r[l] : = |m[l] | ; r[2] : = (m[3] | ; r[3]:=im[5]I; r[4]:=|т[7]|; г[5]:=!т[9]|. ]=', r[j]:3:2) program n2; uses crt; var m:array [1..10] of real; r:array [1..5] of real; і,j:integer; begin clrscr; for i:=l to 10 do begin write('Уведіть елемент масиву m[' , і, *]=') readln(m[i]); end; j:=l; i:=l; while i r[j] :=abs(m[i]) ; j:=j+l; i:=i+2; end; for j:=1 to 5 do begin writeln ( xr [ Vf j end; readln; end. Задача З. Знайдіть добуток усіх від'ємних чисел уве-денного з клавіатури масиву дійсних чисел g [ 1: 5,1: 7 ]. Розв'язання Нехай добуток елементів масиву, менших за нуль, містить змінна/?. • program n3; uses crt; var g: array [1..5,1..7] of real; і,j: integer; p:real; begin clrscr; for i:=l to 5 do r begin for j:=1 to 7 do begin write(xУведіть елемент масиву g[\ і, Л ,', j, 4 = 4; readln(g[і,j]); end; end; p:=l; for i:=l to 5 do begin for j:=1 to 7 do begin * if g[i,j]<0 then p:=p*g[i,j]; end; end; writeln(чДобуток від"ємних дорівнює', p:2:3); readln; end. Додаткові завдання Задача 4. Дано натуральне число гс та дійсні числа а19 а2, а3,..., ап. Визначити: подвоєну суму додатних членів послідовності ava2, а3,..., ап; кількість елементів послідовності аіга2,а3,..., ал, значення яких належить інтервалу [ та суму всіх інших членів послідовності; суму додатних та кількість від'ємних елементів послідовності а%9а2, а3,..., ап. IV. Введення та реалізація програм на комп'ютері V. Підсумок уроку. Мотивація подальшої діяльності УРОК 21. ПОШУК У ТАБЛИЦЯХ ПЕВНИХ ЕЛЕМЕНТІВ 1 2 3 4 |