Lisp两个列表相乘并相加两个值

205

我有两个列表,每个列表中都有一个列表。我想每次从第一个列表中获取第三个值,并从第二个列表中获取第一个值,将这些项目相乘,然后将它们相加。

(defvar *list-1* ((item1 1 4) (item2 4 5) (item3 5 8)))
(defvar *list-2* ((1) (3) (5)))

所以我想要(1 * 4)+(3 * 5)+(5 * 8)= 59

到目前为止,我有以下代码

(defun get-total (lst lst1)
  (loop :for element :in lst 
        :for element1 :in lst1 
        :sum (third element)))
约书亚·泰勒(Joshua Taylor)

loop可以为您做一些破坏,因此您甚至不需要调用third,而只需在第一个列表中循环(nil nil a),它将a绑定到第三个值。您可以使用第二个列表执行相同的操作,但使用解构列表(b)除外然后您将拥有:

(loop :for (nil nil a)  :in '((item1 1 4) (item2 4 5) (item3 5 8)) 
      :for (b)          :in '((1) (3) (5))
      :summing (* a b))
;=> 59

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将两个列表相加

来自分类Dev

Python的两个列表相乘

来自分类Dev

将两个列表相乘

来自分类Dev

Python的两个列表相乘

来自分类Dev

将两个相等大小的列表相乘并将结果相加(点积)

来自分类Dev

两个资产编号相同的列表相加

来自分类Dev

使用list -erlang将两个列表相乘

来自分类Dev

两个变量列表相等

来自分类Dev

Prolog谓词将两个列表相乘(代表一元数)

来自分类Dev

如何将两个浮点数列表相乘

来自分类Dev

两个变量相加

来自分类Dev

两个函数相乘

来自分类Dev

两个函数相乘

来自分类Dev

将两个列表的第i个元素相加

来自分类Dev

在Spock框架中断言两个列表相等

来自分类Dev

两个大列表相交的高效算法

来自分类Dev

在不使用python中的库的情况下,将两个不同大小的元素明智的列表相乘

来自分类Dev

是什么使两个表相关?

来自分类Dev

是什么使两个表相关?

来自分类Dev

在odoo中将两个值相加(求和)

来自分类Dev

将两个整数之间的值相加?

来自分类Dev

当相同的键时,将两个地图的值相加

来自分类Dev

将两个不同的特定csv列的值相加

来自分类Dev

如何使用 SQL 命令对两个值求和或相加

来自分类Dev

如何从对列表中将每个对的两个元素相乘-Haskell

来自分类Dev

矩阵将两个列表与公式相乘

来自分类Dev

在Lisp中将2个列表相乘

来自分类Dev

如何将两个列表中具有相同键的字典值相加?

来自分类Dev

Swift-将两个UITextFeild的值相乘