;gestione controlli
;------------------
;provax1

(prog1
(print"")

;se text vero esegue prima azione altrimenti esegue seconda
(setq a 6)
(setq b 7)
(setq c 6)
(setq somma 0)
(setq prodotto 0)


(if(equal a b)(setq somma(+ a b))(setq prodotto(* a b)))
(print a)
(print b)
(print somma)
(print prodotto)
;-------------------------------------------------------

(setq somma 0)
(setq prodotto 0)
(if(equal a c)(setq somma(+ a c))(setq prodotto(* a c)))
(print a)
(print c)
(print somma)
(print prodotto)
;-------------------------------------------------------
(setq somma 0)
(setq prodotto 0)
(defun sommare(a b)
 (print(+ a b)))

(defun moltiplicare(a b)
 (print(* a b)))

(if(equal a b)(sommare a b)(moltiplicare a b))
(if(equal a c)(sommare a c)(moltiplicare a c))
;----------------------------------------------


)

;gestione controlli
;------------------
;provax2

(prog1
(print"")
;----------------------------------------------------------
;se text vero esegui istruzioni seguenti

(setq a 5)
(setq b 5)

(when(equal a b)(print a)(print b)(print(+ a b))(print(* a b)))
(when(minusp a)(print a)(print b))
(print"-----------------------------------------------------")
;se text falso esegue istruzioni seguenti

(unless(equal a b)(print a)(print b))
(unless(minusp a)(print a)(print b)(print(* a a)))
(print"----------------------------------------------")
;esegue azione che segue text se vero

(cond((equal a b)(print a))((equal a a)(print a))((minusp a)(print a)))
(cond((equal 5 6)(print 5))((equal 6 7)(print 7))((equal 6 6)(print 6)))




)

;gestione funzioni
;------------------
;provax3

(prog1
(print"")
;----------------------------------------------------------

(defun esegue(a b)
 "stringa esplicativa:sommare e moltiplicare due numeri"
 (print(+ a b))
 (print(* a b)))

;-----------------------------------------------------------
;chiama funzione e assegna valori sui quali operare

(esegue 5 6)
(esegue 10 20)
;-----------------------------------------------------------
(print(esegue 15 20))
(setq risultato(esegue 4 2))
(print risultato)
)
ritorna