Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metodichka_po_labaratornym_robotam_ASD-S.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
566.78 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ХАРКІВСЬКИЙ КОМП’ЮТЕРНО-ТЕХНОЛОГІЧНИЙ

КОЛЕДЖ НТУ «ХПІ»

Методичні рекомендації

щодо виконання лабораторних робіт

з дисципліни

«Алгоритми та структури даних»

Харків 2013

Методичні рекомендації щодо виконання лабораторних робіт з дисципліни «Алгоритми та структури даних» для студентів ХКТК НТУ «ХПІ» спеціальності: 5.05010301 «Розробка програмного забезпечення».

Розроблена викладачем Манєвою Р.І.

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

Протокол № від « » 2013 р.

Голова комісії _________________ Р.І.Манєва

Заступник директора

з навчальної роботи _______________ І.І.Дідух

ЗМІСТ

Лабораторна робота №1……………………………………………..…

Лабораторна робота №2………………………………………….....…

Лабораторна робота №3…………………………………………....…

Лабораторна робота №4…………………………………………....…

Лабораторна робота №5………………………………………….……

Лабораторна робота №6………………………………………….……

Лабораторна робота №7……………………………………..…...……

Лабораторна робота №1

«Cтрокові змінні в середовищі програмування C++»

1 Тема роботи: Використання строкових змінних в середовищі програмування C++

2 Мета роботи: Навчитися принципам роботи зі рядковими змінними в середовищі програмування C++.

3 Теоретичний матеріал

3.1 Опис змінних рядкового типу

Для обробки текстів у середовищі програмування C++ використовується тип STRING (рядок). Кількість символів в рядку-змінної задається оголошенням типу STRING [N], де значення N може бути будь константою порядкового типу, що не перевищує 255.

Оголошення типу STRING [N] вказує, що число символів в рядку-змінної може змінюватися в діапазоні від 1 до N. Якщо при описі типу кількість символів у рядку не вказано, то за замовчуванням довжина рядка приймається максимально можливої​​, тобто 255 символів.

Рядок у C++ трактується як ланцюжок символів. До будь-якому символу в рядку можна звернутися так само, як до елементу символьного масиву типу Сhar name [num]. Над символами рядки можна здійснювати необхідні дії і, тим самим, змінювати зміст рядка, її довжину і т.д.

Приклад:

#include <string>

Int main

{

String a =”prime”;

For (int I, i<6, i++)

{

Cout a;

}

}

В результаті роботи даної програми на екран будуть роздруковані наступні значення:

p r i m e r

Таким чином, першим символом a [1] у змінній a є буква p, другим символом a [2] є r, третім - i і т.д.

До рядкам можна застосовувати операцію зчеплення:

#include string

Int main

{

String a[3] = “a”,”b”,”c”;

Cout a;

}

В результаті роботи запропонованої вище програми змінної a буде присвоєно значення 'abc'.

Допускається порівняння строкових змінних. Операції відносин =, <>,>, <,> =, <= виконуються над двома рядками посимвольно, зліва направо, з урахуванням внутрішньої кодування символів.

Приклади порівняння строкових змінних з результатом

«Істина»:

'A' <'B'

'LOL> 'Turbo'

'2 '> '1'

3.2 Процедури і функції по роботі з рядками

Дії над рядками реалізуються в C++ за допомогою наступних вбудованих процедур і функцій.

3.2.1 Функція strcat - зчіплює (об'єднує) дані рядки .

Приклад використання функції:

#include <cstring>

#include <string>

Int main

{

String a = “2>1”;

String b = “D>T”;

String c = “A>B”;

String Strcat (a,b,c);

Cout a;

}

Тут і далі в фігурних дужках наводиться виведений на екран результат роботи програми.

4 Варіанти завдань для виконання

1. Заданий список з 8 слів. Знайти саме коротке слово зі списку. Якщо таких слів кілька, то роздрукувати їх в один стовпець.

2. Задана рядок з двох слів, розділених пропуском. Поміняти в цьому рядку слова місцями.

3. Нехай задана деяка довільна цифра. Створити програму, що дозволяє вивести на екран назву даної цифри в прописні вигляді, наприклад, «5 - п'ять», «8 - вісім» і т.д.

4. Заданий двовимірний рядковий масив, що складається з 3 рядків і 4 стовпців. З'ясувати, скільки разів зустрічається латинська буква «а» в першому і останньому стовпцях масиву і поміняти дані стовпці місцями.

5. Скласти програму яка замінює в даному тексті буквосполучення 'abc' на 'klmn'

6. Визначити кількість повторень в тексті заданого слова. Вважати що всі слова в тексті одягнули один від одного пробілом.

7. Видалити в заданому тексті частина тексту, укладеного в дужки (разом з дужками).

8. Задано рядок S, що складається з латинських букв і пробілів. Визначити кількість слів у даному рядку.

9. Задано 10 рядків, що вводяться з клавіатури. Вивести їх в алфавітному порядку.

10. Дано рядок S. Визначити, чи є вона поліндромом.

11. Задано рядок S, що складається тільки з символів '0 'або '1'. Підрахувати довжину найдовшої послідовності, що складається тільки з '1 '.