Väljundtegevuste lisamine: identifikaatorite moodustamine

Identifikaatoreid genereerivast grammatikast ja neid tunnistavast programmist saab samuti lihtsa väljundtegevuste lisamisega programmi, mis kogub üheks stringiks identifikaatori kõik sümbolid.

Identifikaatori iga sümboli lugemisel tuleb see lisada (konkateneerida) identifikaatori juba loetud osale; vastava operatsiooni sooritab protseduur TREAT_LET_DIG

IDENT TÄHT TREAT_LET_DIG (TÄHT TREAT_LET_DIG | NUM TREAT_LET_DIG)*

Alamprotseduur TREAT_LET_DIG liidab (konkateneerib) loetud sümboli muutujale AUXSTRING (selle algväärtus on tühi string):

procedure TREAT_LET_DIG

(AUXSTRING: in out STRING
(CH: in CHARACTER)
if length(AUXSTRING)=8
then RECORD_ERROR(2, POSITION)
else AUXSTRING = AUXSTRING || CH
end if
end TREAT_LET_DIG

Siin veakood 2 tähendab liiga pikka identifikaatorit, || on stringile CHARACTER-tüüpi muutuja juurdekirjutamine (konkatenatsioon)


Ülesandeid:


Küsimused, probleemid:
jaak@cc.ttu.ee

Tagasi loengute sisukorra juurde