Search ('all' for everything):
Search results:
N^N — compute exponential
expr & expr — evaluate in conjunction
expr \ i — limit generator
expr1 | expr2 — evaluate alternatives
L|||L — concatenate lists
N%N — compute remainder
N+N — compute sum
N/N — compute quotient
N1∗N2 — compute product
N<=N — numerically less than or equal
N<N — numerically less than
N=N — numerically equal
N>=N — numerically greater than or equal
N>N — numerically greater than
N~=N — numerically not equal
N–N — compute difference
R.f — get field of record
s ? expr — scan string
s<<=s — lexically less than or equal
s<<s — lexically less than
s==s — lexically equal
s>>=s — lexically greater than or equal
s>>s — lexically greater than
s||s — concatenate strings
s~==s — lexically not equal
v op:=x — augmented assignment
v:=:v — exchange values
v:=x — assign value
v<–>v — exchange values reversibly
v<–x — assign value reversibly
x++x — compute cset or set union
x===x — value equal
x@C — transmit value to co-expression
x~===x — value not equal
x––x — compute cset or set difference
x∗∗x — cset or set intersection

Index of Function Types:
affects &pos
character sets
co-expressions
control structures
file processing
generators
infix operations
keywords
lists, sets and tables
math
metadata
output formatting
pattern matching
prefix operations
records
strings
windows and keyboards

Index of Subsystems:
base
digitcnt.icn
SNOBOL4 functions
 
generate random value
 
Description

?x1 : x2
If x1 is an integer, ?x1 produces a number from a pseudorandom sequence. If x1 > 0, it produces an integer in range 1 to x1, inclusive. If x1 = 0, it produces a real number in range 0.0 to 1.0.

If x1 is a string, ?x1 produces a randomly selected one-character substring of x1 that is a variable if x1 is a variable.

If x1 is a list or record, ?x1 produces a randomly selected element, which is a variable, from x1.

If x1 is a set, ?x1 produces a randomly selected member of x1.

If x1 is a table, ?x1 produces the value of a randomly selected element of x1 as a variable.
 
Parameters
x1
integer, string, list, record, set or table
returns
a random element of x1
 
Errors
113 x1 not integer, string, or a structure
205 x1 < 0
 
See Also