En aquesta secció, veurem exemples pràctics de com utilitzar les sentències condicionals, bucles i sentències switch
en Objective-C. Aquests exemples t'ajudaran a comprendre millor com controlar el flux del teu programa.
- Sentències Condicionals
Exemple 1: Sentència if-else
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int age = 20; if (age >= 18) { NSLog(@"Ets un adult."); } else { NSLog(@"Ets un menor."); } } return 0; }
Explicació:
- Declarem una variable
age
amb el valor 20. - Utilitzem una sentència
if-else
per comprovar siage
és major o igual a 18. - Si la condició és certa, es mostra el missatge "Ets un adult.".
- Si la condició és falsa, es mostra el missatge "Ets un menor.".
Exemple 2: Sentència if-else if-else
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int score = 85; if (score >= 90) { NSLog(@"Excel·lent!"); } else if (score >= 75) { NSLog(@"Bé fet!"); } else if (score >= 50) { NSLog(@"Pots millorar."); } else { NSLog(@"Necessites estudiar més."); } } return 0; }
Explicació:
- Declarem una variable
score
amb el valor 85. - Utilitzem una sentència
if-else if-else
per avaluar diferents rangs de puntuació. - Es mostra un missatge diferent segons el valor de
score
.
- Bucles
Exemple 1: Bucle for
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { for (int i = 0; i < 5; i++) { NSLog(@"Iteració %d", i); } } return 0; }
Explicació:
- Utilitzem un bucle
for
per iterar des de 0 fins a 4. - A cada iteració, es mostra el missatge "Iteració" seguit del valor de
i
.
Exemple 2: Bucle while
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int count = 0; while (count < 5) { NSLog(@"Comptador: %d", count); count++; } } return 0; }
Explicació:
- Declarem una variable
count
amb el valor 0. - Utilitzem un bucle
while
per iterar mentrecount
sigui menor que 5. - A cada iteració, es mostra el valor de
count
i després s'incrementa en 1.
- Sentències
switch
switch
Exemple: Sentència switch
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int day = 3; switch (day) { case 1: NSLog(@"Dilluns"); break; case 2: NSLog(@"Dimarts"); break; case 3: NSLog(@"Dimecres"); break; case 4: NSLog(@"Dijous"); break; case 5: NSLog(@"Divendres"); break; case 6: NSLog(@"Dissabte"); break; case 7: NSLog(@"Diumenge"); break; default: NSLog(@"Dia invàlid"); break; } } return 0; }
Explicació:
- Declarem una variable
day
amb el valor 3. - Utilitzem una sentència
switch
per comprovar el valor deday
. - Segons el valor de
day
, es mostra el nom corresponent del dia de la setmana. - La sentència
default
es fa servir per gestionar qualsevol valor que no coincideixi amb cap dels casos anteriors.
Exercicis Pràctics
Exercici 1: Sentència if-else
Escriu un programa que comprovi si un nombre és parell o senar.
Solució:
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int number = 7; if (number % 2 == 0) { NSLog(@"%d és parell.", number); } else { NSLog(@"%d és senar.", number); } } return 0; }
Exercici 2: Bucle for
Escriu un programa que mostri els nombres del 1 al 10.
Solució:
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { for (int i = 1; i <= 10; i++) { NSLog(@"%d", i); } } return 0; }
Exercici 3: Sentència switch
Escriu un programa que mostri el nom del mes segons un nombre del 1 al 12.
Solució:
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int month = 4; switch (month) { case 1: NSLog(@"Gener"); break; case 2: NSLog(@"Febrer"); break; case 3: NSLog(@"Març"); break; case 4: NSLog(@"Abril"); break; case 5: NSLog(@"Maig"); break; case 6: NSLog(@"Juny"); break; case 7: NSLog(@"Juliol"); break; case 8: NSLog(@"Agost"); break; case 9: NSLog(@"Setembre"); break; case 10: NSLog(@"Octubre"); break; case 11: NSLog(@"Novembre"); break; case 12: NSLog(@"Desembre"); break; default: NSLog(@"Mes invàlid"); break; } } return 0; }
Conclusió
En aquesta secció, hem vist com utilitzar les sentències condicionals, bucles i sentències switch
en Objective-C amb exemples pràctics. Aquests conceptes són fonamentals per controlar el flux del teu programa i prendre decisions basades en diferents condicions. Practica amb els exercicis proporcionats per reforçar els teus coneixements i prepara't per al següent tema.
Curs de Programació en Objective-C
Mòdul 1: Introducció a Objective-C
- Introducció a Objective-C
- Configuració de l'Entorn de Desenvolupament
- Sintaxi i Estructura Bàsiques
- Tipus de Dades i Variables
- Operadors i Expressions
Mòdul 2: Flux de Control
Mòdul 3: Funcions i Mètodes
- Definició i Crida de Funcions
- Paràmetres de Funció i Valors de Retorn
- Sintaxi de Mètodes en Objective-C
- Mètodes de Classe i d'Instància
Mòdul 4: Programació Orientada a Objectes
Mòdul 5: Gestió de Memòria
- Introducció a la Gestió de Memòria
- Comptatge Automàtic de Referències (ARC)
- Retenció i Alliberament Manual
- Millors Pràctiques de Gestió de Memòria
Mòdul 6: Temes Avançats
Mòdul 7: Treballant amb Dades
- Gestió d'Arxius
- Serialització i Deserialització
- Conceptes Bàsics de Xarxes
- Treballant amb JSON i XML
Mòdul 8: Desenvolupament d'Interfícies d'Usuari
- Introducció a UIKit
- Vistes i Controladors de Vista
- Disseny Automàtic
- Gestió de l'Entrada de l'Usuari