Les sentències condicionals són una part fonamental de qualsevol llenguatge de programació, ja que permeten que el codi prengui decisions basades en certes condicions. En C#, les sentències condicionals més comunes són if, else if, else i switch.

  1. Sentència if

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

Sintaxi

if (condició)
{
    // Bloc de codi a executar si la condició és certa
}

Exemple

int x = 10;

if (x > 5)
{
    Console.WriteLine("x és més gran que 5");
}

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

  1. Sentència else

La sentència else s'utilitza per executar un bloc de codi si la condició de la sentència if és falsa.

Sintaxi

if (condició)
{
    // Bloc de codi a executar si la condició és certa
}
else
{
    // Bloc de codi a executar si la condició és falsa
}

Exemple

int x = 3;

if (x > 5)
{
    Console.WriteLine("x és més gran que 5");
}
else
{
    Console.WriteLine("x no és més gran que 5");
}

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

  1. Sentència else if

La sentència else if s'utilitza per provar múltiples condicions. Si la primera condició és falsa, es prova la següent condició, i així successivament.

Sintaxi

if (condició1)
{
    // Bloc de codi a executar si la condició1 és certa
}
else if (condició2)
{
    // Bloc de codi a executar si la condició2 és certa
}
else
{
    // Bloc de codi a executar si cap de les condicions anteriors és certa
}

Exemple

int x = 7;

if (x > 10)
{
    Console.WriteLine("x és més gran que 10");
}
else if (x > 5)
{
    Console.WriteLine("x és més gran que 5 però menor o igual a 10");
}
else
{
    Console.WriteLine("x és menor o igual a 5");
}

En aquest exemple, el missatge "x és més gran que 5 però menor o igual a 10" es mostrarà perquè la condició x > 5 és certa.

  1. Sentència switch

La sentència switch s'utilitza per seleccionar una de moltes opcions basades en el valor d'una expressió.

Sintaxi

switch (expressió)
{
    case valor1:
        // Bloc de codi a executar si expressió == valor1
        break;
    case valor2:
        // Bloc de codi a executar si expressió == valor2
        break;
    // Més casos...
    default:
        // Bloc de codi a executar si cap dels casos anteriors és cert
        break;
}

Exemple

int dia = 3;

switch (dia)
{
    case 1:
        Console.WriteLine("Dilluns");
        break;
    case 2:
        Console.WriteLine("Dimarts");
        break;
    case 3:
        Console.WriteLine("Dimecres");
        break;
    case 4:
        Console.WriteLine("Dijous");
        break;
    case 5:
        Console.WriteLine("Divendres");
        break;
    case 6:
        Console.WriteLine("Dissabte");
        break;
    case 7:
        Console.WriteLine("Diumenge");
        break;
    default:
        Console.WriteLine("Dia invàlid");
        break;
}

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

Exercicis Pràctics

Exercici 1

Escriu un programa que demani a l'usuari que introdueixi un número i mostri si el número és positiu, negatiu o zero.

Solució

Console.Write("Introdueix un número: ");
int numero = int.Parse(Console.ReadLine());

if (numero > 0)
{
    Console.WriteLine("El número és positiu.");
}
else if (numero < 0)
{
    Console.WriteLine("El número és negatiu.");
}
else
{
    Console.WriteLine("El número és zero.");
}

Exercici 2

Escriu un programa que demani a l'usuari que introdueixi una nota (0-100) i mostri la qualificació corresponent (A, B, C, D, F).

Solució

Console.Write("Introdueix una nota (0-100): ");
int nota = int.Parse(Console.ReadLine());

if (nota >= 90)
{
    Console.WriteLine("Qualificació: A");
}
else if (nota >= 80)
{
    Console.WriteLine("Qualificació: B");
}
else if (nota >= 70)
{
    Console.WriteLine("Qualificació: C");
}
else if (nota >= 60)
{
    Console.WriteLine("Qualificació: D");
}
else
{
    Console.WriteLine("Qualificació: F");
}

Exercici 3

Escriu un programa que demani a l'usuari que introdueixi un dia de la setmana (1-7) i mostri el nom del dia corresponent.

Solució

Console.Write("Introdueix un dia de la setmana (1-7): ");
int dia = int.Parse(Console.ReadLine());

switch (dia)
{
    case 1:
        Console.WriteLine("Dilluns");
        break;
    case 2:
        Console.WriteLine("Dimarts");
        break;
    case 3:
        Console.WriteLine("Dimecres");
        break;
    case 4:
        Console.WriteLine("Dijous");
        break;
    case 5:
        Console.WriteLine("Divendres");
        break;
    case 6:
        Console.WriteLine("Dissabte");
        break;
    case 7:
        Console.WriteLine("Diumenge");
        break;
    default:
        Console.WriteLine("Dia invàlid");
        break;
}

Resum

En aquesta secció, hem après sobre les sentències condicionals en C#, incloent if, else if, else i switch. Aquestes sentències permeten que el codi prengui decisions basades en condicions específiques. Hem vist exemples pràctics i hem realitzat exercicis per reforçar els conceptes apresos. En la següent secció, explorarem els bucles, que ens permetran repetir blocs de codi de manera eficient.

© Copyright 2024. Tots els drets reservats