20. Matrius

 

Índex

Definició

De vegades les variables que intervenen en un programa formen sèries, de manera que en comptes de denominar-les amb noms arbitraris qualssevol, és millor de designar-les amb un nom comú a totes i distingir-les mitjançant un número d'ordre, començant pel 0:

El conjunt de totes aquestes variables així disposades constitueix una matriu (array).

L'ús de matrius és especialment indicat quan es pugui fer una vinculació simple entre un resultat numèric i el número d'ordre de cada element de la matriu.

 

Creació de matrius

Per a la creació d'una matriu cal crear un exemplar de l'objecte predefinit Array():

on nom és el nom que donem lliurement a la matriu.

Per a l'establiment dels valors dels elements de la matriu hi ha dues possibilitats:

a) Especificar-los com arguments d'Array() en el moment de crear la matriu:

b) Especificar-los mitjançant instruccions d'assignació:

Els elements d'una matriu poden, com qualsevol altra variable, canviar de valor. Una instrucció d'assignació com ara

suprimeix qualsevol valor previ que tingués noms[4] i hi assigna el valor Antoni.

 

Ús de variables en les matrius

L'ús de matrius sistematitza la denominació de les variables quan n'hi ha moltes, però no és aquest el seu principal avantatge. Una cosa que els fa encara més útils és que el valor del nombre entre claudàtors pot ésser substituït per una variable que el contingui. Així

és equivalent a

D'aquesta manera el programa, en virtut d'un càlcul previ, ens adreça a una variable o a una altra fent ús del número d'ordre d'aquesta dins la matriu.

Exemple

 

Canvi d'ordre d'una matriu

Amb la funció reverse() invertim l'ordre dels elements de la matriu.

Amb la funció sort() podem ordenar alfabèticament els elements d'una matriu:

Exemple

Si la matriu conté nombres i hi apliquem la funció sort(), l'ordenació que obtindrem serà igualment alfabètica; és a dir, 23 precedirà 7. Si volem obtenir una ordenació numèrica, hem de definir una funció que realitzi una resta, com ara

Aquesta funció s'aplica com paràmetre de sort():

Exemple

 

Longitud d'una matriu

Com que una matriu pot ésser alimentada interactivament, és important disposar d'un recurs per a poder saber en cada moment de quants elements és composta. Això s'aconsegueix amb la propietat .length: