# Convert a list of points to separated points

Clueid shared this question 2 years ago
Answered

Hello,

Given a list of points, is there a command or script to automatically separate all points in this list to separated points so that I can interact with and connect with segments and etc...?

Bonus question: how can I determine the cardinality of a list?

I thought about:

i = 1

Repeat(cardinality(l1), Execute({"Element(l1, i)", "i = i +1"})

But it didn't work :( ... I also changed i into a parameter like this:

Repeat(cardinality(l1), Execute({"Element(l1, %1)", "%1 = %1 +1"}, i)

## Comments (4)

2

cardinality = Length

try

`Execute(Sequence("A_{"+k+"}=Element(l1,"+ k+")", k,1,Length(l1) ))`

1

Great! thanks..

Can the new points also inherit the definition of the points in the list?

Here's my trial:

`Execute(Sequence("A_{"+k+"}="+FormulaText(Element(l1, k), false), k,1,Length(l1)))`

But the problem is that Execute() does not accept FormulaText(X, false).. Any ideas?

Thanks in advance.

2

Whenever possible: use the version of Noel (more robust, faster)

In rare cases (e.g. filter over random numbers) you can use Repeat() or JS.

If you use Repeat():

• no conditions
• the index must be maintained by yourself.
• if you have a end-condition: handling inside Execute() (inside Repeat() it's not possible/tricky)

The most robust syntax is as in the example with Execute(). Inside Execute() no restrictions exists.

The Execute list as an independent object in the Algebra View has the higher performance and can be more transparent(?)

1

Thank you for the reply, it really helps =)

Leave a Comment
• GeoGebra
• Help
• Partners
• Contact us
• Feedback & Questions
• This email address is being protected from spambots. You need JavaScript enabled to view it.
• +43 677 6137 2693
© 2023 International GeoGebra Institute