Ternaarne tehe

Ternaarne tehe ehk ternaarne operatsioon ehk ternaarne operaator  on matemaatikas tehe aarsusega 3 ehk kolme muutuja funktsioon.

Üldjuhul on tegemist kujutusega kolme hulga otsekorrutisest neljandasse hulka. 

Ternaarne algebraline tehe hulgal A on kujutus otsekorrutiselt A×A×A hulka A.
 
Programmeerimiskeeltes C, C++, C#, Java ja Perl on ternaarseks tehtemärgiks ?:.   

Selle argumendid on üks kahendmuutuja (loogiline muutuja) ja kaks lauset ning selle tagastusväärtus on esimese lause tagastusväärtus, kui kahendmuutuja on tõene, ja teise lause tagastusväärtus, kui kahendmuutuja on väär.  

Näiteks z = (x > y) ? x : y; omistab muutujale z väärtuse x, kui x on  suurem kui y, ja muudel juhtudel väärtuse  y (lause sätib z võrdseks x ja y maksimumiga). 

Mõned programmeerijad peavad selle ternaarse tehtemärgi kasutamist halvaks praktikaks, kuigi ta võib teatud juhtudel olla kasulik if-lausete kuhjamise takistamiseks. 

Üldalgebra
Programmeerimine

de:Bedingte Anweisung und Verzweigung#Auswahloperator