
- •Лабораторна робота № 1
- •1 Теоретичні відомості
- •2 Послідовність виконання роботи
- •3 Оформлення звіту
- •4 Контрольні запитання
- •Лабораторна робота № 2
- •1 Теоретичні відомості
- •2 Послідовність виконання роботи
- •3 Оформлення звіту
- •4 Контрольні запитання
- •Лабораторна робота № 3
- •1 Теоретичні відомості
- •3 Оформлення звіту
- •4 Контрольні запитання
- •Лабораторна робота № 4
- •1 Теоретичні відомості
- •3 Оформлення звіту
- •4 Контрольні запитання
- •Лабораторна робота № 5
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 6
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 7
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 8
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •8.4. Вивести на друк тільки від’ємні значення і їх кількість:
- •Лабораторна робота № 9
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 10
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 11
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 12
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 13
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 14
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 15
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 16
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 17
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 18
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 19
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 20
- •Теоретичні відомості
- •2. Хід роботи
- •3. Послідовність дій
- •4 . Контрольні запитання
- •Лабораторна робота № 21
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Послідовність дій
- •4 Контрольні запитання
- •Лабораторна робота № 22
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Пслідовність дій
- •4 Контрольні запитання
- •Лабораторна робота № 23
- •1 Теоретичні відомості
- •2 Хід роботи
- •Регіон: код регіону, назва регіону;
- •Регіон: код регіону, назва регіону;
- •Регіон: код регіону, назва регіону;
- •Назва: код газопроводу, назва газопроводу;
- •Регіон: код регіону,назва регіону;
- •Регіон: код нафтогазоносного регіону, назва нафтогазоносного регіону;
- •Регіон: код регіону, назва регіону;
- •Регіон: код регіону, назва регіону;
- •Лабораторна робота № 24
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 25
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 26
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 27
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 28
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 29
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
- •Лабораторна робота № 30
- •1 Теоретичні відомості
- •2 Хід роботи
- •3 Контрольні запитання
Лабораторна робота № 16
Тема: Turbo Pascal. Алгоритми і програми для обробка текстів.
Мета: Формування умінь створення програм для обробки текстів алгоритмічною мовою високого рівня Turbo Pascal.
1 Теоретичні відомості
Дані типу рядок – це послідовність довільних символів, взятих з обох боків штрих-символами. Змінну типу рядок оголошують за допомогою слова string :
var <змінна> : string[n] ,
де n – довжина рядка, n<256. Довжину рядка можна не зазначати.
Над даними типу рядок визначені такі стандартні функції та процедури:
length(<рядок>) - визначає кількість символів у рядку;
copy(r,m,n) - дає n символів рядка r , починаючи з символу з номером m ;
concat(r1,r2,…,rn) - з’єднує рядки r1,…,rn в один рядок;
pos(r1,r2) - визначає номер символу, з якого починається входження рядка r1 у рядок r2.
insert(r1,<змінна>,n)–вставляє рядок r1 у рядок, заданий змінною,починаючи з позиції n;
delete(<змінна>,m,n) - вилучає n символів з рядка, заданого змінною, починаючи з позиції m ;
str(<число>,<змінна>) – переводить числове дане в дане типу рядок;
val(r1,s1,s2) – засилає у числову змінну s1 числовий образ рядка r1 .
Є два способи опрацювання даних типу string . Перший – можна опрацьовувати весь рядок як єдине ціле, застосовуючи до нього функції та процедури, другий – можна розглядати рядок як масив, складений з елементів-символів, і опрацьовувати його за правилами роботи з елементами масиву.
2 Хід роботи
2.1 Постановка задачі
Заданий текст, в якому слова розділені крапкою з комою. Вивести на друк слова тексту. Знайти кількість слів в тексті. Якщо слово містить букву “y” , то вивести це слово і вказати, на яких позиціях вона знаходиться. При відсутності букви “y” в слові вивести це слово і повідомлення «Букви “y” в слові немає». Скласти графічний алгоритм і програму для розв’язування даної задачі.
2.2 Графічний алгоритм показаний на рис. 16.1
2.3 Таблиця ідентифікації змінних
Змінна |
slovo |
rad |
ksliv |
pos1 |
posy |
Ідентифікатор |
slovo |
rad |
ksliv |
pos1 |
posy |
2.4 Програма мовою Pascal та результати обчислень
Program S_L{sumvol};
Var
pos1,posy:integer;
slovo,rad:string;
ksliv:integer;
Begin
writeln('Введіть текст, в якому слова розділені
символом ";" :');
read(rad);
ksliv:=0;
while pos(';',rad)>0 do
begin
pos1:=pos(';',rad);
if pos1=1 then rad:=copy(rad,pos1+1,length(rad));
так
ні
ні
так
ні
так
Рисунок 16.1 – Графічний алгоритм
if pos1>1 then
begin
slovo:=copy(rad,1,pos1-1);
rad:=copy(rad,pos1+1,length(rad));
posy:=pos('у',slovo);
write('слово: ',slovo);
if posy>0 then
writeln(' ---> буква "у" в слові розташована на
позиції ',posy)
else writeln(' ---> букви "у" в слові немає ');
end;
ksliv:=ksliv+1;
end;
writeln('Кількість слів у тексті, розділених
символом ";" =',ksliv);
End.
Введіть текст, в якому слова розділені символом ";" :
цибуля;огірочок;квасоля;грушка;морква;петрушка;
слово: цибуля ---> буква "у" в слові розташована на
позиції 4
слово: огірочок ---> букви "у" в слові немає
слово: квасоля ---> букви "у" в слові немає
слово: грушка ---> буква "у" в слові розташована на
позиції 3
слово: морква ---> букви "у" в слові немає
слово: петрушка ---> буква "у" в слові розташована
на позиції 5
Кількість слів у тексті, розділених символом ";" = 6