Урок "Вставлення, видалення та заміна фрагментів тексту у рядку."

Про матеріал
Стандартні процедури рядкових величин. Алгоритми заміни фрагментів у тексті.
Зміст архіву
Перегляд файлу

КЛАС: 9        ПРЕДМЕТ: Інформатика

 

Тема 1. Алгоритми та програми

 

Тема уроку: Вставлення, видалення та заміна фрагментів тексту у рядку.

ЦІЛІ:

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

розвиваюча - розвивати логічне мислення та креативність; домогтися від учнів розуміння того, що вони вивчають.

виховна - виховувати необхідність регулярного вивчення уроків інформатики. Виховання самостійності, самоконтролю та відповідальності.

ЗАДАЧІ:

  • дати учням можливість оцінити ступінь свого логічного мислення;
  • розвиток уваги, пам'яті, творчих здібностей учнів;
  • виховання інформаційної культури, дбайливого ставлення до комп’ютерної техніки.

ОЧІКУВАНІ РЕЗУЛЬТАТИ:

Знати: правила запису процедур вставлення та видалення фрагментів тексту у рядку в середовищі програмування.

Вміти: складати програми з використанням процедур вставлення та видалення.

 

Тип уроку: засвоєння нових знань.

Форми роботи учнів: фронтальна бесіда, індивідуальна з елементами тренінгу.

Обладнання: комп’ютер з доступом до мережі інтернет, проектор, екран, презентації: «Рядкові величини», «Рядкові величини 3 - завдання».

 


СТРУКТУРА УРОКУ

  1. Організаційний етап (2 хв.).
  2. Мотивація навчальної діяльності (2 хв.).
  3. Актуалізація опорних знань. Пояснення нового матеріалу (20 хв.)
  4. Закріплення нового матеріалу (15 хв.)
  5. Підведення підсумків уроку (2 хв.)
  6. Рефлексія (2 хв.). 
  7. Оцінювання учнів. (1 хв.)
  8. Домашнє завдання (1 хв.)

 

ХІД УРОКУ

  1. Організаційний етап (2 хв.)

Вітання. Учні займають свої місця. Учитель перевіряє відсутніх на уроці, готовність присутніх до уроку: зовнішній вигляд (чисті та сухі руки), наявність щоденників.

 

  1. Мотивація навчальної діяльності (2 хв.)

Учитель: Сьогодні у нас чергове заняття з "опрацювання рядкових величин". Тема урока: Вставлення, видалення та заміна фрагментів тексту у рядку.

На попередньому уроці, ви перевіряли свої навики чарівників тексту. Навіть якщо у когось щось не вийшло, сьогодні ви повинні сказати собі "я зможу", тому що я хочу бути успішною людиною. Треба тільки більше уваги і старання і все вийде!

 

  1. Актуалізація опорних знань. Пояснення нового матеріалу (20 хв.) (Лекція супроводжується демонстрацією основних понять та прикладів, за допомогою презентації).

