Referat.me

Название: Програмування рядкових величин

Вид работы: реферат

Рубрика: Астрономия

Размер файла: 17.04 Kb

Скачать файл: referat.me-4257.docx

Краткое описание работы: Тема 7. . 1.     Поняття рядкової величини. Величиною рядкового типу ( strings ) називається послідовність символів, укладена в одинарні лапки. Цей тип даних є стандартним для мови ПАСКАЛЬ, хоча він є структурованим. Величини можуть бути як константами, так і змінними. При завданні змінних символьного типу можна вказати кількість символів у цій величині.

Програмування рядкових величин

Тема 7. Програмування рядкових величин.

1. Поняття рядкової величини.

Величиною рядкового типу (strings ) називається послідовність символів, укладена в одинарні лапки. Цей тип даних є стандартним для мови ПАСКАЛЬ, хоча він є структурованим. Величини можуть бути як константами, так і змінними. При завданні змінних символьного типу можна вказати кількість символів у цій величині.

ПРИКЛАД:

type

message=string;

list=string[10];

Опис типу message задає тип рядкових величин з максимально можливою довжиною рядка (255 символів), а опис типу list – рядкові величини з максимальною довжиною рядка 10 символів.

Рядкові величини можна опрацьовувати і як єдине ціле, і поелементно. При обробці рядка поелементно він розглядається як одновимірний масив з типом індексу byte і типом елементів char . Рядкові величини можуть містити довільні символи. Так. у рядку може міститися й одинарна лапка. Для того, щоб помістити одинарну лапку в рядок, потрібно написати дві послідовно розташовані одинарні лапки. Рядки, у яких міститься тільки один символ, являють собою дані стандартногосимвольного типу (char ). Рядок можна порівняти з масивом даних символьного типу, що має таку ж довжину. Всі рядкові константи сумісні з усіма рядковими типами (string ).

ПРИКЛАДИ:

‘TURBO’

‘п”ятниця’

“””

‘;’

Для рядкових величин визначена операція конкатенації (об’єднання) рядків. Операція позначається символом “+”. Тип результату – також рядкова величина. Мова ТУРБО ПАСКАЛЬ дозволяє використовувати оператор + для об’єднання двох рядкових операндів. Якщо довжина результуючого рядка перевищує 255 символів, то вона усікається до 255 символів.

Оператори відношення=, <>, <, >, <=, або >= можуть застосовуватися для порівняння рядків відповідно до порядку розширеного набору символів коду ASCII. Будь-які два значення рядкового типу даних можна порівняти, оскільки всі значення рядкових даних сумісні. Значення рядкового типу сумісні зі значеннями символьного типу, і при їхньому порівнянні символьне значення опрацьовується як рядкове значення довжиною 1. Та величина вважається “більшою”, яка має на відповідному місці символ з більшим ASCII кодом. Слід зауважити, що пробіл є повноправним символом рядкової величини і він опрацьовується аналогічно іншим символам величини.

ПРИКЛАДИ:

‘turbo’>’Turbo’;

‘turbo’>’pascal’;

‘turbo’<’turbo pascal’;

‘123’<>’ 123’;

2. Основні процедури та функції опрацювання рядкових величин.

Рядкові величини можна вводити з клавіатури. Для цього можна використати стандартну процедуру вводу read . Однак при цьому є така особливість: необхідно ввести стільки символів, скільки було оголошено при визначенні цієї величини. Так, якщо величина була оголошена як величина типу string [10], то необхідно ввести 10 символів (якщо їх кількість менша, то вільні місця необхідно заповнити пробілами). Якщо ж величина описана як string , то кількість пробілів буде дуже великою. Щоб позбавитись цього недоліку, для вводу рядкових величин варто використовувати іншу процедуру вводу – readln . В цьому випадку доповнювати пробілами рядкову величину непотрібно.

Функція Соncat - виконує конкатенацію послідовності рядків. Її дія аналогічна дії операції конкатенації.

Функція Copy - повертає підрядок (частину) рядкової величини.

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

