Кортеж (інформатика): відмінності між версіями
[перевірена версія] | [перевірена версія] |
Вилучено вміст Додано вміст
+Категорія:Управління даними; +Категорія:Ряди та послідовності; +Категорія:Основні поняття теорії множин; +[[Категорія:Теорія типів]... |
вікіфікація, оформлення, уточнення |
||
Рядок 1:
'''Корте́ж''' або ''n''-ка — в [[математика|математиці]] впорядкована та [[скінченна множина|скінченна]] сукупність елементів (нескінченний кортеж має назву '''сімейства''').
Кількість елементів в кортежі визначає його '''довжину'''. Так, кортеж з двох елементів (тобто довжини 2) називається двійкою, з трьох елементів
== Формальне означення ==
Головною властивістю кортежа, яка відрізняє його від [[множина|множини]] є те, що, по-перше, кортеж може містити декілька екземплярів одного об'єкта (в множині однакові об'єкти не розрізняються, і ця властивість також відрізняє кортеж від [[впорядкована множина|впорядкованої множини]]), та, по-друге, об'єкти в кортежі впорядковані. Це твердження формалізується таким чином:
: (''a''<sub>1</sub>, ''a''<sub>2</sub>,
Часто кортеж з ''n'' елементів визначається [[індукція|індуктивно]] через [[впорядкована пара|впорядковану пару]], тобто ''n''-ка (де ''n'' > 2) визначається як [[впорядкована пара]] її першого елемента, та кортеж з ''n-1'' її останніх елементів:
: (''a''<sub>1</sub>, ''a''<sub>2</sub>,
Тобто:
Рядок 21:
== У програмуванні ==
У деяких мовах програмування, наприклад, [[Python]] або [[ML]], кортеж — особливий тип даних. У мові Python кортеж ({{lang-en|tuple}}) відрізняється від списку тим, що елементи кортежу не можна змінювати.
:У деяких мовах програмування, наприклад, [[Python]] або [[ML]], кортеж - особливий тип даних. У мові Python кортеж ([[Англійська мова|англ.]] Tuple) відрізняється від списку тим, що елементи кортежу не можна змінювати. Ця програма на [[Python|Python 2.7]], яка використовує кортеж a, виведе помилку в 3-му рядку: <code>TypeError: 'tuple' object does not support item assignment</code>. У мовах програмування зі статичної типізацією кортеж відрізняється від списку тим, що елементи кортежу можуть належати різним типам і набір таких типів заздалегідь визначений типом кортежу, а значить і розмір кортежу також визначено. З іншого боку, колекції (списки, масиви) мають обмеження по типу збережених елементів, але не мають обмеження на довжину. У функціональних мовах некаррірованние функції декількох аргументів приймають параметри у вигляді одного аргументу, що є кортежем. У мові [[C++]] підтримка кортежів реалізована як шаблон класу std :: tuple (починаючи з C++ 11) і в бібліотеці Boost Tuple Library. Кортеж є стандартним типом в платформі .NET починаючи з версії 4.0. ▼
<source lang="python">
a = (1, 2, 3, 2)
print a[1]
a[1] = 5 #Помилка
</source>
Ця програма на [[Python|Python 2.7]], яка використовує кортеж ''a'', виведе помилку в 3-му рядку: <code>TypeError: 'tuple' object does not support item assignment</code>.
▲
=== У базах даних ===▼
:У реляційних базах даних кортеж - це елемент відносини. Для N-арного відносини кортеж є упорядкований набір з N значень, по одному значенню для кожного атрибута відносини.▼
▲
== Примітки ==
[http://znaimo.com.ua/%D0%9A%D0%BE%D1%80%D1%82%D0%B5%D0%B6 Кортеж] на сайті http://znaimo.com.ua
== Див. також ==
|