Les sentències de control de flux són fonamentals en qualsevol llenguatge de programació, ja que permeten controlar l'execució del codi en funció de condicions específiques. En aquest tema, explorarem les principals sentències de control de flux en Dart, incloent-hi les condicions, els bucles i les sentències de salt.

Contingut

Condicionals

if i else

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

void main() {
  int x = 10;

  if (x > 5) {
    print('x és més gran que 5');
  } else {
    print('x no és més gran que 5');
  }
}

else if

La sentència else if s'utilitza per comprovar múltiples condicions.

void main() {
  int x = 10;

  if (x > 10) {
    print('x és més gran que 10');
  } else if (x == 10) {
    print('x és igual a 10');
  } else {
    print('x és menor que 10');
  }
}

switch

La sentència switch s'utilitza per seleccionar una de moltes alternatives. És especialment útil quan es treballa amb valors discrets.

void main() {
  int x = 2;

  switch (x) {
    case 1:
      print('x és 1');
      break;
    case 2:
      print('x és 2');
      break;
    case 3:
      print('x és 3');
      break;
    default:
      print('x no és 1, 2 ni 3');
  }
}

Bucle for

El bucle for s'utilitza per repetir un bloc de codi un nombre determinat de vegades.

void main() {
  for (int i = 0; i < 5; i++) {
    print('i és $i');
  }
}

Bucle for-in

El bucle for-in s'utilitza per iterar sobre elements d'una col·lecció.

void main() {
  List<String> fruits = ['poma', 'plàtan', 'taronja'];

  for (String fruit in fruits) {
    print(fruit);
  }
}

Bucle while i do-while

while

El bucle while repeteix un bloc de codi mentre una condició sigui certa.

void main() {
  int i = 0;

  while (i < 5) {
    print('i és $i');
    i++;
  }
}

do-while

El bucle do-while és similar al while, però garanteix que el bloc de codi s'executi almenys una vegada.

void main() {
  int i = 0;

  do {
    print('i és $i');
    i++;
  } while (i < 5);
}

Sentències de Salt

break

La sentència break s'utilitza per sortir d'un bucle o una sentència switch.

void main() {
  for (int i = 0; i < 5; i++) {
    if (i == 3) {
      break;
    }
    print('i és $i');
  }
}

continue

La sentència continue s'utilitza per saltar a la següent iteració d'un bucle.

void main() {
  for (int i = 0; i < 5; i++) {
    if (i == 3) {
      continue;
    }
    print('i és $i');
  }
}

Exercicis Pràctics

Exercici 1: Condicionals

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

import 'dart:io';

void main() {
  print('Introdueix un número:');
  int? number = int.parse(stdin.readLineSync()!);

  if (number > 0) {
    print('El número és positiu');
  } else if (number < 0) {
    print('El número és negatiu');
  } else {
    print('El número és zero');
  }
}

Exercici 2: Bucle for

Escriu un programa que imprimeixi els números del 1 al 10.

void main() {
  for (int i = 1; i <= 10; i++) {
    print(i);
  }
}

Exercici 3: Bucle while

Escriu un programa que imprimeixi els números del 1 al 10 utilitzant un bucle while.

void main() {
  int i = 1;

  while (i <= 10) {
    print(i);
    i++;
  }
}

Exercici 4: switch

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

import 'dart:io';

void main() {
  print('Introdueix un número del 1 al 7:');
  int? day = int.parse(stdin.readLineSync()!);

  switch (day) {
    case 1:
      print('Dilluns');
      break;
    case 2:
      print('Dimarts');
      break;
    case 3:
      print('Dimecres');
      break;
    case 4:
      print('Dijous');
      break;
    case 5:
      print('Divendres');
      break;
    case 6:
      print('Dissabte');
      break;
    case 7:
      print('Diumenge');
      break;
    default:
      print('Número invàlid');
  }
}

Conclusió

En aquesta secció, hem après a utilitzar les sentències de control de flux en Dart, incloent-hi les condicions (if, else if, else, switch), els bucles (for, for-in, while, do-while) i les sentències de salt (break, continue). Aquestes eines són essencials per controlar el flux d'execució dels nostres programes i ens permeten escriure codi més flexible i potent. A continuació, passarem a explorar les funcions en Dart, que ens permetran organitzar i reutilitzar el nostre codi de manera més eficient.

© Copyright 2024. Tots els drets reservats