Звіт до лабораторної роботи №6
Тема: СИМВОЛЬНІ МАСИВИ. РЯДКОВИЙ ТИП У МОВІ TURBO PASCAL
Мета: ознайомитись з окремим видом масивів – строками, або рядками символів.
1. Відповіді на контрольні питання
1. Як опис
...
Звіт до лабораторної роботи №6
Тема: СИМВОЛЬНІ МАСИВИ. РЯДКОВИЙ ТИП У МОВІ TURBO PASCAL
Мета: ознайомитись з окремим видом масивів – строками, або рядками символів.
1. Відповіді на контрольні питання
1. Як описуються символьні масиви?
Рядок, що вміщує один символ, є константа стандартного типу Char. Рядок з n символів (n > 1)
рахується константою типу ARRAY [1..n] of char. При цьому кожен символ є елементом масиву, до
якого можна отримати доступ за допомогою індексу.
VAR ST:ARRAY [1..50] OF CHAR;
2. Що таке упакований символьний масив?
Упакований символьний масив – це масив, який утворює символьний рядок. ... Особливістю опису
рядка символів у мову Turbo Pascal полягає в тому, що доступ до окремо елемента рядка здійснюється
з використанням індексу, тобто ST[1], ST[I], а також тим, над змінними рядкового типу визначені
стандартні функції.
3. Які особливості опису рядка символів у мові програмування?
Рядковий тип випливає з поняття символьних масивів, але в рядковому типі може змінюватись
довжина рядка. Якщо довжина рядка не вказана, то максимальною довжиною є число 255.
4. Як здійснюється введення і виведення елементів рядкового типу?
Введення і виведення рядка здійснюється поелементно в циклі за допомогою процедур READ та
WRITE.
Введення і виведення змінної рядкового типу здійснюється за допомогою процедур READLN та
WRITELN без вказування індексу елемента.
5. Які операції можна виконувати над змінними рядкового типу?
операції порівняння: >, >=, <, <=, =, < >
операція конкатенації + (приєднання) при виведенні.
6. Що означає стандартна функція EOLN?
До рядків символів може застосуватись стандартна функція EOLN, яка дає значення TRUE, якщо
зчитано останній символ вхідного рядка і значення FALSE, якщо кінця рядка не досягнуто.
7. Яка максимальна розмірність рядка символів, описаних типом STRING?
Від нуля до заданого числа
8. Для чого потрібно задавати довжину змінної рядкового типу?
Довжину змінною рядкового типу потрібно задавати, якщо рядковій змінні
присвоюється значення довше, ніж максимальна довжина, рядок «обрубується» до
максимальної довжини. Саме тому задають довжину рядка.
9. Як резервується пам’ять під змінну рядкового типу?
Пам’ять виділяється так, як і для масивів на етапі трансляції програми за
максимальною довжиною. Якщо максимальна довжина рядка 80 символів, то
виділяється 81 байт. При цьому в 80-ти байтах записується рядок символів, а в
нульовому байті – довжина цього рядка.
2. Індивідуальне завдання
1.Ввести з клавіатури два рядки ST1 та ST2 довжиною до 70 символів. Видалити
із рядка ST2
всі слова, які входять в рядок ST1.
Текст програми №1
program lab6;
const
n=70;
var s1, s2:array [1..n] of char;
i:byte;
s, s3: string;
begin
writeln('Введіть перший рядок');
for i:=1 to n do read(s1[i]);
writeln('Введіть другий рядок ');
for i:=1 to n do
readln(s2[i]);
s3:='';
i:=1;
if i< s2 then break;
if pos(s2[i],s)>0 then
begin
s3:=s3+s2[i];
delete(s,i,1);
end
else i:=i+1;
if s='' then writeln('Всі символи із другого рядку видалені ')
else writeln('s2=',s2);
if s3='' then write('У рядку 2 немає символів з рядку 1 ')
else write('s3=',s3);
readln
end.