TECHNISCHE HOGESCHOOL DELFT
AFDELING DER SCHEEPSBOUW- EN SCHEEPVAARTKLJNDECENTRALE WERXGROEP WISKUNDE
Rapport No. 4
-
UNIVERSEEL PLOTPROGRANMA
- Ing. A.P.de Zwaan en ing. J.G.L.Pijfers
Herzien door ing. W.B.Tinbergen
Deift University of Technology Ship Hydromechanics Laboratory Mekelweg 2
2628 CD DELFT The Netherlands
INHOUD biz. 1.
ALGEÌEN
1. 1. Programma gegevens 1.2. Doel 1.3. Opzet2. ORGANISATIE VAN HET PROGRAMMA
2.1. Assen - schalen en raster 2
2.2. Lijnen en punten in de grafiek 2
2.3. Tekst onder de grafiek 2
2.4. Benodigde randapparatuur 2
3. BE STANDSORGANISAT lE
3.1. Gebruik plotprograuuna 3
3.2. Betekenis en invoer van de formele parameters 3
3.2.1. Stroomdíagram 6
3.3. Invoer van tekst 9
3.3.1. Algemeen 9
3.3.2. Mogelijkheden van tekstinvoer 9
3.3.3. Betekenis van verschillende symbolen 9
3.3.4. Volgorde van opgegeven tekst bij grafiek 9
I. BESCHRIJVING VAN DE GEBRUIKTE PROCEDURES IN HET PROGR.AMMA CWWPLT
1.1. Procedure voor het plotten van tekst 11
T code List 43
1.1.1. Doel 11
1.1.2. Algemeen 11
1.1.3. Gebruik van de procedure 11
1.1.4. Stroomdiagram 12
1.2. Procedure voor het bepalen van minima en maxima 18
MINMAX List 47
1.2.1. Doel 18
1.2.2. Algemeen 18
1.2.3. Gebruik van de procedure 18
1.2.4. Stroomdiagram 19
1.3. Procedure voor Lineaire schaalverdeling van de as/Ixas
plotter 20
SCAL XI List 48
1.3.1. Doel 20
1.3.2. Algemeen 20
1.3.3. Gebruik van de procedure 20
1.3.4. Stroomdiagram 21
1.4. Procedure voor lineaire schaalverdeling van de as//y-as
plotter 23
SCAL Yl List 49
1.4.1. Doel 23
1.4.2. Algemeen 23
1.4.3. Gebruik van de procedure 23
1.4.4. Stroomdiagram 24
1.5. Procedure voor een lineaire gradenverdeling van de as//x-as
plotter 26
SCAL X2 List 50
1.5.1. Doel 26
1.5.2. Algemeen 26
1.5.3. Gebruik van de procedure 26
1.5.4. Stroomdiagram 27
1.6. Procedure voor een lieaire gradenverdeling van de as//y-as
plotter 28
SCAL Y2 List 51
1.6.1. Doel 28
1.6.2. Algemeen 28
1.6.3. Gebruik van de procedure 28
INI-IOUD
biz..
1.7. Procedure voor bet bepalen van de schaal
voor x- of y-as 30
TRANS List
30
1.7.1. Doel 30
1.7.2. Algemeen 30
1.7.3. Gebruik van de procedure 30
1.7.4. Stroomdiagram 31
1.8. Procedure voor het plotten van de waarden langs de x-as
32
XAS List 53
1.8.1. Doel 32
1.8.2. Algemeen 32
1.8.3. Gebruik van de procedure 32
1.8.4. Stroomdiagram 33
1.9. Procedure voor bet plotten van de waarden langs de y-as
34
YAS List 54
1.9.1. Doel
1.9.2. Algemeen 34
1.9.3. Gebruik van de procedure 34
1.9.4. Stroomdiagram 35
1.10. Procedure voor plaats van schaalwaarden
36
SCHUIF List 55
1.10.1. Doel 36
1.10.2. Algemeen 36
1.10.3. Gebruik van de procedure 36
1.10.4. Stroomdiagram 37
1.11. Procedure voor bepaling van aantal decimalen achter de komma 38
NDC List 56
1.11.1. Doel 38
1.11.2. Algemeen 38
1.11.3. Gebruik van de procedure 38
1.11.4. Stroomdiagram
39
1.12. Procedure voor het plotten van lijnen 40
LINPLT List 57
1.12.1. Doel 40
1.12.2. Algemeen 40
1.12.3. Gebruik van de procedure 40
1.12.4. Stroomdiagram 41
1.13. Gebruikers symbolenlijst 42
LISTINGS VAN DE GEBRUIKTE PROCEDURES IN HET PROGRAIINA CWWPLT 43
-1-i .ALGEMEEN.
1.1 Programma gegevens
a. Taal
:Algol 60
b. Geheugen
160 K
c. Rekentijd
:n.v.t.
d. Naam
proce-dure
:CWWPLT
1.2 Doe]..
Het plotten van grafieken op een door de gebruiker op te
geven formaat. (Standaardformaat is A4).
Er wordt
zoda-fig rekening gehouden met de
inbiridrand en andere vrije
randen, dat de grafiek direct te
gebruiken is orn te
co-pieèren en in te binden in een rapport of publicatie.
Alle in
een grafiek
voorkornende
gevallen, zoals
bij-schriften bij de assen, verkiaring
van
lijnen en
symbo-len, figuurnummers met tekst onder de grafiek,
gestrook-te
]ijnen,
stippellijnen enz.
kunnen
geplot
worden,
zodat zonder latere aarivullingen met de hand of
met
let-termalleri
een complete
grafiek
verkregen kan
worden.
Een beperking
is echter, dat
voor bijschriften
bij de
assen
en tekst
onder
de
grafiek alleen
gebruik
kan
worden gernaakt van hoofdletters (zie bijlage:
symbolen-tafel).
In verband
met deze
beperkirig wordt
verwezen
naar een rapport van A.P. de Zwaan:
"Proposal
of Symbols
and
Quantities in
Shipbuilding"
Based
on
the
recommendations
of
the
I.T.T.C.,
the
I.S.S.C. and the International System of Units.
Hierin is in opdracht van de
commissie van
wetenschaps-beoefening
speciaal voor de computer
een symbolenlijst
opgenomen,
waarin
alleen hoofdletters
voorkomen.
Bij
gebruik van de plotter is deze symbolenhijst zeer aan te
bevelen.
1.3 Opzet.
De procedure "CWWPLT" is opgebouwd uit verschiliende
an-dere procedures, die
elk een specifieke
handeling
ver-richten.
Voor de beschrijving
van deze procedures, zie
debijiagen.
Procedure "CIWPLT"
maakt tevens gebruik
van procedures
uit de Fortranbibliotheek.
Voor het gebruik
van procedure
C%'WPLT" moeten
de
vol-gende bibliotheken worden aangesloten:
SBAL.LIBCWW
SYS1.FORTLIB
-2--2. ORGANISATIE VAN HET PROGRAMMA.
2.1 Assen, schalen en rasters.
De gebruiker heeft de volgende keuzemogelijkheden:
a) De x-as op de lange of korte kant
van het A4-formaat.
b) Voor
de
x-as
en y-asonafhankelijk
vanelkaar
verkrijgen van:
lineaire schaalverdeling
schaalverdeling in graden (fasehoeken)
In voorbereiding zijn flog:
reciproke schaalverdeling
logarithrnische schaalverdeling
polaire schaalverdeling
(X-
en y-as
niet
onafhan-kelijk)
c) Men kan
zelf de schaal
opgeven of het
programma de
schaal laten bepalen.
d) Zowel bij de x-as als bij
de y-as kan een bijschrift
geplaatst
worden van
èènregel,
waarbij men
alle
symbolen
uit desymbolenlijst
(zie bijiage) kangebruiken.
e) Men kan het
programma wel of geen
raster binnen een
grafiek laten plotten.
2.2 Linen en punten in de rafiek.
De gebruiker heeft de volgende keuzemogelijkheden:
Het
plotten
van punten
metgecentreerde
symbolen
(codenummers i
t/m 13
uit de
symbolentafel) zonder
deze te verbinden.
Het plotten
van punten met gecentreerde
symbDlen en
deze punten verbinden met rechte lijnstukjes.
C)
Het plotten
van punten met gecentreerde
symbolen en
deze
punten
door
eenstrokende
lijn
met
elkaar
verbinden.
Het piotten van niveaulijnen.
Een lijn
plotten, bestaande
uit rechte
lijnstukjes
tussen de punten, zonder plotten
van symbolen op die
punten.
Een strokende
lijn plotten
door een
aantal punten,
zonder plotten van symbolen op die punten.
Op een van de
bovengenoemde manieren een stippeliijn
plotten.
2.3 Tekst onder degrafiek.
Indien
de x-as
op
de lange
kant
van het
A4-forrnaatgekozen
wordt, dan
is het rnogelijk ornonder de
x-asmaximaal
5 regels
tekst
telaten schrijven
van
elk
maxirnaal 100 karakters.
Indien
de x-as
op
de korte
kant
van het
A4-formaat
gekozen
wordt, dan
is het
rnogelijk ornonder de
x-asmaxirnaal
9 regels
tekst
telaten schrijven
van
elkmaxirnaal 75 karakters.
Men kan
deze ruimte
gebruiken voor
het verklaren
van
lijnen en symbolen in de grafiek, voor figuurnummers
met
bijbehorende
tekst, enz.Alle
inde
symbolentafel
voorkomende
symbolen
zijn hiervoor
tegebruiken
metuitzondering van de codenurnmers
62( ) , 63( )en 125(')
2.1
-betekenis
gekregen.
Voor deinvoer
vantekst
ziehoofdstuk 3.
2.4 Benodigde randapparatuur.
a) Plotter De plotter wordt geactiveerd met de
stuur-kaart:
//GO. PLTDS DD SYSOUT=(I,
, $SPL).3. BESTANDSORGANISATIE.
3.1 Gebruik piotprogramma.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' CWWPLT(I,J,K,X,Y,PAXY,PBX,PBY,PCX,PDX,PCY,
PDY, PEX,PXMIN,PXMAX, PEY, PYMIN, PYMAX, PPP,FAC);
'INTEGER' 'ARRAY' I,J,PAXY,PBX,PBY,PDX,PDY,PEX,PEY,PPP;
'REAL' FAC; 'INTEGER' K;
'REAL' 'ARRAY' X, Y, PCX, PCY, PXMIN, PXMAX, PYMIN, PYMAX;
Aan de declaraties van het programma moet worden
toege-voegd:
'PROCEDURE' CWWPLT; 'CODE';
De
procedure staat
in destandaardbibliotheek van
de
"Centrale Werkgroep Wiskunde", genaarnd:
SBAL.LIBCWW.
De voigende twee bibliotheken moeten ook worden
aange-sloten:
yZ.VFORTLIB en SYS2.PLOTLIBF.
3.2 Betekenis en invoer van de formele parameters.
Alle parameters zijn invoerparameters
Pararneterdeci aratie Input
Omschrijving
I(/1:k,i:jm/)
Integer array
J'I(/kk,jj/) met
kk = 1,2,...k
jj = 1,2,..j(/kk/)
jm is hetgrootste
element uit
het array
J. I(/kk,jj/) is het
aantal x-y coördinateri
van de
jj-de lijn
inde kk-de grafiek.
J(/1:k/)Integer array
J(/kk/) met
kk = 1,2,...k
J(/kk/) is
het aantal
lijnen
inde
kk-de
grafiek.
KInteger
kAantal
tepiotten
grafieken.
X(/t:k,1:jm,1:im/)
Real array
X(/kk,jj,ii/) met
kk = 1,2,...k
jj = 1,2,..j(/kk/)
ii = 1,2,
...I(/kk,jj/) im ishet
grootste
element uit
het array
I.
X(/kk,jj,ii/)
isde
x-waarde
van hetii-de punt in de jj-de
lijn
van
dekk-de
grafiek.
Y(/j:k,1:jm,1:im/)
Real array
/Y(/kk,jj,ii/) met
kk = 1,2,...k
jj = 1,2,..j(/kk/)
ii = 1,2, .1 (/kk,jj/)Y(/kk,jj,ii/) is de
y-waarde
van het
ii-depunt in de
jj-de lijn
-3
Pa rameterdeci arati e Input
Omschrijving
PAXY(/1:k/)
Integer array
i
X-as van
de grafiek
opde
lange kant
van hetA4-formaat.
2
X-as van
de grafiek
op
de
korte kant
van
hetA4-formaat.
PBX(/i:k/)
Integer array
i
X-as op lineaire schaal.
2
X-as met schaalverdeling
in graden.
PBY(/i:k/)
Integer array
Ç
i
Y-as op lineaire schaal.
2
Y-as met schaalverdeling
in graden.
PCX(/l:k/)
Real array
0 Het
programma
bepaalt
zelf de schaal van de
x-as. 0 De
ruimte
tussen
deroosterlijnen
in de
x-richting in cm.
PDX(/i:k/)
Integer array
ç -IPDX(/kk/) I 0' 0
Getal
dat het
maximale
aantal
vakjes
van
de
roosterlijnen in
x-richting
aangeeft
voor
de
kk-de grafiek.
Bijeen
negatieve
waarde
worden
de roosterlijnen
1/
x-asweggelaten.
Alleen
toegestaan
alsPCX(/kk/)
=0.
PCY(/l:k/)
Real array
0 Het
programma
bepaalt
zelf de schaal van de
y-as. 0 De
ruimte
tussen
deroosterlijnen
in de
y-richting in cm.
PDY(/i:k/)
Integer array
IPDY(/kk/)I 0i 0
Getal
dat het
maximale
aantal
vakjes
van deroosterlijnen in
y-richting
aangeeft
voorde
kk-de grafiek.
Bijeen
negatieve
waarde
worden
de roosterlijrien//
y-as
weggelaten.
Alleen
toegestaan
als-4-Parameterdeci aratie Input
Omschrijving
PEX(/1:k/)
Integer array
0
Programma
bepaalt
zeifde minimum en maximum
x-waarde van de grafiek.
i
Minimum en
maximum
x-waarde
moeten
door
degebruiker
worden
o pg eg even .PXMIN(/i:k/)
Real array
PXMIN(/kk/)
met kk = 1,2, ...k
Minimum x-waarde
van de
x-as in
de
kk-de
gra-fiek. Als
PEX (/kk/)=0,
dan PXMIN(/kk/)=0.
PXMAX(/l:k/)
Real array
'IPXMAX(/kk/)
met
kk = 1,
2, ...k
Maximum x-waarde
van de
x-as in
dekk-de
gra-fiek. Als
PEX (/kk/)=0,
dan PXMAX(/kk/)=0.
PEY(/l:k/)
Integer array
0
Programma
bepaalt
zelf
de minimum en maximum
y-waarde van de grafiek.
i
Minimum en
maximum
y-waarde
moeten
door
degebruiker
worden
opgegeven.
PYMIN(/ì:k/)
¡PYMIN(/kk/)
met
kk=l, 2, ...kMinimum y-waarde
van de
y-as in
de kk-degra-fiek. Als
PEY (/kk/)=0,
dan PYMIN(/kk/)=0.
PYMAX(/l:k/)
PYMAX(/kk/)
met
kkl, 2,
...kMaximum y-waarde
van de
y-as in
de
kk-de
gra-fiek. Als
PEY (/kk/)=0,
dan PYMAX(/kk/)=0.
PPP(/l:k,l:jm/)
Integer array
PPP(/kk,jj/)=
i0*m+n met
kk=i, 2, ...k
jj=i, 2, ..j(kk)
De woarde voor
de jj-de
lijn
in dekk-de
grafiek.
n = 0
Er worden
geen symbolen
in de x-y punten geplot.
m = i
Elk
x-y puntwordt
geplot door een
gecen-treerd
symbool.
Voor
jj=1 symbool code nr. 1.
Voor
jj=2 symbool
code
nr. 2 enz. Er zijn
maximaal 12 gecentreerde
symbolen.
-5-Parameterdecl aratie Input
Omschrijving
m = i
Elk i-de punt van het
x-y
array
wordt
geplot
d.m.v.
eengecentreerd
symbool (verder
als bij
m=l).
n = 0
Erworden
geen
lijriengeplot
tussen
de
x-ypunten in de grafiek.
n = i
De x-ypunten
van delijn
worden
verbonden
door rechte iijnstukjes.
n = 2
Door alle punten
van de
lijn
wordt
d.m.v.
eenspline-fitting
methode
een
vloeiende
kromme
getrokken.
n = 3
Als n=2,
maar nu
wordt
de lijn van
het laatste
x-y
puntdoorgetrokken
naar
heteerste
x-ypunt,
zodat
er eengesloten kromme ontstaat
(b.v. niveaulijnen).
n = 6
De x-ypunten
van delijn
worden
orn en ornverbonden
doorrechte
lijnstukjes,
zodat
ereen
stippellijn
ontstaat.
n = 7
Als n=2, maar
de punten
worden
orn en ornverbonden, zodat
er een
stippellijn ontstaat.
n = 8
Als n=3, maar
de punten
worden
orn en ornverbonden, zodat
er een
stippellijn ontstaat.
Geef voor een stippellijn altijd
eeneven aantal punten op.
FAC real
De waarde
van FAC
Verkleiningsfactor
vande totale grafiek t.o.v.
A4-formaat.
FAC=l
A4-formaat.
FAC= 2
A5-formaat.
3.2.1 Stroomdiagram.
Procedure CWWPLT
Specificaties
11-6-Declaraties
kk =
=1
ohan = True
iohan = false
k! Plots (1, 5+12*k (1) neePlot(3,3,-3); Lees=ø; boolt=true;
'Integer' 'array' p(l:j(kk));
AXYPAXY(kk); BX=PBX(kk); BYPBY(kk);
CXPCX(kk); DXPDX(kk); EXPEX(kk);
KXsign(DX); DX=abs(DX);
CY=PCY (kk); DYPDY (kk); EY=PEY(kk);
KY=sign(DY); DY=abs(DY);
XMINPXMIN (kk); XMAX=PXMAX (kk);
YMINPYMIN (kk); YMAX=PYMAX (kk);
Bepaal als EX=ø de minimale en maximale
waarde van de x-as.
Bepaal als EY=ø de minimale en maximale
waarde van de y-as.
Bepaal voor elke lijn van de kk-de
grafiek, hoe deze geplot gaat worden:
p(jj) = ppp(kk,jj)
jj = 1 (1) j(kk)
Teken kader voor A4-formaat m.b.v.
procedure agrid.
De gebruiker
opent zeif de
pio td a ta set-7-Bepoal afhankelíjk van BX en BY de waarden
voor
dex- en de y-as.
X-as op de lange kant van het A4-formaat
¡I
dex-as van de plotter.
Teken m.b.v. de procedure AGRID de roosterlijnen
voor de grafiek, afhankelijk van de waarden van
KX en KY.
Bepaal afhankelijk van BX en BY de waarden
voor
de x- en de y-as.
X-as op de korte kant van het A4-formaat
/1
dey-as van de plotter.
Teken m.b.v. de procedure AGRID de roosterlijnen
voor de grafiek, afhankelijk van de waarden van
KX en KY.
Plot de schaalverdeling bij de x- en de
y-asm.b.v. de procedures XAS en YAS.
Teken de lijnen in de grafiek m.b.v. de
procedures LINPLT.
Lees het eerste symbool van de kaart, waarop
het grafieknummer of ##-tekens staan.
Is het
syrn-bool een getal of een
#-tekeri
Wijs de waarde van dit symbool
toe aan L(1)
Lees het tweede symbool
van de kaart en
wijs de waarde hiervan toe
aan L(2).
bool tfalse;
Bepaal grafieknummer waarbij de tekst
kamt: leesk
AXY=1
nee
kk-lus
-8-ALFX = 0; ALFY = 90; REG = O
Plot pij len bij de x- en y-as m.b.v. de
procedure AAROHD
Tekst bij piji x-as: TCODE(5.5,-.9,.3, ALFX,KLUS,L1,L5)
Tekst bij piji y-as:
TCODE(-1.6,5.5,.3, ALFY,KLUS,L2,L5
indien 4
REG = REG 1
Tekst onder de x-as: TCODE(0,-1 .6-(REG-1)
- - --Indien L
r. --.indien
ALFX=90, ALFY = 180, REG =
Plot pijien bij x- en y-as
Tekst bij piji x-as:
TCODE ( .9,5. 5, .3 , ALFX, KLUS , L3 , L5)
7, .22,ALFX,KLUS,L2,L5
--.4Vndiene
Tekst bij piji y-as:
TCODE(-5.5,-1 .6,. 3,ALFY,KLUS,L4,L5
-- --ndien
REG = REG +1
Tekst onder de x-as:
TCODE(1.6+(REG-l),.47,0,.22,ALFX,KLUS,L4,L5) indien
LV
'4
Fout in tekst. Herstel deze fout.
Sluit plot dataset m.b.v. LASPLO.
einde kk-lus
nee
'Gebruiker sluit
I zeif plot dataset
3.3.1 Algemeen.
De tekst moet op kaart worden ingevoerd. Elke nieuwe regel moet op een
nieuwe kaart beginnen.
Uit de symbolentafel (zie bijlageP42) blijkt, dat aan elk tekstsymbool een code nummer is toegekend. De symbolen die in de laatste vier kolommen
staan komen voor op de ponsmachine. 1-let programma is zo ingerícht, dat deze
tekens niet in code behoeven te worden ingevuld, maar gewoon als tekst op
kaart.
Deze leesbare tekst moet dan wel tussen quotes (') staan (zíe hoofdstuk 2.3).
De andere niet op de ponsmachine voorkomende tekens moeten in code getallen worden opgegeven (de bovenste getallen uit de symbolenlijst), met elk teken gescheiden door een spatie of komma.
Elke regel moet, of deze nu in code of tekst is opgegeven, worden
afgesloten met of
3 3.2 Mogelijkheden van tekst invoer.
Tekst in code cijfers op kaart met elk symbool gescheiden door een
komma of een spatie.
Tekst als leesbare tekst op kaart (tussen ') Tekst met een enkele of dubbele index.
De index rnoet tussen de code cijfers 63 gezet worden.
Voorbeeld.
Enkele index: ALFAEFF _ 'ALFA' 63 'EFF' 63
Dubbele index: ALFAwEFFT='ALFA'M'40,63 'EFF'63,63'T'63 Tekst met een exponent.
De exponent moet tussen de code cijfers 62 gezet worden.
Voorbeeld. ALFA2 -'ALFA' 62 '2' 62
Een combinatie van a, b, c en d. Voorbeeld.
ALFA,
\/ Px20 40, 63, 36, 63 ' ALFA' 62 '20' 62, 63 'EFF' 63, 63 'T' 63 57 'Px20' of 40, 63, 36, 63 'MALFA' 63, 'EFF' 63, 63 'T' 63, 62 '20' 62 57 'P20'3.3.3 Betekenis van verschillende symbolen. - Nieuwe regel
- Einde tekst bij grafiek (afsluiting laatste regel)
- Bij volgende grafieken c.q. bij geen enkele grafiek tekst. - Begin c.q. einde leesbare tekst voorkomend op de ponsmachine.
b2E-t - Begin c.q. einde exponent
63E4- - Begin c.q. einde INDEX.
3.3.4 Volgorde van oegeven tekst bij grafiek.
Kaart 1) Grafiek voignummer 1 bestaande uit tenminste 2 cijfers.
Voignummer < 10: 01, 02, 03, 09.
Volgnummer 10: 10, 11, 12,
Kaart 2) Tekst behorende bij de x-as
Indien geen tekst: Ruimte benodigd voor I tekst
Kaart 3) Tekst behorende bij e y-as symbool is 3 mm.
Indien geen tekst: P
Kaart 4) Tekst onder x-as
Indien geen tekst dan moet de laatste regel afgesloten worden met
Ruimte benodigd voor I tekst symbool is 2.2 min.
5) Indien bij geen enkele grafiek meer tekst geef , vervoig
anders met punt I enz.
13
x-as y-as
Tekst onder de x-as
14
x-as y-as
Tekst onder de x-as. 10
-Opmerking
Alleen de invoer van de tekst behoeft te worden opgegeven voor de grafieken met
bijbehorerìde voignummer.
Voorbeeld. Stel van de 15 grafieken zijn er 3 voorzien van tekst.
Grafiek volgnummer 1, 13 en 14.
De invoer is dan als voigt:
UI
Tekst onder de x-as x-as
I. BESCHRIJVING VAN DE GEBRUIKTE PROCEDURES IN HET PROGRAN11A CWWPLT - T CODE 1.1 Procedure voor het plotten van tekst.
1.1.] Doel.
Het inlezen en plotten van n of meer regels tekst.
1.1.2 Algemeen.
De naam van de procedure is TCODE.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW van de
"Centrale Werkgroep Wiskunde".
Voor de mogelijkheden van tekst zie hoofdstuk 3. 1.1.3 Gebruik van de 2rocedure.
De kop van de procedure ziet er als volgt uit: 'PROCEDURE' TCODE (X,Y,Q,ALFA,KLUS,TEST,SPRING); 'VALUE' Q; 'REAL' X,Y,Q; 'INTEGER' ALFA;
'LABEL' KLUS,TEST, SPRING;
Aan de declaraties van het programma moet worden toegevoegd: 'PROCEDURE' TCODE; 'CODE';
Betekenis van de formele parameters:
X i X-waarde van het eerste symbool
Y i : Y-waarde van het eerste symbool
Q i : Grootte van bet symbool in cm.
ALFA i : De hoek die het symbool maakt met de x-as
(de horizontale as van de plotter:)
De hoek wordt gemeten tegen de wijzers van de kiok in.
KLUS i Spronglabel als tekst ten einde is.
Sprongopdracht reageert op # teken.
TEST i : Spronglabel als regel ten einde is.
Sprongopdracht reageert op teken.
1.1 .4 Stroorndjaram. (Procedure TCODE specificaties declaratiesi Deci. Real procedure L ri e e ne e p Dccl. Real procedure L2 Dccl .procedure
POSI
---IToewijzingsopdrachten voor teigrootbeden en lettrgrootten 1
pp;pp+I; intext (U, HT, 1)
ET(1):=H'l(1)+(64 als HT(1)<b4 anders -64)
HT(1)=64(LJ)1107(, )12s() 124( ) HTC(pp) :HTC(I)-I pp:pp-I I1T(1 )=123(# ) 124( p:p+I; TC(p):HT(1)
r:1
I
I
-
12-Er zijn verschillende symbolen uit de symbolenlijst die minder ruimte nodip hebben dan de opgegeven waarde. Deze afmetinpen worden m.b.v. deze procedure aangepast.
Deze procedure zorgt ervoor dat een symbool in de index of exponent evenveel ruimte innneemt als een symbool dat op normale hoogte geschreven word t.
Verder hetzelfde als procedure L.
L
_-Procedure voor het bepalen van de plaats van een syrnbool in x- of y-richting.
De procedure intext kent andere 'aarden toe aan bet ingelezen syr-bool dan op de syrtibolenlijst vermeld
staat. Vandaar de herwaardering van HT(l).
a
De array HTC stelt n
symbool in code voor b.v. }ìTC E 40
FITC(1) E 4 en H'IC(2) E U
het lezen vali 123 (#) tia ceri komma of bet leze
van 124 () als erste
symbool op de kaart(nieuwe repel) of na een komma. ( spring '\ foutmeld in t,00fdpro -gramma
J
'IIp:=p+1;C0de=0
I1=1(1 )pp
(code:=codedO+btc (i)
ITC(p):=code I
nee
:p+I; TC(p):=I3T(1);
Leesbare tekst met behuip van intext.
Pas codering aan aandie van de symboienlijst.
Lees symbool in m.b.v. intext Pas codering aan aan die van de
symboleni ij st
iT(1 )=4(i) I I07(,)
fk:=k+1 J
-:p+l ;TC(p) :=FIT(1)
Jpp is het aantai inge1zen
Lkarakters
- 13
-nee
Na het laatst gelezen
symbool voigt een of
schrij f
Linde leesbare
teks t
Leesbare tekst en nieuw in te lezen syr'bool is gescheiden door een spatie of komma
spring foutmelding
h00f d pro-gramma
sc h rii f
- 14
-nee
E
Test of eerste symbool is eengecen-treerd symbool of een lijn (200) of een streep-punt-streep-1ijn (20i) of een stippellijn (202). Indien ant-woord is ja plot dit symbool. Indien
antwoord is flee dan aanroep procedure L. Ylot sybool.
rr:=rr+(7 als 20UTC(1)E202 anders I
[ITC(1) :HTC(2) :=U
1r=2(1)p J
ne e
;r+1;bool.=bool+l i
Ltg
de positie vast van heteerste symbool van de exponent Plaats de plotpen op bet begin-punt van bet eerste symbool
an de geschreven index.
Bepaal de grootte van bet symbool van de exponent m.b.v. de funktieprocedure
L2.
Plot symbool van de exponent z.d.d. de totale ruimte (mcl. extra spaties) die dit symbool inneemt even groat is als bet symbool dat op normale regel-hoogte geschreven is.
r is teigrootheid Toor
bet aantal geplotte sym-bolen. Als gebruik is
gemaakt van de lijn 200, 201 of 202 dan worden extra 7
symbolen in rekening gebracht
Begin of einde exponent
Begin exponent
.._.[Einde exponent
Jiiervoor is een
Leg de positie van bet laatste
symbool
van de exponent vastrn.b.v.
procedure POSr :=r+ I
R.=R-1 ;bool :=u
ne e
Zie A
:R+I ;bool .bool-1
Aanroep funktieprocedure L2 Plot symbool in de dubbele index. IiTC(2) :=}ITC(2)+1 nee pee nee nee eitide inde
'r
-__JTeigrootheid voor bet - aantal syrbolen in de exponent Er voigt tekst na geplotte
Jexponent
Begin index naL het einde van
de exponent
Syrnbool met
be-trekking tot de _irdex Symbool in de exponent
Symbool op
nor-male regelhoogte Symbool in de dubbele index HTC(2) is de teigroot-heid voor hetaantal symbolen in de index
fSyinbool m.b.t. lLdubbe]e index
Plaats de plotpen op het beginpunt van bet eerste symbool van de exponent
Leg de positie vast van bet eerste symbool in de index
Aanroep van de funktieprocedure
L2.
Plot symbool van de index HTC(2) :=HTC(2)+I
Bepaal de positie van bet laatste symbool van de index rn.b.v. procedure POS
jbool :=O;RR-I
e
liepaal aantal symbolen dat geplot is op normale regelhoogte plus het aan-tal symbolen van de index of expo-sent welk anntal het grootste is.
L
JHieryoor is een lexponent geplot
TiTC(2) is de teigroot heid van het aantal symbolen in de index L Begin dubbele index _[Eínde index zegin exponent 1na index Er voigt tekst na eplotte index
r- lus
- 17
-R:=R-1; bool;=0,
Plaats de plotpen op de positie van net geplotte symbool met de grootste x-waarde als tekst onder een hoek van 0° met de x-as staat of met de grootste y-waarde als tekst onder een hoek van
9(30 met de x-as staat of de kleinste
x-aarde als de tekst een hoek van 1800 maakt met de x-as van bet
plOt-papier.
geef een rlieuwe invoerkaart
J
nee
__J-__
geef een nieuwe invoerkaart
_[Einde tek _[Einde rege Kl us hoof dpro-gr a rnnia Tes t oofdpro-gramma r-lus einde
1.2.1 Doel.
18
-1.2 Procedure voor het bepalen
van minima en maxima
- Mirimax.
Met bepalen van de hoogste
en laagste waarde uit een
array van
ge tallen.
1.2.2 Aigemeen.
De naam van de procedure is MINMAX.
De procedure staat in de
standaardbibliotheek SBAL.LIBCWW
van de
"Centrale Werkgroep Wiskunde".
1.2.3 Gebruik van de procedure.
De kop van de procedure ziet
er als voigt uit:
'PROCEDURE' MINMAX (X,MIN,MAX,I,J
,KK);
'VALUE' X; "REAL' MIN,MAX; 'INTEGER'
XX;'ARRAY' X; 'INTEGER' 'ARRAY'
I,J;
Aan de declaraties van bet
progranmia moet worden toegevoegd:
'PROCEDURE' MINMAX; 'CODE';
Betekenis van de formele
parameters:
X
i : Array X(/1:K,1:JM,1:IM/)
waarvan de minimum en maximum waarde bepaaid
nioct
worden voor X(/KK,I:JM,IM/)
MIN o :
De minimum waarde van
array X voor de kk-de grafiek.
MAX o
: De maximum waarde van de array X
voor de kk-de grafiek.
I
i
:Zie parameterlijst
van CWWPLTJ
i
:Zie parameterlijst
van CWWFLT19
-1.2.4 Stroomdiagram.
(Procedure
Specificaties
Deci a ra ti es MIN: =MAX=: 0; MAX: =x(kk ,jj ,i i)20
-1.3 Procedure voor lineaire schaalverdeling van de as
¡I
x-as plotter - SCAL XI. 1.3.1 Doel.
De procedure verzorgt een as evenwijdig aan de x-as van het plotpapier
met een lineaire schaalverdeling en bepaalt tevens de positie van de
as//y-as van het plotpapier. 1.3.2 Alemeen.
De naam van de procedure is SCALXI.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW van de
"Centrale Werkgroep Wiskunde".
De procedure SCALXI roept de procedure TRANS op.
1.3.3 Gebruik van de procedure.
De kop van de procedure ziet er als volgt uit:
'PROCEDURE' SCALXI (A,MIN,MAX,NÌJL,DEL,NSP,SCL,N,CX,DX,CY,DY); 'REAL' MIN,MAX,NTJL,DEL,SCL,CX,CY;
'INTEGER' NSP,A,N,DX,DY;
Aan de declaraties van het programma moet worden toegevoegd:
'PROCEDURE' SCALXI ; 'CODE';
Betekenis van de formele parameters:
A i : A = PAXY(/k/) (zie CWWPLT)
Als A=1 dan verzorgt SCLAXI de x-as van de grafiek. Als A=2 dan verzorgt SCALXI de y-as van de grafiek.
MIN i De minimum waarde van de array X voortkomend uit de
procedure MINNAX of uit de parameter PXMIN(/k/) van CWWPLT
MAX i : De maximumwaarde van de array X voortkomend uit de
procedure MINMAX of uit de parameter PXMAX(/k/) van CWWPLT.
(Dit alles voor A1).
Indien A=2 geldt hetzelfde maar dan voor de array Y
resp. parameter PYMIN of PYNAX.
NUL o : De ruimte tussen de y-as (als A=1) of de x-as (als A2)
en de papierrand van het A4-formaat.
DEL o : De afstand in cm tussen 2 roosterlijnen van de x-as
van de grafiek (als A1) of y-as van de grafiek (als A=2). Als A=1:
Als PCX(/k/)=O dan DEL = 2 of 2.5 cm, voor de x-as. Als PCX(/k/)O dan DEL = PCX(/k/) voor de x-as. Als A=2:
Als PCY(/k/)=O dan DEL = 2 of 2.5 cm voor de y-as. Als PCY(/k/)O dan DEL = PCY(/k/) voor de y-as.
NSP o : Aantal vakjes van de roosterlijnen op de x-as (als A=1)
of y-as (Als A=2).
NSP = II als DEL = 2 Als PCX(/k/) of
NSP = 9 als DEL = 2.5 5 PCY(/k/)=O
NSP = PDX(/k/) (als A=1) of
NSP = PDY(/k/) (als A=2).
SCL d : Zie procedure TRANS
N o : Zie procedure TRANS
CX i : = PCX(/k/) zie CWWPLT
DX i : = PDX(/k/) zie CWWPLT
CY i = PCY(/k/) zie CWWPLT
1.3.4 Stroomdiagram.
CProcedure
SCALXI specificaties ec larat ies D:=22:22
=CYDY
-s tap = max--min ¡D TRANS(stap, SCL,N,A,CX,CY)i)LL:2.5 als SCL=4 anders 2
NSP:=1 I als DEL=2 anders 9
DEL:=CX als A=1 anders CY INSP:=DX als A=i anders DY
DEL:=-DEL ja nee - 21 -nee flee HN:= DEL x NSP/2
NUL:=-HN+(17 als A1 anders I2.75
-
--J
L__
1
flee
Programma bepaalt zeif de lengte van de x-as
¡I
x-as plotterProgramma berekent uit
opgegeven waarderi de len'te van de x-as //x-as plotter
Prograniiia bepaalt zelf de lengte van de y-as
¡I
y-as plotterProgramma berekent uit
Lopgegeven waarden de
lengte van de y-as //y-as plotter
Stap is de warde die
1 cm voorstelt
De procedure TRANS bepaalt SCikiuN
'Thepaling afstand tussen 2 roosterlijnen en bepaling - van het aantal vakjes
daarvan.
Aantal vakjes tussen roosterlíjnen is
opge-Igeven en zo ook de
afstand hiertussen.
Fig. la
Fig. lb.
Positie van de vertikale assen.
Opmerking: De maten die hierboven gegeven zijn gelden als bet programma zeit
de maten voor de grafiek bepaalt.
De gebruiker kan hiervan afwijken door zeif op te geven hoe groot
de grafiek wordt. De gebruiker moet dan wel op de volgende punten
letten.
le. De plaats van de hartlijn van de grafiek is
zoals hierboven gegeven.
2e. Blijft er genoeg vrije ruimte over voor tekst en inbindrand.
U) >ç
¿ Fo
FoMAT
22-4Z.75 crn
,qAt
A= 2
x-
FLTTER
x-AS PLT
-z,-J
p-I
__
ktt
I_
N!LJL12.7
C'rr7crr
y 23 y
-1.4 Procedure voor lineaire schaalverdeling van de as//y-as plotter - SCAL Yl. 1.4.1 Doel.
De procedure verzorgt een as evenwijdig aan de y-as van het plotpapier en bepaalt tevens de positie van de as//x-as van het plotpapier.
1.4.2 Alemeen.
De naam van de procedure is SCALY 1.
De procedure Staat in de standaardbibliotheek SBAL.LIBCWW van de
Centrale Werkgroep Wiskunde.
De procedure SCALYI roept de procedure TRANS op. 1.4.3 Gebruik van de 2rocedure.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' SCALY1(A,MIN,MAX,NUL,DEL,NSP,SCL,N,CX,DX,CY,DY); 'REAL' MIN,MAX,NUL,DEL,SCL,CX,CY;
'INTEGER' NSP,A,N,DX,DY;
Aan de deciaratie van bet prograimna moet worden toegevoegd: 'PROCEDURE' SCALY 1; 'CODE';
Betekenis van de formele parameters
A i : A = PAXY (/k/) (zie CWWPLT)
Als A=1 dan verzorgt SCALYI de y-as van de grafiek. Als A=2 dan verzorgt SCALYI de x-as van de grafiek.
MIN i : De minimum waarde van de array Y voortkomend uit de
procedure MINMAX of uit de parameter PYMIN(/k/) van
CWWPLT.
MAX i : De maximum waarde van de array Y voortkomend uit de
procedure MINMAX of uit de parameter PYMAX(/k/) van CWWPLT.
(Dit ailes voor A=1).
Indien A=2 geldt hetzelfde maar dan voor de array X
resp. de waarden PXMIN of PXMAX.
NUL o : De ruimte tussen de x-as (ais A=1) of de y-as (als A=2)
en de papierrand van het A4-formaat.
DEL o: De afstand in cm tussen 2 roosterlijnen van de y-as van
de grafiek (ais A1) of de x-as van de grafiek (ais A=2). Als A=1:
Ais PCY(/k/)=O dan DEL=2 of 2.5 cm voor de y-as
Als PCY(/k/)O dan DEL= PCY(/k/) voor de x-as.
Ais A=2:
Ais PCX(/k/)=O dan DEL=2 of 2.5 cm voor de y-as
Als PCX(/k/)O dan DEL = PCX(/k/) voor de x-as
NSP o : Aantai vakjes van de roosterlijnen op de y-as (ais A1)
of de x-as (als A=2).
NSP = 7 als DEL = 2 Als PCY(/k/) of
NSP = 6 als DEL = 2.5 5 PCX(/k/)=O
NSP = PDY (als A=1) NSP = PDX (als A=2)
SCL o : Zie procedure TRANS
N o Zie procedure TRANS
CX i : PCX(/k/) zie CWWPLT
DX i : PDX(/k/) zie CWWPLT
CY i : PCY(/k/) zie CWWPLT
1.4.4 Procedure SCALY I Specificat ies eklaraties
:CYDY
:=14 D:CXcDX STAP:=IMAX-MIN /0TRANS(STAP, SCL,N,A, CY,CX)
DEL;CY als A=J anders CX NSP:DY als A=1 anders DX
MN: DELMNSP/2
NUL 12-MN
24
-1
Programma bepaalt zelf
de basislengte van de y-as
//y-as plotter
Programma berekent uit
L_
opgegeven waarden de basislengte van de y-as 1/y-as plotter
Programma bepaalt zeif de basislangte van de x-as
1/yas plotter
Frograma berekent uit
L
opgegeven waarden debasis--- lengte van de x-as!!
y-as plotter
TAP is de waarde dLe
1 cm voorstelt.
De procedure TRANS bepaalt SCL x 10N
!Aantal vakjes tussen roosterlijnen is opge-geven en za ook de lafstand hiertussen
L---ie
fig. 2a en fig. 2bBepaling afstand tussen
DEL:=2.5 als SCL=4 anders 2 J2 roosterlijnen en bepalin5'
NSP:=7 als DEL=2 anders 6 fran het aantal vakjes
A.4
FRMAAT
-
25-4: X wrL
Fig. 2b. Positie van de horizontale assen.
A=1
X-
PLÔTTR
Opmerking: De maten die hierboven gegeven zijn gelden als het programma
zeif de maten voor de grafiek bepaalt.
De gebruiker kan hiervan afwijken door zeif op te geven hoe groot de grafiek wordt.
De gebruiker moet dan wel op de volgende punten letten
Je. De plaats van de hartlijn is zoals hierboven gegeven.
2e. Blijft er genoeg vrije ruimte over voor tekst en inbindrand. ATTLU-,( 'J C'.
II
-ti
26
-1.5 Procedure voor een lineaire gradenverdeling van de as//x-as plotter - SCAL X2. 1.5.1 Doel.
De procedure verzorgt een as evenwijdig aan de x-as van het plotpapier met een lineaire gradenverdeling en bepaalt tevens de positie van de as/I y-as van het plotpapier.
1.5.2 Algemeen.
De naam van de procedure is SXALX2.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW van de "Centrale Werkgroep Wiskunde".
De procedure SCALX2 roept de procedure TRANS en de procedure SCALXI
op.
1.5.3 Gebruik van de procedure.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' SCALX2 (A,MIN,MAX,NUL,DEL,NSP,SCL,N,CX,DX,CY,DY); 'REAL' MIN,MAX,NUL,DEL,SCL,CX,CY;
'INTEGER' NSP,A,N,DX,DY;
Aan de declaraties van bet programma moet worden toegevoegd: 'PROCEDURE' SCALX2; 'CODE';
Betekenis der formele parameters.
Zie procedure SCALXI met de voigende verschilien:
DEL o : De waarde welke DEL kan aannemen als PCX(/kI)0 zijn
nu: DEL=2.25 of 1.8 cm afhankeiijk van max. bereik van de as.
NSP o Ret aantal vakjes is:
Als DEL = 2.25 NSP = 10
1.5.4 Stroomdiaram. (Proredure SCALX2 \ Speciricaties Dek1arties
A =
I A ICX!>I(YbVA = 2/\CY>10'
DEL:=CX als A=I anders CY NSP:=DX als A=1 anders DY IiULP : = ¡MAX-MIN /(DELNSP) TRANS(HULP,SCL,N,A,CX,CY) :=1 ;SCL:=2;NSP:=10;DEL:=2.25 =0 ; SCL: =10 ;NSP : =10 ;DEL: =2. 25 27 -nee nee
Bepaal de gegevens voor de afmetinge van de grafiek m.b.v. SCALXI
ST
:=1;SCL:=5;NSP:=12;DEL:=].8
AP:=ABS(MAX-MIN)/21 .b TRANS(STAP, SCL,N,A,CX, CY) DEL:=I.8; NSP = 12
HN:= DELNSP/2
NUL:=-1N+(17 as A=1 anders 12.75)
ro7ramrna bepaalt zeif de gegevens voor de afmetingen
an de grafiek.
Ti1i is bet aantal
p,ra-en die 1 cm voorstelt.
ERANS bepaalt SCLxION
rogramrna berekent uit ie gegevens die de ge-_4bruiker opgegeven heeft
Id e gegevens voor de af-netingen van de grafiek
L_
Zie fig. la en Ic behorende28
-1.6 Procedure voor een lineaire gradenverdeling van de as//y-as plotter- SCALY2. 1.6.1 Doel.
De procedure verzorgt een as everiwijdig aan de y-as van het piotpapier
met een lineaire gradenverdeling en bepaalt tevens de positie van de asl/xas van het plotpapier.
1.6.2 Algemeen.
De naam van de procedure is SCALY2.
De procedure Staat in de standaardbibliotheek SBAL.LIBCWW van de "Centrale Werkgroep Wiskunde".
De procedure SCALY2 roept de procedure TRANS en de procedure SCALYI op.
1.6.3 Gebruik van de procedure.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' SCALY2 (A,MIN,MAX,NUL,DEL,NSP,SCL,N,CX,DX,CY,DY); 'REAL' MIN,MAX,NUL,DEL,SCL,CX,CY;
'INTEGER' NSP,A,N,DX,DY;
Aan de declaraties van bet programma moet worden toegevoegd:
'PROCEDURE' SCALY2; 'CODE';
Betekenis van de formele parameters:
Zie procedure SCALYI met de volgende verschillen:
DEL o : Als PCY(/k/)=O dan is de waarde die DEL kan aannemen 3,
3.6 of 1.8 cm afhankelijk van het max. bereik van de as.
NSP o : I-iet aantal vakjes is:
NSP=5
alsDEL=3
NSP = 4 als DEL = 3.6
I.b.4 Stroomdiaram. Procedure SCALY2 Specificaties Declarat ies A =
iAcYj>io6
VA = 2AICXt>106
ja DEL:=CY als A=l anders CX NSP:=DY als A=i anders DX HULP:= MAX-MIN /(DELMNSP) TRANS(HULP, SCL,N,A,CY,CX)SCL:=2.5;N:=1;NSP:=4;DEL:=3.6
SCL:=l0;N:=0;DEL:=8;NSP:=5
29
-Bepaal de gegevens voor de afmetingei van de 'rafiek m.b.v. SCALYI
SCL:=5;N:=I;NSP:=3;DEL:=l.8
FN: =DELNSP/2
NUL:=1 2-FiN
L-ne e
Programma bepaalt zeif de gegevens voor de afretingen van de grafiek
Huip is het aantal
gra-den die i cm voorstelt.
TRANS bepaalt SCLd0N
Programma berekent uit de gegevens die de ge-bruiker opgegeven heeft de geevens voor de af-metingen van de grafiek.
Jie fig. 2a en 2b behorende
ij SCALY]
ne e
1 50< MAX-MIN 360
30
-1.7 Procedure voor het bepaleri van de schaal voor x of y-as- TRANS.
1.7.1 Doel.
De procedure bepaalt een "ronde schaal" voor de assen.
1.7.2 Algemeen.
De naam van de procedure is TRANS.
De procedure staat in de standaardbiliotheek SBAL.LIBCWW van de
"Centrale Werkgroep Wiskunde". 1.7.3 Gebruik van de 2rocedure.
De kop van de procedure ziet er als voigt uit: 'PROCEDURE' TRANS (STAP,SCL,N,AXY,CX,CY); 'REAL' STAP,SCL,CX,C?;
'INTEGER' N,AXY;
Aan de declaraties van het programma moet worden toegevoegd: 'PROCEDURE' TRANS; 'CODE';
Betekenis der formele parameters
STAP i : Het aantal eenheden per cm van de x-as of
y-as voordat de x- of y-as naar een "ronde schaal" is getransformeerd. By.: STAP = XMAX-XMINII (DELMNSP)
SCL o : Ret aantai eenheden ¡10N per cm van de x- of y-as nadat
deze naar een ronde schaai is getransformeerd.
Ais CXO of CY0 dan geldt voor de x-as of y-as.
SCL1ON = STAP want dan geldt:
SCLXION = IXMAX-XMINI/(CXNSP) (voor de x-as) (Idem voor
de y-as)
SCL = 2, 2.5, 4, 5 of IO.
N o : Exponent van IO nadat STAP is getransformeerd naar een
waarde
I < STAP < IO
By.: STAP = 2000 en CXO dan wordt SCL=2 en N=3. Voor de parameters AXY, CX, CY zie beschrijving CWWPLT met dien verstande dat voor de k-de grafiek geldt: AXY = PAXY(/k/)
CX = PCX(/k/)
1.7.4 Stroomdia8ram. Procedure TRANS Specificaties d =0 STAP : =STAP/ 10 N:=N+] SCL : =STAP STAP:=STAP3dO N:N-1 31 -nee AXY =
I ACX10v
AXY = 2 AJCYI10 anders 10Trans formeren van STAP
naar I < STAP 10
- N is het aantal malen dat SlAP gedeeld is door of vermenigvuldigd met IO
_[Gebruiker bepaalt de
Lschaal van de grafiek
_jProgramma bepaalt zeif ide schaal van de grafiek
SCL:=2 als I <STAP 2
2.5 als 2 <STAP 2..
4 als 2.5 <STAP 4
32
-1.8 Procedure voor het plotten van de waarden langs de x-as- XAS.
1.8.1 Doel.
De procedure plot de waarden bij elke roosterlijn langs de x-as van
de grafiek. 1.8.2 Aigemeen.
De naam van de procedure is XAS.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW van de
Centrale Werkgroep Wiskunde.
De procedure roept de procedures SCHUIF en NDC aan.
1.8.3 Gebruik van de procedure.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' XAS (DEL,NSP,SCL,N,XXS,XMIN,XMAX,AXY, CODE);
'REAL' DEL,SCL,XXS,XMIN,XMAX; 'INTEGER' NSP,N,AXY, CODE;
Aan de declaraties van het programma moet worden toegevoegd: 'PROCEDURE' XAS; 'CODE';
Betekenis van de formele parameters
DEL i De afstand in cm tussen twee roosteriijnen van de x-as.
NSF i : Aantal vakjes van de roosterlijnen langs de
x-as van de grafiek.
SCL i : Zie procedure TRANS
N i : Zie procedure TRANS
XXS o : De x-waarde weike bij de eerste (iaagste) roosterlijn
wordt geplot. XXS KNIN
XMIN i : De laagste waarde van de array X(K, J, I) van de k-de
grafiek (zie 3.2).
AXY i : AXY:=PAXY (zie 3.2).
XMAX i : De hoogste waarde van de array X(K, J, I) van de k-de
grafiek (zie 3.2).
CODE i : Als code O, dan worden de punten op de x-as
gemarkeerd d.m.v. streepjes.
1.8.4 Stroomdiagram.
plusy=-4: plaats in de
y-richting van de te
plotten x-waarde.
k = 0
(1) NSP33
-(Procedure
.pecificaties
Declara tiesBepaal: het waardeverschil tussen twee
roosterlij-neri H2, beginwaarde
bij de x-as XH
en het aantal
decimalen achter de komma m.b.v.
procedure NDC.
x-as op de lange kant
van het A4-formaat
/1
x-as van de plotter.
_[_as
op de korte kant
van het A4-formaat
-as van de plotter.
Bepaal:
x-waarde,
die geplot moet
worden: XX,
en XXS = XX als k = 0.
De
waarde
Hi,die de
plaats
inx-richting bepaalt,
varide te
plotten
x-waarde.
Als code < 0, plaats dan een merkstreepje
op de as.
Plotde x-waarde m.b.v. procedure NUMBER,
1/
de x-as van de plotter.
plusx = .4
* plaats in x-richting
van de
te plotteri x-waarde.
Bepaal:
x-waarde,
die geplot moet
worden: XX,
en XXS = XX als k = 0.
De
waarde
Hi,die de
plaats
iny-richting bepaalt,
vande te
plotten
x-waarde.
Als code < 0, plaats dan een merkstreepje
op de as.
Plot de x-waarde m.b.v. procedure NUMBER,
// de y-as van de plotter.
A
34
-1.9 Procedure voor het plotten van de waarden langs de y-as- YAS. 1.9.1 Doel.
De procedure plot de waarden bij elke roosterlijn loodrecht op de
y-as van de grafiek. 1.9.2 Algemeen.
De naam van de procedure is YAS.
De procedure staat in de standaardbibliotheek
SBAL.LIBCWW van de Centrale Werkgroep Wiskunde.
De procedure roept de procedures SCHUIF en NDC aan.
1.9.3 Cebruik van de 2rocedure.
De kop van de procedure ziet er als volgt uit;
'PROCEDURE' YAS (DEL,NSP,SCL,N,YYS,YMIN,YMAX,AXY
, CODE);
'REAL' DEL,SCL,YYS,YMAX,YMIN; 'INTEGER' NSP,N,AXY,.CODE;
Aan de declaraties van bet programma moet worden toegevoegd: 'PROCEDURE' YAS; 'CODE';
Betekenis van de formele parameters
DEL i : De afstand in cm tussen twee roosterlijnen
van de y-as.
NSP i Aantal vakjes van de roosterlijnen
langs de y-as van de grafiek.
SCL i : Zie procedure TRANS
N i : Zie procedure TRANS
YYS o : De y-waarde welke bij de laagste
roosterlijn wordt
geplot. YYS ThIN
YMIN i : De laagste waarde van de array Y(K, J, I) van de k-de
grafiek (zie 3.2).
AXY i AXY:=PAXY(k) voor de k-de grafiek (zie
3.2)
YMAX i De hoogste waarde van de array Y(K, J, I)
van de k-de grafiek (zie 3.2).
CODE i Als code O, dan worden de punten op de y-as
gemarkeerd d.m.v. streepjes.
35
-1.9.4 Stroomdiagram.
'Procedure YAS
Specificaties
Declaraties
Bepaal:
hetwaardeverschil
tussen
tweeroosterlijnen H2, beginwaarde
bij de y-as
1H en het aantal decimalen achter de komma
m.b.v.
procedure NDC.
II
= 0 (1) NSPPlot
de
y-waarde
m.b.v.
procedure
NUMBER,
1/
de x-as van de plotter.
A
y-as op de korte
kant van het
A4-formaat // y-as
Bepaal:
y-waarde,
die geplot moet
worden: XX,
en lYS = XX als k = 0.
De
waarde
Hi,die de
plaats
Iny-richting bepaalt,
vande te
plotten
y-waarde.
Als code < 0, plaats dan een merkstreepje
op de as.
Plot de y-waarde m.b.v. procedure NUMBER,
/1
de y-as van de plotter.
1/
x-as van
de plotter
van de plotter.
Bepaal:
y-waarde, die geplot
moet worden: XX,
en lYS = XX als k = 0.
De
waarde Hi,
diede
plaats in
x-richting bepaalt,
van de
te plotten
y-waa rde.
y-as op de
lange kant
Ais
code
< 0,plaats
dan eenmerkstreepje op de as.
van het
36
-1.10 Procedure voor plaats van schaalwaarden - SCHUIF.
1.10.1 Doel.
De procedure zorgt er voor dat schaalwaarden bij
x- en y-as cnder of naast de roosterlijnen
op de goede afstand van de x- of y-as
geplot worden. 1.10.2 Algemeen.
De naam van de procedure is SCHUIF.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW
van de Centrale Werkgroep Wiskunde.
1.10.3 Gebruik van de 2rocedure.
De kop van de procedure ziet er als volgt uit:
'INTEGER' 'PROCEDURE' SCFIUIF (XX,N,NDEC);
'REAL' XX; 'INTEGER' N,NDEC;
Aan de declaraties van het programma moet worden toegevoegl:
'INTEGER' 'PROCEDURE' SCHUIF; 'CODE';
Betekenis van de formele parameters:
XX i De waarde die bij een roosterlijn
geplot moet worden
N i : Zie procedure TRANS.
NDEC i : Zie funktieprocedure NDC
NDEC:=NDC (DEL,SCL,N,XMIN); Enkele voorbeelden: XX schuif
-4.5
4 1000 4 -2000 5 .50 3 -.0008 61.10.4 Stroomdiagram. 37 -Procedure SCHUIF Specificaties Dec laraties J H:=IXX+106) schuif:=sch :1 F:= sch : sch+1 sch :=sch+I s ch : =s ch+NDEC-f- I J nee ne e
=0
Test op aantal cijfers voor de komma rTest op minteken Tvoor extra symboolTest op aantal - decimalen achter
de komma
fi is extra symbool Lvoor decimale punt
chuif stelt totaal aantal karakters
38
-1.11 Procedure voor bepaling van aantal decimalen achter de komma - NDC.
1.11.1 Doel.
De procedure is een huipprocedure voor de procedure SCHUIF en zorgt er
voor dat de decimale punten van de schaalwaarden recht onder elkaar
komen te staan en, dat er per as (x- of y-as) voor alle schaalwaarden
een
gelijk aantal cijfers achter de decimale punt komen te staan.
1.11.2 Alemeen.
De naam van de procedure is NDC.
De procedure staat in de standaardbibliotheek SBAL.LIBCWW van de Centrale Werkgroep Wiskunde.
1.11.3 Gebruik van de procedure.
De kop van de procedure ziet er als volgt uit: 'INTEGER' 'PROCEDURE' NDC(DEL,SCL,N,MIN); 'REAL' DEL,SCL,MIN;
'INTEGER' N;
Aan de declaraties van het programma moet worden toegevoegd:
'INTEGER' 'PROCEDURE' NDC; 'CODE'; Betekenis van de formele parameters:
DEL i : Zie parameterlijst SCALXI
SCL i : Zie parameterlijst TRANS
N i : Zie parameterlijst TRANS
MIN i : De waarde X MIN of Y MIN afhankelíjk
-
39 -1.11.4 StroomdiaZrarn. ' Prç'cedure NDC Specificaties d Declaraties Bepaal:Verschil in waarde tussen twee rooster-lijnen NUM E:=-1 E=E+1 F=IOE Test op resterende d Cimalen Aantal decirnalen achter de komma is NDC nee
40
-1.12 Procedure voor bet plotten van lijnen- LINPLT.
1.12.] Doel.
De procedure verzorgt de piotuitvoer van de iijnen en/of punten in de grafiek.
1.12.2 Aigemeen.
De naam van de procedure is LINPLT.
De procedure staat in de standaardbibiiotheek SBAL.LIBCWW van
de Centrale Werkgroep Wiskunde.
De procedure LINPLT roept de procedure ASMOOT op.
1.12.3 Gebruik van de Lrocedure.
De kop van de procedure ziet er als voigt uit:
'PROCEDURE' LINPLT (I,J,K,P,X,Y,SX,NX,SY,NY,
XXS,YYS,AXY,JJ,KK); 'REAL' SX,SY,XXS, YYS;
'INTEGER' NX,NY,AXY,K,JJ,KK; 'ARRAY' X,Y;
'INTEGER' 'ARRAY' I,J,P;
Aan de declaraties van bet programma moet worden toegevoegd:
'PROCEDURE' LINPLT; 'CODE';
Betekenis van de formele parameters:
I i : Zie 3.2
J i : Zie 3.2
K i : Zie 3.2
P(JJ) = PPP(kk,jj) voor de kk-de grafiek, zie 3.2.
X
i:Zíe3.2
Y i Zie 3.2
NX
SX i : Het aantal eenheden per cm/lO
van de x-as.
(wordt in de procedure TRANS bepaald door SCL).
NX i : Zie parameter N bij procedure TRANS;
NX = N voor de x-as.
SY i : Het aantai eenheden per cm/lO
van de y-as.
(wordt in de procedure TRANS bepaaid door SCL).
NY i : Zie parameter N bij procedure
TRANS; NY = N voor de y-as.
XXS i : Zie procedure XAS.
YYS i : Zie procedure YAS.
AXY i : AXY:= PAXY (kk) zie 3.2.
JJ i Lijnnummer van de kk-de grafiek.
. 41
-1.12.4 Stroomdiagram.
(Procedure
.Specificaties
Dec 1 a ra ti esBepaal:
Aantal eenheden per cm voor de x-as: SCX.
Aantal eenheden per cm voor de y-as: SCY.
= 1 (1) j(kk)
m = entier((p(jj)/1ø): Bepaalt of de lijn
al of niet met gecentreerde symbolen wordt
gemarkeerd. Zie 3.2, PPP.
n = p(jj) - 1ø*m
: Bepaalt of de x-y
punten al of niet verbonden worden m.b.v.
lijnen. Zie 3.2, PPP.
m -= 0
jaII = 1
(m) I(kk,jj)Markeer
het ii-de
punt van
dejj-de lijn met
symbool code nr.
jj
& II -'= I(kk,jj)
S = 11+1 (1) (IF II+rn >
I(kk,jj)
THEN
I(kk,jj) ELSEII+m).
Verbindt
tenhoogste
m x-ypunten m.b.v. rechte
lijnstuk-j es.
nee
nee
Verbindt de
x-y punten
d.m.v. rechte
lijnstuk-ken
ja
41.1
-Verbindt de
x-y punten
orn en orn
met een recht
lijntje,
zodat er
eenstippellijn ontstaat.
neeVerbindt de
d.m.v.
een I ijnx-y punten
st ro kend eVerbindt de
d.rn.v. eeri stippell ijn.x-y punten
st ro kend e-13 SymboleniHst
If) Il (3D 12 3 C 13 (ni ¿*
15 0FEHPRqCTE.RS PVqILPfLE IN
THE IBM 3GO SYMBOL
BOUlINE
COQES NE)1 TO ERCM SYMOOL 438E;
1. 14TLr,rP. CO)E USED IN 5PECIqL
SYM8UL CflLL.
2. 1E8NL MxP0ECIMqL CODE
([BCOIC MODULO 128) SEE IHE J8i 360 REFERENCE 434318 C8RD FOIl
COIThESPCNDJNG PUNC1EO CR80 COGES.
o 16 32 90 SO 60 70 64 80 c 96
-
112 00 10 I 20j
30 33f
49 65 PlJ
U BS
L 5)R
K
A
H
19 35 51> 67
13- 23
33-
143 ?3 --f-- 3D 1/- 27
oNUL.
26 42 In 243 p' 27 '13 'C 29 In 56 '-'i 38 e t::) 05\
71 37 \ 47J
57 39 St) Sn SDT
f
L
97 61/
i 99Q
2
62 _) 72T
IIS3
63 I 73 100 l 116[4
64L
135 IN JO) 117 1 so 65 V 750
IOZ i I9 66 A' 76P103
67V
777
1O' I120 8
53 I 7UP1436
50L 79
121 C)'_J 91$ 107
48 o 53 - 66 9 J23 78 a / 23 ) 44 .c: ì 76 92 Z )09 / 129 IC 2G-
SC 9G SC 6Gla
7G 29 'IS 61X 77
1 3 :I 109 'V 20 / 30 'iO '- 50 60 74345 çjp 62
,Ç 7)±
94 a110 >
)2C lE2E 3
4E 6E 6E 7E 3)47 c'ß G3
79 95 1))l"
127 1F 'x-' 2F J '-F S 6F 7í1131ES: I - TIE F1ST 19 SYMBOLS Il) ThE 1P43E 438E CENTEllEO SThDOLS.
2. 43f11 J?TECCíi (1i l;.X GOOF 01 3 ti TPi43G SMGI. HILL 8 CONS lOGrEO
IIOÛULG
TClE
¡ T-LP. C' 7)0 PUNCIED CR80 C1)OES FFICITPI SEO
8EFL6ENCC C4380 t:P.T LIC JSEO U0I ElCH S'UIEIOL.
-44
2036
1h52
A
24 '4-' 34 6Ei 84 44 -, 59 37 .1:4- ;3 25 's-' 35 22 3e -.1 70 Cl, 41) I SC 46 2G 3G 72I
IB 443 4 SE) 73 1 e 149 .1 S!) 74 r.-' 9 48 '--'; CO
122 -18 a 3 03 (N sr 5 CG ¿i
01 40 28 87 s-7 69 'ISFAST ALGJL LJMPILrR DF D CT,E1ASE F II /l75 PCR.NR..SOuRCE L1STIIG PAGE L CJ'JLR VES1O :FAT4 OPTJO4S IN E CT:ilZ(KYtE-c)=I4,IDLr 6,SEGSEGM, tREALIX,y,Q; colo 3
'1'1TER 'LFA:'L43EL 'LJS,1ST,SRIG;
0020 ,RX,RYO,°Y1,aY2,RY,2,L3,L4,LK,LK2,F,A,b,Al,B1, 0030 7 4z,2,LL,LL2,-sp,FsP1,2,Es3; 0040 i 0050 9 I,,,800L,'(; 0060 9 E4L'''0cEOUE'L; 0070 0080 11 54'TdE'l' 0090 11 'G1'L:=L;ES=S°3'1F' A1FA=9a'THEN''0EGIN'AAlSY'EN0' 0100 19 0110 24 0120 26 'G14'L:=0;4:=X;:Y;EW:=0 0130 31 0140 32 ,:c4LIp1CFr)OEt12; 0150 33 0160 34 0170 3 0180 42 0190 47 0''LSE' 0200 49 0210 54 ND' ¡ 0220 5 '0ÇE0U'P0(!,.,C); 0221 55 0222 59 00223300 63 -1'FLE1) 00224000 53 0230 70
;L4:0ì/. ;L/.L.<2Q2/.25A1X+.1915*CA2X+.1975*0?
0240I.q7*L975ESP1.l*QESP2.06*CESD3.3*0
0250 81 9?N:P:=0; 0260 83 0270 87 '-LS-'-s41; 0280 !T 0290 cl Tt,1,)=1o1ITt,1,p=Lz3I1Tc,1/)=124IHT(/1/)=125'HENs'GcTu'occ3oE; 0300 HT(/"/):T(/1/)-l12'3TU'LtES 0310 94 jJ:P?:)_t;*Ií?P=011HEN' 0320 C7'G1N''I1(/1/)=3IHT(/1/)14'TEl'
0330 9.? 0340 1C4 oiso 1C7 030 112 113 0380 11! 0390 11 T(/?/):rCJ;1J1.sr(/1/)=1!HT(/L/)r124THEN1 0'f00 11 0410 12A 0420 130 -T(/l/):H1(/I/)s( 'IF'HT(/1/)(64'THEN'64'ELS'-4); 0430 133 tIC /1/)12.'ThN 0440 0450 13'i TU: I1T'I(),r,T,1);1Ï(/1/):=HT(/L/)+('IF'I1T(/1/)<Ó4'THEN'4'ELSE'-64) 0460F?&$T ALZJL PIL L1,ELEAS 1/ 9/1975 1NCR.N.+0URCE L1STP PASE 2 13?
IC1Hr(/1/)(",I4T(/1/)=I071TH41
0470 14 0480 0490 14''p';)P4I;TC(/P/):i-lT(/1/);'G'1T3'JEXT;
05001;'
,-4UJF: '1'Tt/l/)124'THEi''GOTh'S4;'1F'rC(/1/)<=13'THE'4'
osioi
119P1F'ALrA=Ç(.'T.1.4MK(X_*.5,Y,0,TC(/1/),ALFA,-1)'FLSF'
0520t3
0530 1(2 0540 165M(,y,!.54,10',ALA,-1)'EL5E''IF'TC(/1/)=2O1'PEN'
0550'G1:'MR((X,Y,c.,7,P)9,A1F,-1); 'IF'ALFA=OO'lHLN'
060
171 '1:TN'4A((X,Y43.57,'J.2,1C9,ALFA,-1)M'Ç(X,Y+3.97,0.57,109,A1FÂ, 0570 174-1);
0580 174'3''LSE'
C590 176'3EI''1A!(t(.Ü.67,Y,D.,109,ALFA,-l);
0h0017-SAÇl X.0.97 ,v,0.57. IC'9, ALFA,-1 )
0510 0620 150
'Et0''-LSE''I'TC(/1/)202'THEN'
0b30i3
'1Gt'M.(X,Y,G.4,109,ALFA,-1);'IF'ALFA90'T1EN'
0640 i36 0650 133 MAK(x,v41.l4,r.4,109,ALFA,_1); 066019
-N)''ELSE 0670 191'r0I'MAK(X+0.57,Y,D.',1c.ì,ALFA,-1)
0680 193MA(X+1.14,Y,3.4,1C,ALFA,-[);
0690 194'';
oioo 195 'EN0''iLSE' 0710 197GINULL=L;t1C,ES>.0O301flEN
00719000 200':'I'((A,,P,64,4LF4+100,1P;
00720000 202 F'ALFA=9)'T-1E'' 0721 2C3 0722M4(4,9.9.0,ESP,64,ALFA,i0,-j);
00724000 206'EiJ''ELSE'
00725000 209'EIN'MA(999.0,!,LL,TC(//),ALFA,-1);
00726000 210 MARKt 9.0,,ESP,64,ALFA+180,-1); 00727000 211 'ENJ'; 0728000 212'[''ELSE'MAK(A,,LL,TCt/'l/),ALFA,-1);
C0729U00 215'D';:=R+('1F'T2t/R/)>=2C0TC(/R/)<=202'THEN'7'ELSE'1):
0730 217 I.4Tc(f1/):=4TC(/2/):=C; 0731 218 'F G '2' STE° '1 'UNI IL'
'30' 0760 21 0750 223
'3CIN''1F'533L0'THEN'
0760 225'BEr,LN':.1;300L:=00L+1;'IF'TC(/R-2/)=63'TH[l'
0770 229 '6ES1N''I'ALFA=90'fl-$EN'MARKtX,RY0-Q,Q,64,ALFA,-I) 00780000 232 00790000 23464,LFA,-1);
03791000 '34 'END''ELSE'PoS(IXO,RYO,RR); 080G 237sI:
LL2:rL2;S1FALFA=9oSTHENl OSlO 240 'BIN'MAR'.tA,999.0,A6S(ESP),64,ALFA+('IF'ESP<0'THE'i'180020
242 'ELSE'0),-1P;MARK(A-L3,999.0,LL2,TC(/R/),ALFA,-1); 0830 243 MAR<(A,9.0,4S(E5P),64,ALFA+('IF'ESP<0'THE'180'ELSE'0) 0931 244,-1);
0832 244 'FNO''F.LSE' 0833 246 EN'MMKt99.0,F,ABStESP),64,ALFA+('IF'ESP<0'THEN'I8C 0834 248 'ELSE'0),-1);MARK(999.0,3+('IF'ALFA180'THEN'-t3'E1SE'131 0835 247 ,LL2, T(/f ),ALFA,-j1 ;MARKt999.o,8,ASESP),64,ALFA+('IF' 0636 75') ESp<C'T-IEN'llO'ELSF'o),-I); 09373 FAST AL.,JL ,1MPX1F UF DELF1,RE1EAS 1/ '/1975 INCR.NR.+SOURCE LISTING PA,E 2 J 0838 253 :NL,I;csIRx1,y1,+I1Ioc/1/});R:+1;uIFspspPTI.4ENtJGoTosS4; 0840 258 'IF'tC(//)53'!HEN' 0850 2 59 0850 263 0870 265
r',k)I; '1'TC/Rf)-.63'THEN'
0880 267 0890 'IF'8o3L=1'T'-4''' JT0'S1;'1F''303LC'THEN' 0900 271 'r,IN''IF'Tc(Il)<=13'THEN' 0910 2 73 tG1,1''F'4LFA=9C'T'-EN'MARK(x-Q*.5,999.0,3,TC(/R/},ALFA,-1) 0920 276 'LSh'M.K(9'9.0,YQ*.5,Q,TC(/R/),ALFA,-1); 0930 273 'NO' 0940 279 0950 2 u2 )E1SEtS1FJ//)=(1ITHFNI 0960 284 0910 207 ItF'AL*9C'TH,S' 0980 2i3 '3E1N'MAc,(X,RY.O.b7,0.2,109,ALFA,-1); 0990 293 1000 291'E'
'LE' 1010 293 'jJ'RK(X+J.67,RY,O.2,109,ALFA,-1); 1020 2 ?5 MA.((X+Q.97,RY,0.57,L09,ALFA,-1) ; 1030 296 1040 297 F)ELSEI11iTC(//)202*THEN1 IOSC 3 (O 1060 303'IF'LA90'THEi'
1070 304 j?IMARK(X,RY4O.57,C.4,1U9,ALFA,1); 1080 306 MAç(Á,.Y+1.14,0.4,1o9,ALFA,-1); 1090 307 'ENO' 'ELSE' 110009
,!3EsI,MA«t+o.r7,Ry,0.4,109,ALFA,_1); 1110 311 Rx+1.1,Y,0.4,109,ALF,-1); 1120 3 12 1130 313 'E'IJ''ELE' 1140 315 ''G1N'LL:=L;'1'ALFA90'T-1E' 115G 313 '9ESIN''IF'ESP>.CÇO01'THEN' 01159000 32) R*(A,99.3,E5P,s4,ALFA+19o,-1); 01160003 321 MAR((A,999.C,L1,TC(/R/),ALFA,-1); 1161 322 '1F'cS7>.000t 'THEN' 01162000 323 l°JA,)99.Q,SP,b4,ALFAi-180,-1); 0116300C 324 'tD' 'ELSF' 01164800 326 ,r.['jI,F.c;p,00001eHENl 01165000 323 01166000 329I.\-<( #5? .3 ,-i ,L1,TC(/R/),ALFA,-1);
01167000 3 30 '1 ) .00(,01 'P-N' 01158000 321 011t9000 2 32 'rn' ; 01170000 _j -'IF'TC(/R/)>=z0E1.TC(/R/)<=2O2'THEN'7'ELSE'1); 01171000 3 3 ')TJ'IN.)E: 1178 3 _) C' ; ' 1F' r,3L--1' TNErJ 1180 3 3E