You are on page 1of 5

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

Національний технічний університет України


"Київський політехнічний інститут імені Ігоря Сікорського"

Факультет інформатики та обчислювальної техніки


Кафедра інформаційних систем та технологій

Програмування. Частина 1. Основи програмування


Лабораторна робота №8
Тема: Реалізація алгоритмів алгоритмів з використанням рядків

мовою С/С++. Обробка рядків.


Варіант № 16

Виконала:
студентка групи ІС-33
Овсяник О.В.
Перевірив:
Драган М.С.

Київ-2023
Мета роботи:
1. Ознайомитися з особливостями роботи з рядками;
2. Опанувати технологію застосування та обробки рядків;
3. Навчитися розробляти алгоритми та програми із застосуванням рядків.
ЗАВДАННЯ №1
16. Увести два рядки символів та замінити кожне слово на парній позиції
першого рядка на
слово, що стоїть на непарній позиції у другому рядку. Кількість слів у
рядках може бути
різною.
#include <iostream>
#include <sstream>

using namespace std;

int main() {
const int maxWords = 50;

string line1, line2;


cout << "Enter the first line: ";
getline(cin, line1);

cout << "Enter the second line: ";


getline(cin, line2);

string words1[maxWords];
string words2[maxWords];
string word;

istringstream stream1(line1), stream2(line2);

int count1 = 0, count2 = 0;

while (count1 < maxWords && stream1 >> word) {


words1[count1++] = word;
}

while (count2 < maxWords && stream2 >> word) {


words2[count2++] = word;
}

for (int i = 1; i < min(count1, count2) && (i + 1) < count2; i += 2) {


words1[i] = words2[i + 1];
}

cout << "Result: ";


for (int i = 0; i < count1; i++) {
cout << words1[i] << " ";
}
cout << endl;

return 0;
}
Завдання 2.1

Контрольні запистання
1. Поточна довжина рядка (Current Length): Це кількість символів у рядку
на даний момент. У багатьох мовах програмування це може бути
визначено за допомогою функції, такої як strlen у мові C або методу
length() у об'єкті рядка в багатьох мовах програмування вищого

Загальна довжина рядка (Total Length): Це максимальна можлива кількість


символів, яку рядок може містити в пам'яті, включаючи символ
завершення рядка ('\0'), який вказує на кінець рядка. Загальна довжина
зазвичай визначається при виділенні пам'яті для рядка. У C-подібних
мовах програмування це може бути вказано в розмірі масиву або через
використання динам
2.
Кінець рядка в мові C++, позначається символом завершення рядка, який
має ASCII-код 0 (нуль) і часто позначається як '\0'. Цей символ служить
для визначення межі між рядком і пам'яттю, що його містить.
3. Використання об'єкту string:
#include <iostream>
#include <string>
using namespace std;

int main() {
string myString = "Привіт, світ!";
cout << myString << endl;
return 0;
}
4. Доступ до окремих елементів рядка в мовах програмування C та C++
може бути здійснений за допомогою індексації. Важливо враховувати, що
рядки у мові C індексуються з нуля, і останній елемент завжди містить
символ завершення рядка ('\0').
5.
#include <iostream>
#include <string>
using namespace std;

int main() {
string myString; // Рядок для введення

// Введення рядка
cout << "Введіть рядок: ";
getline(cin, myString);

// Виведення рядка
cout << "Ви ввели: " << myString << endl;

return 0;
}
6.strring,getline,string::length,to_string
7. Операції присвоєння рядків досить прості завдяки використанню класу string.
Оператор = може бути використаний для присвоєння одного рядка іншому.
8.
В мові C++, порівняння рядків можна виконати за допомогою рядка порівнянь
(лексикографічно). Клас string має вбудовані оператори порівняння (==, !=, <, >,
<=, >=), які дозволяють порівнювати рядки.
9. В мові C++, розкладання рядка на лексеми (токени) можна здійснити за
допомогою об'єкта std::istringstream (стріму вводу з рядка) або використовуючи
функції роботи з рядками та рядковим потоком stringstream.
ВИСНОВКИ
Робота над вивченням та реалізацією алгоритмів обробки рядків у мові
програмування С++ є важливою для розуміння та вдосконалення навичок
програмування. Ознайомлення з особливостями роботи з рядками
дозволяє розширити можливості програміста при обробці текстової
інформації. У процесі цієї лаборатоної метою є не лише засвоєння
технологій застосування та обробки рядків, але й розвиток вмінь
створювати алгоритми та програми з використанням цього важливого
типу даних. Реалізація алгоритмів обробки рядків в мові програмування
С++ надає можливість ефективно взаємодіяти з текстовою інформацією,
вирішувати завдання, пов'язані з парсингом даних, пошуком та заміною
підрядків, а також реалізацією інших завдань, які вимагають операцій над
рядками.

You might also like