251 Ook zal men erin opnemen de formule <l>ik <f>ij V-jlk (5-3) Gebruik van (5.3) betekent dan dat de procedure voor het berekenen van ajuc moet worden aangeroepen. Dat geeft ook geen bezwaar. Maar hoe wordt dan fa verkregen? Het kan immers zijn dat <f>ij uit coördinaten moet worden berekend. Deze berekening vindt plaats volgens (5.2), maar nu is juist (5.2) als onderdeel van de procedure poe gedacht. Dit wil dus zeggen dat de procedure voor fa zichzelf moet kunnen aanroepen. Ook dit is in principe geen bezwaar daar dit zgn. recursief gebruik van een procedure in ALGOL is toegestaan. De mogelijkheid van recursief gebruik van procedures is echter niet bij alle ALGOL-vertalers gerealiseerd. Zo is dat niet het geval bij de ALGOL-vertaler van de TR4, de rekenautomaat die in het bezit is van de T.H. Daarom moest naar een andere oplossing worden omgezien om een hoge graad van automatisering in het programmeren van problemen uit de puntsbepaling te bereiken. Een uiteenzetting van de gevonden oplossing kan het beste worden gegeven aan de hand van de ALGOL-procedure zelf. Daarom wordt nu eerst een protocol weergegeven van het proceduresysteem. Bij de daarop volgende bespreking wordt telkens verwezen naar de regels van het protocol. Het protocol van het ALGOL-procednresysteem (Het verschil in lettertype t.o.v. de voorgaande ALGOL-tekst heeft geen onderscheidende betekenis.) reg el 1 BEGIN INTEGER AZ, iVLAM, API; REAL RHO; RHO: 63.661977237; READ(A'Z, AT AM, API) BEGIN INTEGER /LAM, /PI, BOOLEAN G, GA, GB, GC; INTEGER ARRAY ALAM [i:jVLAMJ, API [i :.VPI] 6 ARRAY SLAM Ti :2 x ALAM], SPI [1:2 x APT, SZ[i:2, 1:2 x NZ]; INTEGER PROCEDURE A(I,K,P,NINTEGER I,K,N,P; BEGIN INTEGER CA,CB,C; G=GA FALSE; CA 1000000 x P 1000 xI K; CB 1000000 x P+ 1000 xK+I; FOR C: 1 STEP 1 UNTIL /LAM DO BEGIN IF CA A LAM[C1 THEN BEGIN G: TRUE; A :=C; GOTO LAB 1 END; IFP=i VP 2V((P 3VS 4)AA=i) THEN BEGIN IF CS ALAM[C] THEN BEGIN GA TRUE; G: TRUE; A :=C, GOTO LAB 1 END END END; A: 1; END A; 16 21 LAB 1:

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

Tijdschrift voor Kadaster en Landmeetkunde (KenL) | 1966 | | pagina 17