En aquest tema, explorarem els diferents tipus d'operadors disponibles en Perl. Els operadors són símbols que indiquen a l'intèrpret de Perl que realitzi operacions específiques sobre una o més variables. Els operadors es poden classificar en diverses categories, com ara aritmètics, de comparació, lògics, de cadena, entre d'altres.
Tipus d'Operadors
- Operadors Aritmètics
Els operadors aritmètics s'utilitzen per realitzar operacions matemàtiques bàsiques.
| Operador | Descripció | Exemple |
|---|---|---|
+ |
Suma | $a + $b |
- |
Resta | $a - $b |
* |
Multiplicació | $a * $b |
/ |
Divisió | $a / $b |
% |
Mòdul (residu) | $a % $b |
** |
Exponenciació | $a ** $b |
Exemple:
my $a = 10;
my $b = 3;
print "Suma: ", $a + $b, "\n"; # Suma: 13
print "Resta: ", $a - $b, "\n"; # Resta: 7
print "Multiplicació: ", $a * $b, "\n"; # Multiplicació: 30
print "Divisió: ", $a / $b, "\n"; # Divisió: 3.33333333333333
print "Mòdul: ", $a % $b, "\n"; # Mòdul: 1
print "Exponenciació: ", $a ** $b, "\n";# Exponenciació: 1000
- Operadors de Comparació
Els operadors de comparació s'utilitzen per comparar dos valors. En Perl, hi ha operadors de comparació numèrica i de cadena.
Comparació Numèrica
| Operador | Descripció | Exemple |
|---|---|---|
== |
Igual a | $a == $b |
!= |
Diferent de | $a != $b |
< |
Menor que | $a < $b |
> |
Major que | $a > $b |
<= |
Menor o igual a | $a <= $b |
>= |
Major o igual a | $a >= $b |
Comparació de Cadena
| Operador | Descripció | Exemple |
|---|---|---|
eq |
Igual a | $a eq $b |
ne |
Diferent de | $a ne $b |
lt |
Menor que | $a lt $b |
gt |
Major que | $a gt $b |
le |
Menor o igual a | $a le $b |
ge |
Major o igual a | $a ge $b |
Exemple:
my $x = 5;
my $y = 10;
my $str1 = "apple";
my $str2 = "banana";
print "Igual a: ", $x == $y, "\n"; # Igual a: 0
print "Diferent de: ", $x != $y, "\n"; # Diferent de: 1
print "Menor que: ", $x < $y, "\n"; # Menor que: 1
print "Major que: ", $x > $y, "\n"; # Major que: 0
print "Igual a (cadena): ", $str1 eq $str2, "\n"; # Igual a (cadena): 0
print "Diferent de (cadena): ", $str1 ne $str2, "\n"; # Diferent de (cadena): 1
print "Menor que (cadena): ", $str1 lt $str2, "\n"; # Menor que (cadena): 1
print "Major que (cadena): ", $str1 gt $str2, "\n"; # Major que (cadena): 0
- Operadors Lògics
Els operadors lògics s'utilitzen per combinar expressions booleanes.
| Operador | Descripció | Exemple |
|---|---|---|
&& |
I lògic | $a && $b |
| ` | ` | |
! |
No lògic | !$a |
Exemple:
my $a = 1; # True
my $b = 0; # False
print "I lògic: ", $a && $b, "\n"; # I lògic: 0
print "O lògic: ", $a || $b, "\n"; # O lògic: 1
print "No lògic: ", !$a, "\n"; # No lògic: 0
- Operadors de Cadena
Els operadors de cadena s'utilitzen per manipular cadenes de text.
| Operador | Descripció | Exemple |
|---|---|---|
. |
Concatenació | $a . $b |
x |
Repetició | $a x $b |
Exemple:
my $str1 = "Hello";
my $str2 = "World";
print "Concatenació: ", $str1 . " " . $str2, "\n"; # Concatenació: Hello World
print "Repetició: ", $str1 x 3, "\n"; # Repetició: HelloHelloHello
- Operadors d'Assignació
Els operadors d'assignació s'utilitzen per assignar valors a les variables.
| Operador | Descripció | Exemple |
|---|---|---|
= |
Assignació | $a = $b |
+= |
Assignació amb suma | $a += $b |
-= |
Assignació amb resta | $a -= $b |
*= |
Assignació amb multiplicació | $a *= $b |
/= |
Assignació amb divisió | $a /= $b |
%= |
Assignació amb mòdul | $a %= $b |
**= |
Assignació amb exponenciació | $a **= $b |
Exemple:
my $a = 5;
my $b = 3;
$a += $b; # $a és ara 8
print "Assignació amb suma: $a\n";
$a -= $b; # $a és ara 5
print "Assignació amb resta: $a\n";
$a *= $b; # $a és ara 15
print "Assignació amb multiplicació: $a\n";
$a /= $b; # $a és ara 5
print "Assignació amb divisió: $a\n";
$a %= $b; # $a és ara 2
print "Assignació amb mòdul: $a\n";
$a **= $b; # $a és ara 8
print "Assignació amb exponenciació: $a\n";Exercicis Pràctics
Exercici 1
Escriu un programa en Perl que demani a l'usuari dos números i mostri el resultat de les operacions aritmètiques bàsiques (suma, resta, multiplicació, divisió, mòdul i exponenciació) entre aquests dos números.
Solució:
print "Introdueix el primer número: ";
my $num1 = <STDIN>;
chomp($num1);
print "Introdueix el segon número: ";
my $num2 = <STDIN>;
chomp($num2);
print "Suma: ", $num1 + $num2, "\n";
print "Resta: ", $num1 - $num2, "\n";
print "Multiplicació: ", $num1 * $num2, "\n";
print "Divisió: ", $num1 / $num2, "\n";
print "Mòdul: ", $num1 % $num2, "\n";
print "Exponenciació: ", $num1 ** $num2, "\n";Exercici 2
Escriu un programa en Perl que demani a l'usuari dues cadenes de text i mostri el resultat de la concatenació i la repetició de les cadenes.
Solució:
print "Introdueix la primera cadena: ";
my $str1 = <STDIN>;
chomp($str1);
print "Introdueix la segona cadena: ";
my $str2 = <STDIN>;
chomp($str2);
print "Concatenació: ", $str1 . " " . $str2, "\n";
print "Repetició: ", $str1 x 3, "\n";Conclusió
En aquesta secció, hem après sobre els diferents tipus d'operadors en Perl, incloent-hi els aritmètics, de comparació, lògics, de cadena i d'assignació. També hem vist exemples pràctics de com utilitzar aquests operadors en programes Perl. Els exercicis pràctics proporcionats t'ajudaran a reforçar els conceptes apresos. En la següent secció, explorarem les estructures de control en Perl.
Curs de Programació en Perl
Mòdul 1: Introducció al Perl
Mòdul 2: Programació Bàsica en Perl
Mòdul 3: Treballant amb Dades
Mòdul 4: Programació Intermèdia en Perl
Mòdul 5: Programació Avançada en Perl
- Expressions Regulars Avançades
- Interacció amb Bases de Dades amb DBI
- Programació Web amb Perl
- Multifil
