nen we in een programma voorwaardelijke en
onvoorwaardelijke vertakkingen inbouwen.
Dit maakt het mogelijk een gedeelte van een
programma een aantal malen te herhalen (zgn.
„lussen" vormen). Ook kan men de machine
zelf aan de hand van een bepaald resultaat
verschillende onderdelen van een programma
laten kiezen. In fig. 5 wordt een voorbeeld ge
geven van de wijze, waarop een programma
genoteerd wordt.
Niet iedere gebruiker zal zelf programma's
opstellen. Programma's van algemeen voor
komende berekeningen zijn veelal aanwezig
in de programma-bibliotheek van Olivetti.
Men kan natuurlijk programma's kopiëren
van instellingen die eveneens een Olivetti be
zitten.
Toch verdient het aanbeveling zelf enige er
varing op te doen in het opstellen van pro
gramma's, teneinde overgenomen program
ma's aan te kunnen passen aan eigen behoefte
en om een efficiënt gebruik te kunnen maken
van de mogelijkheden van de machine. Be
langrijk is hierbij een vraagstuk wiskundig zo
te formuleren, dat het programmatisch een
voudig verwerkt kan worden.
De „101" bezit geen ingebouwd programma
voor goniometrische functies. Deze moeten
dus via reeksontwikkelingen of kettingbreuken
berekend worden. De reeksontwikkeling voor
x3 x5
is betrekkelijk eenvoudig te programmeren,
maar kan een tamelijk lange rekentijd vergen.
Indien een nauwkeurigheid is vereist van 7
decimalen kan deze oplopen tot 50 sec.
Hetzelfde resultaat kan men in 12 sec. be
reiken met een kettingbreuk. Cos x wordt
meestal afgeleid uit sin x
(cos x Vl sin2 x).
Halwax geeft een voorbeeld van een uitge
werkte kettingbreuk in het österreichische
Zeitschrift für Vermessungswesen 1968, nr. 4.
Voor het rekenen met de „101" zullen we zo
mogelijk formules met een tg- of cotg-functie
vermijden, omdat we graag volgens een vast
schema werken, bv. in dezelfde volgorde de
gegevens willen invoeren. Bij een (co)tg-functie
zal degene die de machine bedient, de opgave
eerst moeten toetsen en aan de hand daarvan
eventueel een andere volgorde moeten kiezen,
bv. indien tg^- oo. Met behulp van een voor
waardelijke vertakking is deze toets ook wel
in het programma in te bouwen. Dit gaat
meestal echter ten koste van extra programma
instructies.
Een voorbeeld van het vermijden van zowel
tangens als cotangens vinden we in het boven
genoemde artikel van Halwax: een punt P
wordt voorwaarts ingesneden vanuit A en B.
In de formule
(XB-XA) - (YbY,t) tgfiP
p A tgAP—tgSP
en Xp XA (YrY/f)tgAP vervangen we
sinus
tangens dooren vermenigvuldigen tel-
cosinus
Ier en noemer beide met cosAP cos BP.
YP Ya
XB-XAcos BP-(Yb-Ya) sin BP
s'mAPcosBPcosAPsinPP
_Xp XA
{XB—XA) cos BP—(Yh—Ya) sin BP
sinAPcosöPcosAPsinSP
Als tweede voorbeeld voor een aangepaste
berekeningswijze volgt de veelhoeksbereke-
ning.
Deze hebben we in vier fasen geprogram
meerd:
a. hoekvereffening;
b. berekening voorlopige coördinaten;
c. vereffening;
d. berekening definitieve coördinaten.
a. De hoekvereffening is dermate eenvoudig,
dat wij die niet geprogrammeerd uitvoe
ren.
b. Bij de berekening van de voorlopige coör
dinaten voeren wij in: een voorlopige
schaalfactor X' (veelal is X' 1,0), coördi
naten van het beginpunt A van de veel
hoek, vervolgens steeds argument en af
stand.
c. Voor de berekening van de definitieve
coördinaten verdelen we de sluitterm in
dwarsrichting fqniet in evenredigheid
met de lengte der zijden, maar geven de
gehele veelhoek een draaiing co g -jy-
om het beginpunt, d.w.z. alle argumenten
krijgen een gelijke correctie co. De sluit
term in de lengterichting wordt op de ge
bruikelijke wijze ingedeeld (lengte der
109
p/-\p zj IJ