Давайте згадаємо за допомогою яких операцій чи функцій можна виділити будь-які фрагменти тексту? (учні відповідають)

  1. Використати функцію Copy (R, Poz, N); - копіює фрагмент довжиною N символів рядка R, починаючи з позиції Poz.
  2. До будь-якого символу рядка можна звернутися по його номеру і - NAME[і].
  3. Функція, яка знаходить номер позиції Р (Pos (WORD, R)

Також давайте згадаємо яким чином здійснюється повторення будь-яких дій у програмі, наприклад пошук потрібного фрагмента (кілька разів)?

За допомогою циклічної структури: цикли Whiledo, Fordo, RepeatUntil.

Стандартні рядкові процедури мови Pascal. (слайди 13-15)

 

Процедури в програмі є самостійними командами у вигляді оператора з назвою самої процедури.

  1. VAL(S, С, a) – перетворює рядкове значення (послідовність цифр) S на число і присвоює його вказаній як аргумент змінній числового типу С. Змінна a типу integer, набуває значення 0, якщо перетворення виконано успішно; у протилежному випадку вона дорівнюватиме значенню номера позиції в рядку, в який виникла помилка. Перетворення буде виконано успішно лише тоді, коли параметр S – рядок містить число.

a := ’74’;

Val (a, x, z);

Val (‘143’, y, p);

Змінна x набуде значення 74, змінна у – значення 143, а змінні z і p – значення 0.

 

  1. STR(C, S) – перетворює числове значення С на рядок і присвоює його змінній рядкового типу S.

STR(74, S); Змінна S набуде значення ‘74’.

 

 

  1. Insert (WORD, R, Poz); - вставляє слово WORD в рядок R, починаючи з позиції Poz. Наприклад.

 

Var Poz: integer; R, WORD: string;

begin

R := 'Мова програмування Pascal';

word:= 'Turbo';

insert (WORD, R, 20);

writeln (R);

end.

 

На екрані дисплея буде надруковано: Мова програмування TurboPascal

 

  1. Delete (R, Poz, N) - знищує слово, яке розпочинається з вказаної позиції Poz і має задану довжину N в рядку R. Наприклад.

Var R: string; N, Poz: integer;

begin

R := 'Мова програмування Turbo Pascal';

delete(R, 1, 19);

writeln(R);

end.

 

На екрані дисплея буде надруковано: TurboPascal

 

Все зрозуміло чи ні? У когось є питання?

 

Алгоритми опрацювання рядка (слайди 16-17)

  1. Написати програму для упаковки рядка.

Наприклад, розглянемо рядок AAAABCCCCCDDDD. Символи, що повторюються, можуть бути видалені і замінені числами, що визначають кількість повторень (якщо символ повторюється один раз, цифра не пишеться). Таким чином, цей рядок може бути представлений як 4AB5C4D.

Візьмемо перший символ рядка Z, збережемо його як змінну В і його порівнюватимемо з іншими до тих пір, поки не закінчиться рядок (k<length(z)). Поки символи співпадають, рахуємо їх кількість К. Коли символи не співпадають, перевіряємо кількість однакових символів; якщо К > 1, то за допомогою процедури STR(K, C) перетворюємо число K в рядок C і формуємо новий упакований рядок S, додаванням фрагмента С і нашого першого символу В, якщо К = 1, то додаємо тільки символ В. Потім видаляємо перевірений фрагмент з даного рядка і повторюємо дії для наступного символу, доки не закінчиться рядок (length(z)>0).

 

var s,z,b,c: string; k:integer;

begin

  Readln (z);

  S := '';

 while length(z)>0 do begin

  b := z[1];

  k := 1;

  while (k<length(z)) and (z[k+1]=b) do k := k+1;

    if k>1 then begin

    str(k, c);

    s := s + c + b;

    end

    else s := s + b;

  delete(z,1,k);

  end;

  Writeln(s);

end.

 

Написати програму для заміни символів рядка. (слайд 18)

Дан текст, у якому є коми. Замінити коми, комою з крапкою. 

Ідея рішення. Треба розшукати у тексті послідовно усі коми. Для цього будемо зрівнювати і‑ий символ з комою і у випадку співпадання, замінити.

 

var t:string; i:integer;

begin

readln(t);

for i:=1 to length(t) do

if  t[i] = ',' then t[i]:= ';';

writeln(t);

end.

  1. Написати програму для заміни фрагментів рядка. (слайд 19)

Замінити у тексті слово велосипед словом мотоцикл.

var t: string; i: integer;

begin

readln(t);

repeat

i := Pos('велосипед',t);

If i<>0

Then begin

delete(t, i, 9);

insert('мотоцикл', t, i);

end;

until i = 0;

writeln(t);

end.

 

  1. Закріплення нового матеріалу (15 хв. «Рядкові величини – завдання 2», слайд 1)

Зараз я пропоную вам скласти самостійно програми на розглянуті алгоритми.

Учні виконують завдання по варіантах:

1 вар) Розпаковка рядка (наприклад: 4А стає AAAA).

2 вар) Упаковка рядка, що складається з одного символу (наприклад: AAAA стає 4А).

Учитель: «Три учні, які впораються раніше усіх, отримують відмінну оцінку»

  1. Підведення підсумків уроку (2 хв.)

Учитель: сьогодні ми з вами розглянули останні рядкові процедури та алгоритми опрацювання цих величин з використанням цих процедур. На наступному уроці буде самостійна практична робота, в якої будуть завдання подібні розглянутим. Тому, якщо у когось ще залишилися питання, запитуйте.

  1. Рефлексія (2 хв. «Рядкові величини 3 — завдання», слайд 2). 

Учні висловлюються одним реченням, обираючи початок фрази на екрані:

  • Я дізнався …
  • Я навчився …
  • Мені було цікаво …
  • Було важко (легко) …
  • Тепер я зможу …
  1.   Оцінювання учнів. (1 хв.) (Оголошення оцінок учням і виставляння оцінок в щоденники.)
  2.   Домашнє завдання (1 хв.)

Опрацювати Презентацію «Рядкові величини» (13 - 19 слайди). Написати програму для заміни у тексті перших маленьких літер в кличках тварин на заголовні.

zip
Додано
8 грудня 2020
Переглядів
852
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку