Как мне подсчитать элементы списка в wxmaxima?

#arraylist #maxima #wxmaxima

#arraylist #максимумы #wxmaxima

Вопрос:

В wxmaxima для моего задания мне был предоставлен список exp. L:[1,-2,3,4,-5,11,-12]

Мне нужно подсчитать элементы списка, которые меньше 0, распечатать эти данные и распечатать такие элементы. Я использовал:

 L:[1,-2,3,4,-5,11,-12]$
n: length(L)$
for k:1 thru n step 1 do
if L[k]<0 then print(L[k]);
  

и я получил:

 -2
-5
-12
done
  

Мой вопрос в том, как мне вывести количество элементов, которое в этом примере будет равно 3, на печать?

Комментарии:

1. Для этого есть разные способы, но простой способ — указать foo: sublist(L, P) , где P — функция-предикат, а затем сказать length(foo) . Подходящий предикат, например, lambda([x], x < 0) .