use strict; use warnings; # În Perl, operatorul ternar '?' (ternary operator) # reprezintă un mod concis pentru a scrie o expresia if-else. # Sintaxa acestuia este: # condition ? value_if_true : value_if_false # se evaluează condiția; # • Dacă este TRUE, returnează value_if_true. # • Dacă este FLASE, returnează value_if_false. # EXEMPLUL 1 : Cea mai comună utilizare my $age = 20; my $status = ($age >= 18) ? "Adult" : "Minor"; print "Status: $status\n"; # EXEMPLUL 2 : Utilizat în cadrul instrucțiunii print # Instrucțiunea print este exploatată asemenea unei funcții. my $score = 75; print (($score >= 50) ? "Pass\n" : "Fail\n"); # EXEMPLUL 3 : ternar imbricat # Foarte mare atenție la utilizarea lui. my $num = 0; my $desc = ($num > 0) ? "Positive" : ($num < 0) ? "Negative" : "Zero"; print "$desc\n"; # Cod de bună practică: # • a se utiliza pentru expresii, nu pentru logică complexă, lizibilitatea are de suferit în cazul imbricarii profunde. # • dacă rezultatul nu este utilizat/exploatat, este de preferat întodeauna if/else pentru claritate. # • de introdus întotdeauna între paranteze atunci când se combină mai mulți operatori pentru a evita probleme de precedență. # De asemenea, în Perl, operatorul ternar funcționează cu apeluri de funcții și valori implicite, # ceea ce reprezintă un caz de utilizare comun în lumea reală.