(if (or (null? 11) (null? 12)) sum (if (and (number? (car 11)) (number? (car 12))) (ipaux (cdr 11) (cdr 12) (+ sum (* (car 11) (car 12)))); (ipaux (cdr 11) (cdr 12) sum) ) ))
(if (or (null? L1) (null? L2)) result (if (or (null? L!)(null? L2)) (ip (cdr L1) (cdr L2) (+ result (* (car L1) (car L2)))) ) ))
(if (null? A) sum (if (null? B) sum (ipaux (cdr A) (cdr B) (+ sum (* (car A) (car B)))))))
(helper x y 0))
if((null? x) z if((null? y) z (helper (cdr x) (cdr y) (+ z (* (car x) (car y)))) )))
(define (ip l1 l2) (ip-aux l1 l2 0)) (define (ip-aux l1 l2 pRes) (if (or (null? l1) (null? l2)) pRes (ip-aux (cdr l1) (cdr l2) (+ pRes (*(car l1) (car l2)))))(Edited: 2021-11-15)
(define (ip_aux l1 l2 inner_product) (if (or (null? l1) (null? l2)) (if (and (number? (car l1) (number? (car l2)))) (ip_aux (cdr l1) (cdr l2) (+ inner_product (* (car l1) (car l2)))) ) ) ) (define (ip l1 l2) (ip_aux l1 l2 0) )
(iphelp x y 0)) (define (iphelp x y z) (if (null? x) z (if (null? y) z (iphelp (cdr x) (cdr y) (+ z (* (car x) (car y)))))))