Les declaracions condicionals són una part fonamental de qualsevol llenguatge de programació, ja que permeten que el codi prengui decisions basades en certes condicions. En Delphi/Object Pascal, les declaracions condicionals més comunes són if, case, i else.

Continguts

Declaració if

La declaració if s'utilitza per executar un bloc de codi només si una condició específica és certa.

Sintaxi

if condició then
  instrucció;

Exemple

var
  x: Integer;
begin
  x := 10;
  if x > 5 then
    WriteLn('x és més gran que 5');
end.

En aquest exemple, el missatge "x és més gran que 5" es mostrarà perquè la condició x > 5 és certa.

Declaració else

La declaració else s'utilitza juntament amb if per executar un bloc de codi alternatiu si la condició és falsa.

Sintaxi

if condició then
  instrucció1
else
  instrucció2;

Exemple

var
  x: Integer;
begin
  x := 3;
  if x > 5 then
    WriteLn('x és més gran que 5')
  else
    WriteLn('x no és més gran que 5');
end.

En aquest exemple, el missatge "x no és més gran que 5" es mostrarà perquè la condició x > 5 és falsa.

Declaració case

La declaració case s'utilitza per seleccionar una de diverses alternatives basades en el valor d'una expressió.

Sintaxi

case expressió of
  valor1: instrucció1;
  valor2: instrucció2;
  ...
  else
    instruccióN;
end;

Exemple

var
  dia: Integer;
begin
  dia := 3;
  case dia of
    1: WriteLn('Dilluns');
    2: WriteLn('Dimarts');
    3: WriteLn('Dimecres');
    4: WriteLn('Dijous');
    5: WriteLn('Divendres');
    else
      WriteLn('Cap de setmana');
  end;
end.

En aquest exemple, el missatge "Dimecres" es mostrarà perquè el valor de dia és 3.

Exemples Pràctics

Exemple 1: Verificació de Paritat

var
  num: Integer;
begin
  num := 4;
  if num mod 2 = 0 then
    WriteLn('El número és parell')
  else
    WriteLn('El número és senar');
end.

Exemple 2: Classificació d'Edats

var
  edat: Integer;
begin
  edat := 20;
  if edat < 13 then
    WriteLn('Infant')
  else if edat < 20 then
    WriteLn('Adolescent')
  else
    WriteLn('Adult');
end.

Exemple 3: Selecció de Menú

var
  opció: Char;
begin
  opció := 'B';
  case opció of
    'A': WriteLn('Opció A seleccionada');
    'B': WriteLn('Opció B seleccionada');
    'C': WriteLn('Opció C seleccionada');
    else
      WriteLn('Opció no vàlida');
  end;
end.

Exercicis Pràctics

  1. Escriu un programa que determini si un número és positiu, negatiu o zero.
  2. Escriu un programa que classifiqui una nota (0-100) en les categories següents: Suspès, Aprovat, Notable, Excel·lent.
  3. Escriu un programa que mostri el nom del mes corresponent a un número (1-12).

Solucions

Exercici 1

var
  num: Integer;
begin
  num := -5;
  if num > 0 then
    WriteLn('El número és positiu')
  else if num < 0 then
    WriteLn('El número és negatiu')
  else
    WriteLn('El número és zero');
end.

Exercici 2

var
  nota: Integer;
begin
  nota := 85;
  if nota < 50 then
    WriteLn('Suspès')
  else if nota < 70 then
    WriteLn('Aprovat')
  else if nota < 90 then
    WriteLn('Notable')
  else
    WriteLn('Excel·lent');
end.

Exercici 3

var
  mes: Integer;
begin
  mes := 7;
  case mes of
    1: WriteLn('Gener');
    2: WriteLn('Febrer');
    3: WriteLn('Març');
    4: WriteLn('Abril');
    5: WriteLn('Maig');
    6: WriteLn('Juny');
    7: WriteLn('Juliol');
    8: WriteLn('Agost');
    9: WriteLn('Setembre');
    10: WriteLn('Octubre');
    11: WriteLn('Novembre');
    12: WriteLn('Desembre');
    else
      WriteLn('Número de mes no vàlid');
  end;
end.

Conclusió

Les declaracions condicionals són essencials per controlar el flux d'execució en un programa. Amb if, else, i case, pots crear programes que prenguin decisions basades en diferents condicions. Practica amb els exemples i exercicis proporcionats per consolidar els teus coneixements sobre aquest tema fonamental.

Curs de Programació Delphi/Object Pascal

Mòdul 1: Introducció a Delphi/Object Pascal

Mòdul 2: Estructures de Control i Procediments

Mòdul 3: Treballant amb Dades

Mòdul 4: Programació Orientada a Objectes

Mòdul 5: Funcions Avançades de Delphi

Mòdul 6: Desenvolupament d'Interfícies Gràfiques amb VCL i FMX

Mòdul 7: Desenvolupament Web i Mòbil

Mòdul 8: Millors Pràctiques i Patrons de Disseny

Mòdul 9: Projecte Final

© Copyright 2024. Tots els drets reservats