Процедура Insert - додає в рядок підрядок, починаючи з певної позиції рядка.

Функція Length - повертає динамічну довжину рядка.

Функція Роs - здійснюєпошукпідрядка в рядкові.

Процедура Str - перетворює чисельне значення в його рядкове представлення.

Процедура Val - перетворить рядкову величину, яка є числом, в її чисельне значення.

ПРИКЛАДИ

var

s,t,x:string;

n,m,k:integer;

begin

readln(s); {припустимо, що введена величина ‘програма’}

readln(t); {припустимо, що введена величина ‘рог’}

n:=length(s); {n=8}

x:=concat(s,t); {x=’програмарог’}

x:=copy(s,4,3); {x=’гра’}

m:=pos(t,s); {m=2}

delete(s,4,3); {s=’прома’}

end.

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

Заданий текст (рядкова величина), слова якої розділені символом “пропуск”.

1. Знайти кількість слів у тексті.

2. Надрукувати окремо з нового рядка кожне слово тексту.

3. Знайти i надрукувати найдовше слово тексту.

program strings;

uses crt;

var s,t:string;

i,k:integer;

procedure kol(s:string; var k:integer);

{ процедура знаходження кiлькостi слiв у текстi ( текст мiстить хоча б одно слово }

var i,n:integer;

begin

k:=1;

n:=length(s);

for i:=1 to n do

if s[i]=’ ‘ then k:=k+1;

end;

procedure druk(s:string);

{ процедура друкування слів тексту }

var n:integer;

s1:string;

begin

n:=pos(‘ ‘,s);

while n<>0 do

begin

s1:=copy(s,1,n-1);

writeln(s1);

delete(s,1,n);

n:=pos(‘ ‘,s)

end;

writeln(s)

end;

procedure max_word(s:string; var s1:string);

{ процедура знаходження найбільшого слова тексту }

var m,n,max:integer;

s2:string;

begin

s1:=”;

max:=0;

n:=pos(‘ ‘,s);

while n<>0 do

begin

s2:=copy(s,1,n-1);

m:=length(s2);

if m>max then

begin

max:=m;

s1:=s2

end;

delete(s,1,n);

n:=pos(‘ ‘,s)

end;

m:=length(s);

if m>max then s1:=s

end;

{Основна програма}

begin

write(‘Введiть текст, розділяючи слова одним символом “пропуск”: ‘);

readln(s);

writeln;

writeln(‘Результати: ‘);

kol(s,k);

writeln(‘кiлькiсть слiв у текстi k=’,k);

writeln;

writeln(‘Слова тексту: ‘);

druk(s);

writeln;

writeln(‘Найдовше слово тексту);

max_word(s,t);

writeln(t);

end.

Узагальнення по темі.

Величиною рядкового типу (strings ) називається послідовність символів, укладена в одинарні лапки. Цей тип даних є стандартним для мови ПАСКАЛЬ, хоча він є структурованим. Величини можуть бути як константами, так і змінними. При завданні змінних символьного типу можна вказати кількість символів у цій величині.

Рядкові величини припускають обробку і як єдиного цілого, так і поелементно. При обробці рядка поелементно він розглядається як одновимірний масив з типом індексу byte і типом елементів char . Рядкові величини можуть містити довільні символи. Так, у рядку може міститися й одинарна лапка. Для того, щоб помістити одинарну лапку в рядок, потрібно написати дві послідовно розташовані одинарні лапки. Рядки, у яких міститься тільки один символ, являють собою дані стандартногосимвольного типу (char ). Рядок можна порівняти з масивом даних символьного типу, що має таку ж довжину. Всі рядкові константи сумісні з усіма рядковими типами (string ).

Для рядкових величин визначені операція конкатенації (об’єднання) рядків та операції відношення. Вониможуть застосовуватися для порівняння рядків відповідно до порядку розширеного набору символів коду ASCII. Будь-які два значення рядкового типу даних можна порівняти, оскільки всі значення рядкових даних сумісні. Значення рядкового типу сумісні зі значеннями символьного типу, і при їхньому порівнянні символьне значення опрацьовується як рядкове значення довжиною 1. Та величина вважається “більшою”, яка має на відповідному місці символ з більшим ASCII кодом. Слід зауважити, що пробіл є повноправним символом рядкової величини і він опрацьовується аналогічно іншим символам величини.

Рядкові величини можна вводити з клавіатури. Для цього можна використати стандартну процедуру вводу read . Однак при цьому є така особливість: необхідно ввести стільки символів, скільки було оголошено при визначенні цієї величини. Щоб позбавитись необхідності вводу 255 символів при оголошенні рядкової величини як strings , варто використовувати іншу процедуру вводу – readln .

Серед інших процедур та функцій над рядками варто відмітити процедури виділення (копіювання) частини рядка, видалення частини рядка, функцію знаходження позиції входження одного рядка до іншого, функцію визначення довжини рядка, тощо.

Похожие работы

  • Файлова система VS DOS

    ФАЙЛОВА СИСТЕМА Поняття файла впорядкована послідовність записів. Файл – це (названа цілісна сукупність даних) на зовнішньому носії іфнорм. (від англ.. слова file – підшиті папери, картотека)

  • Програмування допоміжних алгоритмів

    Тема. 1.     Процедури-оператори. Раніше були розглянути стандартні процедури та функції, які надавали досить широкий набір функціональних залежностей. Разом з тип мова ПАСКАЛЬ дозволяє користувачеві створювати власні допоміжні алгоритми. Розрізняють два види алгоритмів: процедури-оператори (далі просто процедури) та процедури-функції (далі просто функції).

  • Програмування масиви та рядки

    Реферат з інформатики Програмування: масиви та рядки. 1. Одновимірні масиви Масив у програмуванні – це тип структури даних, що має складені значення.

  • Базові елементи мови типи даних цілочисельні типи даних дані дійсних типів дані типу string

    Реферат з інформатики: Тема: Базові елементи мови: типи даних, цілочисельні типи даних, дані дійсних типів, дані типу string План. Поняття даного. Поняття змінної.

  • Загальнi вiдомостi про Бейсiк

    Реферат на тему: Загальнi вiдомостi про Бейсiк Формат програмного рядка БЕЙСIКА Програма, яка написана на мові Бейсік , являє собою сукупність програмних рядків. В

  • Абсолютні величини в статистиці

    Реферат на тему: Абсолютні величини в статистиці. План. 1. Поняття статистичних величин. 2. Види абсолютних величин. І статистичні ряди і статистичні таблиці містять підсумкові дані, які характеризують сукупність одиниць спостереження.

  • Оператор присвоювання

    Реферат на тему: Оператор присвоювання В будь-якій мові програмування можна виділити чотири типи елементів, що використовуються при побудові описів програм:

  • Нескінченно малі та нескінченно великі величини

    Зміна величина х називається нескінченно малою, якщо в процесі її зміни наступить такий момент, починаючи з якого, абсолютна величина змінної х стає і залишається менше будь-якого, скільки завгодно малого, наперед загаданого додаткового числа

  • Мова Паскаль

    КОЛОМИЙСЬКЕ ВПУ-17 РЕФЕРАТ НА ТЕМУ: МОВА ПАСКАЛЬ Виконав: учень групи : №13 Гаврищук Ігор Юрович Викладач: Остапчук С.М. КОЛОМИЯ 2002р. ВСТУП Мова ПАСКАЛЬ, затвердженна в якості стандартної в 1979р.

  • Цілі та дійсні типи мови Турбо Паскаль

    Реферат на тему: Цілі та дійсні типи мови Турбо Паскаль Базовий тип цілих integer утворено цілими, які займають 2 байти в знаковому поданні. Тепер уже зрозуміло, чому їх діапазон від -32768 до 32767. Крім цього типу, в мові Турбо Паскаль є ще кілька типів для подання цілих. Укажемо їх імена, спосіб (знаковий/беззнаковий) та розміри подання в байтах, а також їх діапазони.