Question
Using Lispworks personal edition 6. Write a function DOT-PRODUCT that takes two lists, each list has three numbers (elements), and produces the dot product of
Using Lispworks personal edition
6. Write a function DOT-PRODUCT that takes two lists, each list has three numbers (elements), and produces the dot product of the vectors that they represent. For example,
-> (DOT-PRODUCT '(1.2 2.0 -0.2) '(0.0 2.3 5.0))
-> 3.6
The answer for this question can be found in file DOT-PRODUCT.LSP in the same directory. The key for designing a lisp function is using recursion.
7. Write a function COUNT-NUMBER that counts the number of numbers that occur in a list. It should work like this:
-> (COUNT-NUMBER '(A 2.3 B 5 4.53 C F))
-> 3
Hint: To determine whether s-expression is a number or not, use numberp function. The following examples show how numberp works:
-> (numberp 5)
-> T
-> (numberp 5.5)
-> T
-> (numberp T)
-> nil
-> (numberp (A B))
-> nil
8. Write a function NEW-LIST that takes a number as its argument and constructs a list of that length containing all Ts. For example,
-> (new-lit 5)
-> (T T T T T)
9. The Lisp function LENGTH counts the number of elements in the top level of a list. Write a function ALL-LENGTH of one argument that counts the number of atoms that occur in a list at all levels. Thus, the following lists will have the following ALL-LENGTHs.
(A B C) => 3
((A (B C) D (E F)) => 6
(NIL NIL (NIL NIL) NIL ) => 5
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started