;gestione matrici
;----------------------
;prodotto di una matrice per una costante
;matrix9
(prog1
(print "")
(setq matrice(make-array'(3 2):initial-contents'((2 3)(4 5)(6 7))))
(print matrice)
(defun legge(riga colonna costante)
(dotimes(conta 2 0)
(setq x(aref matrice riga colonna))
(print(* costante x))
(setq colonna(+ colonna 1)))
(print"------------"))
(setq riga 0)
(setq colonna 0)
(dotimes(conta 3 0)
(legge riga colonna 10)
(setq riga(+ riga 1)))
(terpri)
)
;gestione matrici
;estrazione elementi da matrice
;matrix8
;-------------------------
(prog1
(print "")
(setq matrice(make-array'(3 3):initial-contents'
((rosso verde nero)(alto basso corto)(rossi verdi bianchi))))
(print matrice)
(defun legge(riga col)
(dotimes(conta 3 0)
(print(aref matrice riga col ))
(setq col(+ col 1)))
(print "-----------"))
(setq riga 0)
(setq col 0)
(dotimes(conta 3 0)
(legge riga col)
(setq riga(+ riga 1)))
(terpri)
)
(prog1
(setq matrice(make-array'(3 2):initial-contents'((1 1)(2 2)(3 3))))
(setq r0(array-dimension matrice 0))
(setq r1(array-dimension matrice 1))
(print r0)
(print r1)
(setq riga -1)
(dotimes(conta r0 0)
(setq colonna 0)
(setq riga(+ riga 1))
(dotimes(conta1 r1 0)
(print(aref matrice riga colonna))
(setq colonna(+ colonna 1))))
)
;mate6
;cerca dimensione matrice e assegna a cicli DOTIMES
ritorna