12.1 |
These exercises are grouped by topic and organized
like the section, with programs that are first to be read
and then to be rewritten. However, a reader already familiar
with a given topic might begin by writing.
A. Properties of numbers
pn=: >:@i. |
Positive numbers (e.g. pn 9) |
rt=: pn |/ pn |
Remainder table |
dt=: 0&=@rt |
Divisibility table |
nd=: +/@dt |
Number of divisors |
prt=: 2&=@nd |
Prime test |
prsel=: prt # pn |
Prime select |
N=: >:@pn |
Numbers greater than 1 |
rtt=: ,@(N */ N) |
Ravelled times table |
aprt=: -.@(N e. rtt) |
Alternative test and selection
(primes do not occur in the times table for N) |
apsel=: aprt # N |
|
pfac=: q: |
Prime factors |
first=: p:@i. |
First primes |
B. Coordinate Geometry
Do experiments on the vector (or point) p=: 3 4
and the triangle represented by the
table tri=: 3 2$ 3 4 6 5 7 2
L=: %:@:(+/)@:*:"1 |
Length of vector (See rank in the dictionary
or in Section 20 of the Introduction) |
LR=:L"1 |
Length of rows in table |
disp=: ] - 1&|. |
Displacement between rows |
LS=: LR@disp |
Lengths of sides of figure |
sp=: -:@(+/)@LS |
Semiperimeter (try sp tri) |
H=: %:@(*/)@(sp,sp-LS) |
Heron's formula for area |
det=: -/ . * |
Determinant (See dictionary) |
SA=: det@(,.&0.5) |
Signed area. Try SA@|. |
sa=:det@(],.%@!@<:@#) |
General signed volume; try on the tetrahedron |
tet=:?4 3$9 |
as well as on the triangle tri . |
|