Krotka (struktura danych)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Krotka (ang. tuple) – struktura danych będąca odzwierciedleniem matematycznej n-ki, tj. uporządkowanego ciągu wartości. Krotki przechowują stałe wartości o różnych typach danych – nie można zmodyfikować żadnego elementu, odczyt natomiast wymaga podania indeksu liczbowego żądanego elementu. Wyjątkiem jest język Swift, w którym zawartość krotki można modyfikować, jeśli została ona zadeklarowana jako zmienna.

Scala − język programowania łączący cechy języków funkcyjnych i obiektowych. Scala działa na Wirtualnej Maszynie Javy, a także na Java Platform, Micro Edition Connected Limited Device Configuration i platformie .NET. Nazwa ma za zadanie podkreślać skalowalność języka, stąd Scala ("scalable language").Ruby to interpretowany, w pełni obiektowy i dynamicznie typowany język programowania stworzony w 1995 roku przez Yukihiro Matsumoto (pseudonim Matz). W języku angielskim ruby oznacza rubin.

Struktury te występują w wielu językach programowania, są obecne we wszystkich językach funkcyjnych (np. Haskell) i wieloparadygmatowych z możliwością programowania funkcyjnego (np. Scala, Python, Ruby, C++11, Swift, Rust).

Zapis krotek w językach programowania jest często identyczny z matematycznym: elementy są zamknięte w nawiasach okrągłych, oddzielone od siebie przecinkami. Np. ("Jan", "Kowalski", 33) to 3-elementowa krotka, której dwa pierwsze elementy są łańcuchami znakowymi, trzeci natomiast – liczbą całkowitą.

Standard ML (SML) - język programowania funkcyjnego powstały w 1990 roku jako pierwszy standard języka ML (ang. Meta Language). Twórcami SML-a byli Robin Milner, Mads Tofte i Robert Harper.Swift – język programowania komputerów zaproponowany przez Apple Inc. podczas Worldwide Developers Conference 2 czerwca 2014. Język ma służyć programowaniu maszyn pracujących pod kontrolą systemów operacyjnych Mac OS X i iOS i ma być następcą Objective-C. Do kompilowania programów będą wykorzystywane narzędzia z rodziny LLVM.

Część języków programowania (m.in. SML, Python, Scala) posiada także możliwość „rozpakowania” do osobnych zmiennych wartości krotki zgodnie z jej strukturą, w tym ignorowanie niepotrzebnych elementów (w SML-u i Scali oznaczane znakiem podkreślenia).

Przykłady[ | edytuj kod]

Utworzenie dwóch krotek: 3-elementowej oraz 4-elementowej, w której jeden z elementów to inna 3-elementowa krotka.

Język programowania – zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje.Programowanie funkcyjne (lub programowanie funkcjonalne) – filozofia i metodyka programowania będąca odmianą programowania deklaratywnego, w której funkcje należą do wartości podstawowych, a nacisk kładzie się na wartościowanie (często rekurencyjnych) funkcji, a nie na wykonywanie poleceń.
    Jan    = ("Jan", "Kowalski", 33)
    Janina = ("Janina", "Nowak", (21, 12, 1978), 'K')

Odczyt elementów krotki przez podanie indeksów:

    imie     = Jan[0]
    nazwisko = Jan[1]
    wiek     = Jan[2]

"Rozpakowanie" wszystkich wartości krotki do osobnych zmiennych:

    imie, nazwisko, wiek = Jan

Wyciągnięcie wybranego elementu krotki:

Python – język programowania wysokiego poziomu ogólnego przeznaczenia i rozbudowanym pakiecie bibliotek standardowych, którego ideą przewodnią jest czytelność i klarowność kodu źródłowego. Jego składnia cechuje się przejrzystością i zwięzłością.Rust to kompilowalny język ogólnego przeznaczenia rozwijany przez Mozilla Research. Zaprojektowany z myślą aby był "bezpieczny współbieżny i praktyczny". Został zaprojektowany przez Graydon Hoare w 2006 roku, w 2009 projekt został przyjęty pod skrzydła Fundacji Mozilla. W 2010 Mozilla upubliczniła informację o języku. W 2011 roku kompilator języka, znany jako rustc, został z powodzeniem skompilowany przez samego siebie. Pierwsza numerowana wersja alfa została wydana w 2012.
    _, _, (_, _, RokUrodzenia), _ = Janina




Warto wiedzieć że... beta

Zmienna - konstrukcja programistyczna posiadająca trzy podstawowe atrybuty: symboliczną nazwę, miejsce przechowywania i wartość; pozwalająca w kodzie źródłowym odwoływać się przy pomocy nazwy do wartości lub miejsca przechowywania. Nazwa służy do identyfikowania zmiennej w związku z tym często nazywana jest identyfikatorem. Miejsce przechowywania przeważnie znajduje się w pamięci komputera i określane jest przez adres i długość danych. Wartość to zawartość miejsca przechowywania. Zmienna zazwyczaj posiada również czwarty atrybut: typ, określający rodzaj danych przechowywanych w zmiennej i co za tym idzie sposób reprezentacji wartości w miejscu przechowywania. W programie wartość zmiennej może być odczytywana lub zastępowana nową wartością, tak więc wartość zmiennej może zmieniać się w trakcie wykonywania programu, natomiast dwa pierwsze atrybuty (nazwa i miejsce przechowywania) nie zmieniają się w trakcie istnienia zmiennej. W zależności od rodzaju języka typ zmiennej może być stały lub zmienny. Konstrukcją podobną lecz nie pozwalającą na modyfikowanie wartości jest stała.

Reklama