Конкатенація
Конкатенація (лат. concatēnāre, об'єднання, з'єднання) — в загальному сенсі - функція з'єднання двох сутностей або результат такої операції[1][2].
Конкатенація в програмуванні - послідовне з'єднання значень декількох змінних та повернення результуючого значення. Аргументами такої функції можуть бути такі сутності, як рядки або масиви, результатом - ланцюжок цих сутностей.
Приклади:
- конкатенація слів «мікро» і «світ» дасть слово «мікросвіт».
- конкатенація рядків «34» та «84» дають результат «3484».
Конкатенація — бінарна операція, визначена на словах даного алфавіту. Якщо і слова в алфавіті , то конкатенацією слів і , яку позначимо в цій статті як , буде слово в тому ж алфавіті , що визначається рівністю
.
Наприклад, якщо і слова в алфавіті , що містить всі літери латинського алфавіту, то
.
Властивості конкатенації
ред.- Операція конкатенації асоціативна.
- Операція конкатенації некомутативна. Дійсно, , але . Від перестановки операндів змінюється результат операції, що й означає її некомутативність.
- Порожнє слово, , є нейтральним елементом (одиницею) операції конкатенації. Тобто, якщо - порожнє слово, то для будь-якого слова виконана рівність:
.
- Множина всіх слів у алфавіті утворює моноїд (так звана «вільна напівгрупа»).
- Множина всіх непустих слів у алфавіті утворює напівгрупу.
- Довжина конкатенації слів дорівнює сумі довжин операндів:
.
Піднесення до степеня
ред.Операція конкатенації слів, подібно операції множення чисел, породжує операцію піднесення до степеня. Нехай деяке слово в алфавіті , а ціле невід'ємне число. Тоді -м ступенем слова , що позначається , буде слово в тому ж алфавіті , визначене рівністю:
У випадку , степінь за визначенням буде рівною порожньому слову, .
В інформатиці
ред.Операція конкатенації визначається для типів даних, які мають структуру послідовності (список, чергу, масив і ряд інших). У загальному випадку, результатом конкатенації двох об'єктів і є об'єкт , отриманий почерговим додаванням всіх елементів об'єкта , починаючи з початку, в кінець об'єкта .
З міркувань зручності й ефективності розрізняють дві форми операції конкатенації:
- Модифікуюча конкатенація. Результат операції формується в лівому операнді.
- Немодифікуюча конкатенація. Результатом є новий об'єкт, операнди залишаються незмінними.[3]
Алгоритм
ред.Алгоритм конкатенації на прикладі двох масивів наведений нижче[4].
Дано:
- Масив з розміром .
- Масив з розміром .
- Масив з розміром , що є результатом конкатенації масивів та .
- Індекс масиву .
Суть алгоритму:
1. Виконати копіювання масиву в масив для :
2. Виконати копіювання масиву в масив для :
3. END
В мовах програмування
ред.C
ред.В мові програмування C функція конкатенації рядків strcat міститься в бібліотеці <string.h> [5][6].
#include <stdio.h>
#include <string.h>
#define N 50
void main()
{
// Декларація змінної example
char example[N];
// Копіювати рядок в змінну example
strcpy(example, "Кон");
// Виконати конкатенацію значення змінної example
strcat(example, "катенація");
// Вивести на екран змінну example
printf("%s\n", example);
}
Це незавершена стаття про інформаційні технології. Ви можете допомогти проєкту, виправивши або дописавши її. |
Це незавершена стаття з математики. Ви можете допомогти проєкту, виправивши або дописавши її. |
Ця стаття не містить посилань на джерела. (червень 2017) |
- ↑ concatenate. Wiktionary, the free dictionary (англ.). 23 серпня 2024. Процитовано 7 листопада 2024.
- ↑ Definition of CONCATENATION. www.merriam-webster.com (англ.). Процитовано 7 листопада 2024.
- ↑ а б джерело?
- ↑ Dixit, J. B. (2011-07). Programming in C (англ.). Laxmi Publications. ISBN 978-93-80298-39-9.
- ↑ strcat() in C. GeeksforGeeks (амер.). 14 жовтня 2021. Процитовано 7 листопада 2024.
- ↑ Dixit, J. B. (2011-07). Programming in C (англ.). Laxmi Publications. ISBN 978-93-80298-39-9.