Домашня робота на 27.02
Виконати та записати в зошит!!! два варіанти побудови одного і того ж завдання: №1. Визначити, скільки разів у даному тексті зустрічається послідовність символів "абв". Варіант 1 побудови програми. Організовуємо прохід по рядку за допомогою циклу з параметром, причому враховуємо,
що необхідно перевірити три послідовно розташованих символи .Один з методів вибору кількох
послідовних символів (і-ий, і+1-ий та і+2-ий елементи), uses crt; Var i:byte; {i - змінна циклу} St:string; {St - даний текст} Count:byte; {Count – лічильник послідовностей} Begin Clrscr; Write ('Введіть текст: '); Readln (St); Count:=0; {Початкове значення лічильника} For i:=1 to length(St) do If (st[i]='а') and (st[i+1]='б')and (st[i+2]='в') Then count:=count+1; Writeln ('Кількість шуканих послідовностей: ',count); End. №2. Визначити, скільки разів у даному тексті зустрічається послідовність символів "абв". Варіант 2 побудови програми. Розглянемо інший метод, що полягає у використанні функції копіювання Copy. Нагадую, що
ця функція містить у якості параметрів вихідний рядок, номер початку копіювання
(виділення) та кількість вибраних символів, тобто для вибору трьох символів з будь-якого місця
рядка St ця функція буде мати вид: Copy(St,і,3). Порівнюючи виділені (скопійовані) символи з еталоном, нарощуємо лічильник при виконанні
поставлених умов. Програма, що реалізує описаний алгоритм, має наступний вигляд: uses crt; Var i:byte; {i - змінна циклу} St:string; {St - даний текст} Count:byte; {Count – лічильник послідовностей} Begin Clrscr; Write ('Введіть текст: '); Readln (St); Count:=0; {Початкове значення лічильника} For i:=1 to length(St)-3 do If Copy (St,i,3) = 'абв' Then count:=count+1; Writeln ('Кількість шуканих послідовностей: ',count); Readkey; {Затримка зображення на екрані} End. Самостійно! В рядку символів St відшукати своє ім’я. Програму скласти у двох варіантах.
Виконати та записати у зошит!