I99
Gevraagd wordt een ALGOL-programma te ontwerpen voor het
berekenen van de sluittermen y1, y2, y3 en y4 van de 4
driehoeken en de sluitterm y5 van de sinusvoorwaarde van het
centmmnet.
De oplossing in de gebruikelijke schrijfwijze luidt:
y2 n -
sin
sin a143
'132 sin
sin a314
sin
sin a523
'634 sin
sin a3S2
In de formules (2.12) en (2.13) wordt niet, zoals in de theorie,
gebruik gemaakt van ln v-grootheden, maar van ii-grootheden,
omdat in dit geval de programmatische opzet daardoor eenvoudiger
wordt.
De eerste vraag die zich voordoet is op welke wijze men de gegeven
richtingen in het geheugen onderbrengt, zodat zij in het programma
te gebruiken zijn. Het ligt voor de hand hiervoor een rooster te
gebruiken. Omdat de richtingen grootheden zijn met 2 indices,
kan het beste uitgegaan worden van een 2-dimensionaal rooster.
Nodig is dan de verklaring:
array r[i o, 1:5]; (2.14)
Het terugzoeken van een richting is nu zeer eenvoudig. Zo is
r3A terug te zoeken als *[3,4].
Het rooster bevat plaatsruimte voor 25 richtingen. Echter zijn
slechts 16 richtingen gemeten, zodat 9 plaatsen in het rooster
worden gereserveerd zonder gebruikt te worden. Het zal duidelijk
zijn dat het percentage onbezette plaatsen in het 2-dimensionale
rooster groter zal worden, naarmate het betrokken driehoeksnet
groter wordt. Immers het aantal plaatsen in het rooster neemt wel,
maar het aantal richtingen neemt niet toe in evenredigheid met
het kwadraat van het aantal punten. Daarom zal bij grotere
<213 *13
*12
<*132 *32
*31
<*321 *21
*23
"314 *14
r13
<*143 *43
*41
<*431 *31
*34
-345 *45
*43
<*453 *53
*54
<*534 *34
*35
-352 *52
*53
<*523 *23
*25
<*235 *35
*32
y1- 7t -
a213
<*132 <*321
a314
<*143 <*431
—y3 71 -
-<*345
*453 <*534
yx li -
<*352
<*523 <*235
<*213
^431
<*321
<*453
^235
<*345
y5 1 -
^132"
^431 "^534 "^235
(2.10)
(2.11)
(2.12)
(2-13)