Les estructures de control són fonamentals en qualsevol llenguatge de programació, ja que permeten controlar el flux d'execució del codi. En aquest tema, aprendrem sobre les estructures de control en Perl, incloent-hi les condicions i les estructures de selecció.
Continguts
- Condicionals
if
else
elsif
- Operador ternari
- Estructures de Selecció
unless
given-when
(similar aswitch-case
en altres llenguatges)
- Condicionals
if
La instrucció if
s'utilitza per executar un bloc de codi si una condició és certa.
else
La instrucció else
s'utilitza per executar un bloc de codi si la condició de l'if
és falsa.
my $x = 3; if ($x > 5) { print "x és més gran que 5\n"; } else { print "x no és més gran que 5\n"; }
elsif
La instrucció elsif
(equivalent a else if
en altres llenguatges) s'utilitza per afegir condicions addicionals.
my $x = 5; if ($x > 5) { print "x és més gran que 5\n"; } elsif ($x == 5) { print "x és igual a 5\n"; } else { print "x és menor que 5\n"; }
Operador Ternari
L'operador ternari és una forma concisa d'escriure una condició if-else
.
- Estructures de Selecció
unless
La instrucció unless
és l'oposat de if
. Executa el bloc de codi si la condició és falsa.
given-when
La instrucció given-when
és similar a switch-case
en altres llenguatges i s'utilitza per seleccionar entre múltiples opcions.
use feature 'switch'; my $x = 2; given ($x) { when (1) { print "x és 1\n"; } when (2) { print "x és 2\n"; } when (3) { print "x és 3\n"; } default { print "x no és 1, 2 o 3\n"; } }
Exercicis Pràctics
Exercici 1
Escriu un programa que llegeixi un nombre de l'entrada de l'usuari i imprimeixi si el nombre és positiu, negatiu o zero.
print "Introdueix un nombre: "; my $num = <STDIN>; chomp($num); if ($num > 0) { print "El nombre és positiu\n"; } elsif ($num < 0) { print "El nombre és negatiu\n"; } else { print "El nombre és zero\n"; }
Exercici 2
Escriu un programa que llegeixi una nota (0-100) de l'entrada de l'usuari i imprimeixi la qualificació corresponent (A, B, C, D, F).
print "Introdueix una nota (0-100): "; my $nota = <STDIN>; chomp($nota); given ($nota) { when ($_ >= 90) { print "Qualificació: A\n"; } when ($_ >= 80) { print "Qualificació: B\n"; } when ($_ >= 70) { print "Qualificació: C\n"; } when ($_ >= 60) { print "Qualificació: D\n"; } default { print "Qualificació: F\n"; } }
Resum
En aquesta secció, hem après sobre les estructures de control en Perl, incloent-hi les instruccions if
, else
, elsif
, l'operador ternari, unless
i given-when
. Aquestes estructures ens permeten controlar el flux d'execució del nostre codi basant-nos en condicions específiques. Practica amb els exercicis proporcionats per reforçar els conceptes apresos.
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