Programma di esempio MATRIX.PRT |
; MATRIX
;
; Programma per Proteus
;
; (C) 1998-2003 Simone Zanella Productions
;
; Funzioni per manipolare matrici bidimensionali.
FUNCTION MatNew(row, col)
; Crea una matrice di row righe e col colonne
hmat = VECNEW(row)
FOR r = 1 TO row
VECSET(hmat, r, VECNEW(col))
NEXT
RETURN hmat
FUNCTION MatLen(hmat)
; Ritorna il numero di elementi in una matrice, assumendo
; che ogni riga abbia la stessa lunghezza
RETURN MUL(VECLEN(hmat), VECLEN(VECGET(hmat, 1)))
FUNCTION MatGet(hmat, row, col)
; Ritorna l'elemento row, col della matrice hmat
RETURN VECGET(VECGET(hmat, row), col)
FUNCTION MatSet(hmat, row, col, val)
; Imposta l'elemento row, col della matrice hmat a val
RETURN VECSET(VECGET(hmat, row), col, val)
FUNCTION MatFree(hmat)
; Libera la memoria riservata per la matrice hmat
limit = VECLEN(hmat)
FOR row = 1 TO limit
VECFREE(VECGET(hmat, row))
NEXT
RETURN VECFREE(hmat)