[go: nahoru, domu]

Sari la conținut

Operație ternară

De la Wikipedia, enciclopedia liberă
Versiunea pentru tipărire nu mai este suportată și poate avea erori de randare. Vă rugăm să vă actualizați bookmarkurile browserului și să folosiți funcția implicită de tipărire a browserului.

În matematică, o operație ternară este o operație n-ară cu n = 3 operanzi. O operație ternară pe o mulțime A ia trei elemente date din A și le combină pentru a forma un singur element din A.

În informatică, un operator ternar este un operator care are trei argumente.[1]

Exemple

Fiind date punctele A, B și P, construcția geometrică produce V, proiecția conjugatului armonic al lui P față de A și B

Dacă K este un corp, funcția este un exemplu de operator ternar pe K. Proprietățile acestei operații ternare au fost folosite pentru a defini inelele ternare planare⁠(d) în bazele geometriei proiective.

În planul euclidian cu punctele a, b, c definite față de o origine, operația ternară a fost folosită pentru a defini vectorii euclidieni.[2] Deoarece (abc) = d implică ab = cd, aceste segmente orientate sunt echipotente și sunt asociate cu același vector euclidian. Oricare trei puncte din planul a, b, c determină astfel un paralelogram cu d la al patrulea vârf.

În geometria proiectivă diviziunea armonică este o operație ternară pe trei puncte. În diagramă, punctele A, B și P determină punctul V, conjugatul armonic al P față de A și B. Punctul R și linia prin P pot fi selectate în mod arbitrar, determinând C și D. Desenarea AC și BD determină intersecția Q, iar RQ determină apoi V.

Presupunând că A și B sunt două mulțimi date iar este colecția de relații binare între A și B. Compunerea relațiilor este întotdeauna definită atunci când A = B, dar în caz contrar compunerea ternară poate fi definită prin , care este relația inversă a q.[3]

În algebra booleană definește formula .

Informatică

În informatică, un operator ternar este un operator care are trei argumente (operanzi).[1] Argumentele și rezultatul pot fi de diferite tipuri. Multe limbaje de programare care folosesc sintaxe asemănătoare cu cea a lumbajului C[4] dispun de operatorul ternar ?:, care definește o instrucțiune de decizie⁠(d)[5]. În unele limbaje acest operator este numit operator condițional[6].

În Python instrucțiunea de decizie este x if C else y (x dacă condiția C este evaluată drept „adevărat”, y dacă este „fals”). Python are și o operație ternară asupra tablourilor: a[b:c] întoarce un tablou al cărui prim element este a[b] iar ultimul este a[c-1].[7] Expresiile OCaml permit operații ternare pe înregistrări, tablouri și șiruri: a.[b]<-c înseamnă că elementul cu indicele b din șirul a primește valoarea c.[8]

Operația de înmulțire și acumulare⁠(d) este alt operator ternar.

Alt exemplu de operator ternar este between (română între) din SQL.

Limbajul de programare Icon⁠(d) are operatorul ternar "to-by" (română până la-cu pasul): expresia 1 to 10 by 2 generează întregii impari de la 1 la 9.

Note

  1. ^ a b en MDN, nmve. „Conditional (ternary) Operator”. Mozilla Developer Network. MDN. Accesat în . 
  2. ^ en Jeremiah Certaine (1943) The ternary operation (abc) = a b−1c of a group, Bulletin of the American Mathematical Society 49: 868–77 MR0009953
  3. ^ en Christopher Hollings (2014) Mathematics across the Iron Curtain: a history of the algebraic theory of semigroups, page 264, History of Mathematics 41, American Mathematical Society ISBN: 978-1-4704-1493-1
  4. ^ en Hoffer, Alex. „Ternary Operator”. Cprogramming.com. Cprogramming.com. Accesat în . 
  5. ^ Daniela Zaharie, Algoritmi si structuri de date: Curs 1, Introducere în rezolvarea algoritmică a problemelor, Timișoara: Universitatea de Vest, 2019, p. 55, accesat 2021-08-18
  6. ^ Tipuri de date si operatori: Laborator 2, Universitatea Politehnica din București, accesat 2021-08-18
  7. ^ en „6. Expressions — Python 3.9.1 documentation”. docs.python.org. Accesat în . 
  8. ^ en „7.7 Expressions”. caml.inria.fr. Accesat în . 

Legături externe