Programmer Guide/Command Reference/EVAL/vvset: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
No edit summary |
No edit summary |
||
| Line 28: | Line 28: | ||
#c := eval vvset($#b, fill(4, 9, -3), 6, 1) | #c := eval vvset($#b, fill(4, 9, -3), 6, 1) | ||
// -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 } | // -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 } | ||
// reverse vector indeces | |||
#arev := eval vvset($#a, $#a, $#a[], -1) | |||
// -> #arev = { 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 } | |||
</pre> | </pre> | ||
[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]] | [[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]] | ||
Revision as of 08:12, 6 April 2011
Create a copy of the vector x and replace elements.
- Usage 1
vvset(x , y {, o {, d, n}}})- x
- source vector
- y
- replace value (scalar)
- o
- starting index, 0 <= o <
nrow(x)(default=0) - d
- index increment (default=1)
- n
- number of values to replace (default=
nrow(x))
- Result 1
- The result r is copy of the vector x. All elements
r[o+i*d](with:i = 0..n-1) are replaced by the valuey.
- Usage 2
vvset(x , y {, o {, d}})- x
- source vector
- y
- replace vector
- o
- starting index, 0 <= o <
nrow(x)(default=0) - d
- index increment (default=1)
- Result 2
- The result r is copy of the vector x. All elements
r[o+i*d](with:i = 0..nrow(y)-1) are replaced by the valuey[i].
The function failes if an index value is out of bounds.
Example:
#a := eval fill(10,0,1)
#b := eval vvset($#a, -1, 1, 2, 5)
// -> #b = { 0 , -1 , 2 , -1 , 4 , -1 , 6 , -1 , 8 , -1 }
#c := eval vvset($#b, fill(4, 9, -3), 6, 1)
// -> #c = { 0 , -1 , 2 , -1 , 4 , -1 , 9 , 6 , 3 , 0 }
// reverse vector indeces
#arev := eval vvset($#a, $#a, $#a[], -1)
// -> #arev = { 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 }