2. Загальні положення
Рядок – це послідовність символів кодової таблиці ЕОМ.
При використанні у виразах рядок охоплюється з двох сторін
апострофами.
Кількість символів у рядку (максимальна довжина рядка) може
змінюватися від 0 до 255.
Для опису рядкових величин використовують
ідентифікатор string, після якого в квадратних дужках
записується максимальне значення довжини рядка для
даної величини.
Для використання рядків у програмі їх необхідно описати в розділі
описів.
3. Загальний вигляд опису рядкових даних:
Var<ідентифікатор> string[максимальна довжина рядка]
Приклад. var R1:string[10];
R2:string[4];
Максимальна довжина рядка для змінної R1=10, для R2=4.
Якщо довжина рядка не вказана, то вона автоматично приймає
значення – 255 байт.
Рядкові величини можна використовувати у програмі і у вигляді
констант.
Приклад. Const
NAME=‘інформатика’;
4. ЗАСОБИ ОБРОБКИ РЯДКІВ
Для роботи з рядковими величинами існує ряд функцій і процедур.
ФУНКЦІЇ
Concat Length Copy Pos
Формат: Concat(R1, R2, R3); Формат: Length(R); Формат:Copy(R,Poz,N); Формат:
Pos(WORD,R);
Знаходить
номер позиції
Видає фактичну довжину P, з якої
рядка, який міститься в Копіює фрагмент починається
Звійснює склеювання даній змінній. При довжиною N рядка R, перше
рядків R1, R2, R3 в один підрахуванні довжини починаючи з позиції входження
рядок в такому порядку, рядка враховуються всі Poz. слова WORD в
в якому вони записані. символи, в тому числі і рядку R. Якщо
проміжки. слово WORD в
рядку R не
знайдено, то
буде
надруковано
число 0.
5. Засоби обробки рядків
ПРОЦЕДУРА
Insert Delete
Формат: Insert(WORD,R,Poz); Формат: ( R, Poz,N);
Знищує слово,
Вставляє яке
слово починається з
WORD в вказаної
позиції Poz і
рядок R,
має задану
починаючи з довжину N в
позиції Poz. рядку R.
7. Program Fconcat;
Робота програми:
var R:string[40];
begin На екрані дисплея буде
надруковано:”Любеч наш рідний!”
R:=‘Любеч’+’наш’+’рідний!’;
writeln(R);
end.
8. Program Flength;
Програма працює так:
const R=‘Любеч наш рідний!’;
var N:integer; На екрані дисплея буде підраховано
кількість символів у реченні “Любеч
begin наш рідний!”
N:=length(R);
writeln(‘n=‘,N);
end.
9. Program Fcopy;
Програма працює слідуючим чином:
const R=‘Turbo Pascal’;
var WORD:string[6]; На екрані дисплея буде надруковано слово
Poz,N:integer; “Pascal”
begin
Poz:=7;
N:=6;
WORD:=Copy(R,Poz,N);
writeln(WORD);
end.
10. Program Fpos;
const R=‘Севастополь’; Програма працює так:
WORD=‘сто’;
var P:integer;
На екрані дисплея буде надруковано: Р=5
begin
P:=Pos(WORD,R);
writeln(‘P=‘,P);
end.
11. Program Finsert; Програма працює так:
var Poz:integer;
R,WORD:strind[40]; На екрані дисплея буде надруковано
begin “Любеч наш рідний!”
Poz::=7;
R:=‘Любеч рідний!’;
Word:=‘наш’;
insert(WORD,R,Poz);
writeln(R);
end.
12. Program Fdelete;
Програма працює так:
var R:string[35];
N,Poz:integer;
На екрані дисплея буде надруковано:
begin
R:=‘Мова програмування Turbo Pascal’; “Turbo Pascal”.
Poz:=1;
N:=19;
delete(R,Poz,N);
writeln(R);
end.
13. Практична робота №8
Тема: Складання та реалізація програм опрацювання рядкових
величин.
Мета: Навчитись складати та реалізовувати програми з використанням
процедур та функцій опрацювання рядкових величин.
Завдання для практичної роботи
1.Вивчити можливості мови програмування Паскаль для використання процедур та
функцій опрацювання рядкових величин:
а)склеювання рядків;
б)визначення довжини рядка;
в)вставлення та знищення слів;
г)визначення позиції слова.
2.Відповісти на контрольні запитання.
3.Скласти програму розв’язання задачі відповідно до завдання.
4.Виконати дану програму.
5.Підготувати і використати тести для перевірки правильності функціонування
програми.
6.Оформити звіт з практичної роботи.
14. Зразок виконання практичної роботи
ЗАВДАННЯ. Скласти програму, яка замінює в реченні “Мова
програмування Turbo Pascal” словосполучення “Мова програмування” на
словосполучення “Програмування мовою”.
Program Probota8;
var R,R1,R2,R3:string[225];
N:integer; Програма працює так:
begin
writeln(‘введіть початковий текст рядка:’);
readln(R);
writeln(‘замінити слово:’);
readln(R1);
writeln(‘на слово:’);
readln(R2);
while pos(R1,R2)>0 do
begin
N:=pos(R1,R);
delete(R,N,length(R1));
insert(R2,R,N);
end;
writeln(‘новий текст:’);
writeln(R);
end.
15. 1.А.Ф.Верлань, Н.В.Апатова Інформатика (підручник для 10-11
класів)
2.Руденко В.Д., Макарчук О.М., Патланжоглу М.О. Курс
інформатики (частина ІІ)
3.Я.М.Глинський Інформатика. Алгоритмізація і
програмування (книжка 1)
4.А.Ю.Гаєвський Інформатика 7-11 клас
5.І.Зарецька, А.М.Гужій, О.Ю.Соколов Інформатика (частина 2)
6.С.Немнюгін, Л.Перколаб Изучаем Turbo Pascal
7.Бондаренко О.О., Мірошниченко А.А. Інформатика (основи
програмування мовою Паскаль)
8.Караванова Т.А. Інформатика (збірник вправ та задач з
алгоритмізації та програмування).
9.Харченко В.М. Практикум з курсу “Комп’ютерні технології”