[ Prev ]
2021-11-10

-- Nov 10 In-Class Exercise Thread
(define (ip l1 l2)
    ( if (null? l1 ) 0 
    	( if (null? l2 ) 0
        	( + (* (car l1) (car l2)) (ip (cdr l1) (cdr l2))))))
(define (ip l1 l2) ( if (null? l1 ) 0 ( if (null? l2 ) 0 ( + (* (car l1) (car l2)) (ip (cdr l1) (cdr l2))))))

User Icon
-- Nov 10 In-Class Exercise Thread
 (define (ip x y)
   (iph x y 0))
 (define (iph x y n)
   (if (null? x) n
   (if (null? y) n
   (iph (cdr x) (cdr y) (+ n (* (car x) (car y)))))))
(define (ip x y) (iph x y 0)) (define (iph x y n) (if (null? x) n (if (null? y) n (iph (cdr x) (cdr y) (+ n (* (car x) (car y)))))))

-- Nov 10 In-Class Exercise Thread
 (define (ip-helper ListA ListB sum-so-far)
     (if (null? ListA) sum-so-far
 	(if (null? ListB) sum-so-far
 	(define a 0)
 	(define b 0)
 	(if (number? car(ListA)) (let a (car ListA))
 	(if (number? car(ListB)) (let b (car ListB))
 	(+ sum-so-far (* a b ))
          (ip (cdr ListA) (cdr ListB) sum-so-far )))
 (define (ip ListA ListB) (ip-helper ListA ListB 0))
(define (ip-helper ListA ListB sum-so-far) (if (null? ListA) sum-so-far (if (null? ListB) sum-so-far (define a 0) (define b 0) (if (number? car(ListA)) (let a (car ListA)) (if (number? car(ListB)) (let b (car ListB)) (+ sum-so-far (* a b )) (ip (cdr ListA) (cdr ListB) sum-so-far ))) (define (ip ListA ListB) (ip-helper ListA ListB 0))

-- Nov 10 In-Class Exercise Thread
(define (ip list1 list2) (ip2 list1 list2 0)) (define (ip2 list1 list2 n)
    (if (or (null? list1) (null? list2)) n
        (if (and (number? (car list1)) (number? (car list2)))
            (ip2 (cdr list1) (cdr list2) (+ n (* (car list1) (car list2))))
            (ip2 (cdr list1) (cdr list2) n)))) 
(define (ip list1 list2) (ip2 list1 list2 0)) (define (ip2 list1 list2 n) (if (or (null? list1) (null? list2)) n (if (and (number? (car list1)) (number? (car list2))) (ip2 (cdr list1) (cdr list2) (+ n (* (car list1) (car list2)))) (ip2 (cdr list1) (cdr list2) n))))

-- Nov 10 In-Class Exercise Thread
(define (ip L1 L2 sum)
  (if (or (null? L1)(null? L2)) sum
      (if (and (number? (car L1)) (number? (car L2)))
          (ip (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2))))
          (ip (cdr L1) (cdr L2) sum))
  ))
(ip '(1 #f 3) '(3 4 5) 0)
(define (ip L1 L2 sum) (if (or (null? L1)(null? L2)) sum (if (and (number? (car L1)) (number? (car L2))) (ip (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2)))) (ip (cdr L1) (cdr L2) sum)) )) (ip '(1 #f 3) '(3 4 5) 0)

-- Nov 10 In-Class Exercise Thread
(define (ip L1 L2) (aux L1 L2 0)) (define (aux L1 L2 sum) (if (or (null? L1) (null? L2))) sum (define zero 0) (if (number? (car L1)) (let zero (car L1)) (if (number? (car L2)) (let zero (car L2)) (aux (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2)))))))
<nowiki> (define (ip L1 L2) (aux L1 L2 0)) (define (aux L1 L2 sum) (if (or (null? L1) (null? L2))) sum (define zero 0) (if (number? (car L1)) (let zero (car L1)) (if (number? (car L2)) (let zero (car L2)) (aux (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2))))))) </nowiki>

-- Nov 10 In-Class Exercise Thread
Resource Description for 20211110_190225.jpg
((resource:20211110_190225.jpg|Resource Description for 20211110_190225.jpg))

-- Nov 10 In-Class Exercise Thread
(define (ip_aux L1 L2 sum)
    (if (or (null? L1) (null? L2))
        sum 
        (if (and (number? (car L1)) (number? (car L2)))
            (ip_aux (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2)))) 
            (ip_aux (cdr L1) (cdr L2) sum) 
        )
    )
)
 
(define (ip L1 L2) (ip_aux L1 L2 0))
(define (ip_aux L1 L2 sum) (if (or (null? L1) (null? L2)) sum (if (and (number? (car L1)) (number? (car L2))) (ip_aux (cdr L1) (cdr L2) (+ sum (* (car L1) (car L2)))) (ip_aux (cdr L1) (cdr L2) sum) ) ) ) (define (ip L1 L2) (ip_aux L1 L2 0))

-- Nov 10 In-Class Exercise Thread
 (define (ip-randm List1 List2 res)
      (if (or (null? List1) (null? List2))) res
          ip-randm (cdr List1) (cdr List2) (+ (res (* (car List1) (car List2)))))
 (define (ip List1 List2) (ip-randm List1 List2 0))
(define (ip-randm List1 List2 res) (if (or (null? List1) (null? List2))) res ip-randm (cdr List1) (cdr List2) (+ (res (* (car List1) (car List2))))) (define (ip List1 List2) (ip-randm List1 List2 0))

-- Nov 10 In-Class Exercise Thread
(define (ipaux l1 l2 sum)
    (if (or (null? l1) (null? l2))
        sum ;
        (if (and (number? (car l1)) (number? (car l2)))
            (ipaux (cdr l1) (cdr l2) (+ sum (* (car l1) (car l2)))) ;
            (ipaux (cdr l1) (cdr l2) sum) ;
        )
    )
)
(define (ip l1 l2) (ipaux l1 l2 0))
<pre> (define (ipaux l1 l2 sum) (if (or (null? l1) (null? l2)) sum ; (if (and (number? (car l1)) (number? (car l2))) (ipaux (cdr l1) (cdr l2) (+ sum (* (car l1) (car l2)))) ; (ipaux (cdr l1) (cdr l2) sum) ; ) ) ) (define (ip l1 l2) (ipaux l1 l2 0)) </pre>
[ Next ]
X