Оқулық Қазақстан Республикасы Білім жəне ғылым министрлігі бекіткен Алматы, 2011 1
boribaev-algoritmdeu
Delete процедурасы үшін, егер <позиция> символдар тір-кесінің ұзындығынан үлкен болса, онда ол өзгермейді. Егер <по- 74 зиция> + <саны> тіркес ұзындығынан үлкен болса, онда көр-сетілген позициядан бастап сөз тіркесінің соңы өшіріледі. Егер <позиция> нөмірі [1,255] аралығына жатпайтын болса, онда про-грамма орындалуында қате пайда болады. Insert процедурасында, егер бір символдар тіркесін кірістіру нəтижесінде бастапқы берілген сөз тіркесінің максимальды ұзын-дығынан артық тіркес шықса, онда кірістірілген сөз тіркесінің соңғы символдары қойылмайды. Егер <позиция> нөмірі бастапқы тіркестің Length функциясымен анықталған нақты ұзындығынан артық болса, онда нəтиже жалғастырылған (сцепленная) сөз тіркесі болып саналады. Val процедурасы үшін сөз тіркесіне түрлендірілетін сан ал-дында жəне соңында бос орындар болмауы тиіс. 4.5 Басқа процедуралар мен функциялар
75
4.6 Енгізу-шығару процедурасы Турбо Паскаль тілінде мəндерді енгізу стандартты READ немесе READLN процедуралары (операторлары), ал мəндерді шығару WRITE немесе WRITELN процедуралары (оператор-лары) арқылы орындалады. READ жəне READLN процедурала-ры символдарды (мəндер типі CHAR), сөз тіркестерін (мəндер типі STRING_),_онда_READ'>STRING) немесе сандық мəндерді (мəндер типі INTEGER, BYTE, REAL жəне т.б.) енгізу үшін қолданылады. READ процедурасын шақыру: READ ([<файл аты>,]<айнымалылар тізімі>); READLN процедурасы үшін сəйкесінше: READLN ([<файл аты >,]< айнымалылар тізімі >); Егер <файл аты> көрсетілмесе, онда мəндерді оқу стандартты INPUT файлынан жүргізіледі, бұл жағдайда стндартты құрылғы INPUT файлымен байланысқан пернетақта немесе дисплей бо-лып саналады. Əр енгізу операторының тізімінде көрсетілген айнымалыларға меншіктелетін тұрақты мəндері бар өз мəндер жиыны бар. Енгізу 76 тізіміне мəндерді меншіктеу айнымалылардың орналасу ретіне байланысты, солдан оңға қарай жүргізіледі. Есте сақтаңыздар: Айнымалылар жəне тұрақтылар типі сəйкес болу керек (тек REAL типті мəндерін енгізерде, INTEGER типті ай-нымалылар мен тұрақтыларды көрсетуге болады). Енгізілетін сандық мəндер бір немесе бірнеше бос орын-мен ажыратылуы керек; санның таңбасын жəне цифрла-рын бос орын арқылы бөлуге болмайды. Егер сөз тіркесі, яғни жол енгізілетін болса (мəндер типі STRING), онда READ операторы VAR сипатталуында көрсетілген максимальді ұзындықтан аспайтын символдар тізбегін ғана оқиды. Символдар тізбегі (мəндер типі CHAR немесе STRING) оларенгізілмегенжағдайда,босорынретіндеқабылданады. Мысал. А) Сандық мəндерді енгізу:
Ə) Сандық жəне тіркестік (жолдық) мəндерді енгізу. VAR A: REAL; B:INTEGER; C1,C2,C3: CHAR; Енгізілетін мəндер: D: STRING[5]; 2.5 10 ЖОЛБАРЫС
READ(A,B,C1,C2,C3,D); A=2.5; B=10; C1=’ ’; C2=’K’;C3=’L’; D=’ ЛБАРЫ’ Мысалдан көріп отырғандай, мəндерді араластырып (сан-дық жəне жолдық) енгізу дұрыс орындалмайды. Егер енгізілетін мəндер тізбегінен кейін бос орын қалдырылмаса, онда енгізуде қате (ERROR 106) орын алады. Сондықтан сандық мəндер мен тіркестік немесе символдық мəндерден жеке-жеке бөле отырып енгізу керек. 77 READ операторын орындаған кезде енгізу жолының соңы (<Еnter> пернесін басу), мəндер элементтерін ажырататын бос орын енгізумен бірдей болып саналады, сондықтан енгізудің келесі жолына көшу орындалмайды. Ал енгізілетін мəндер тізбек бойынша сəйкес айнымалыға меншіктеледі Мысалы, ұқсас операторлар үшін енгізілетін мəндер тізбегі əр түрлі болып келуі мүмкін: READ(A,B,C); Енгізілетін мəндер: 2 9 5 3 7 немесе READ(D,Е); Енгізілетін мəндер: 1 жол: 2 9 5
1)FOR I:=1 TO 2 DO BEGIN FOR J:=1 TO 3 DO READ (A[I,J]); READLN END;
Енгізілетін мəндер: 3 5 1 -479 2)FOR I:=1 TO 2 DO FOR J:=1 TO 3 DO READ (A[I,J]); Енгізілетін мəндер: 3 5 1
78 Енгізілетін мəндер: 3 5 1 -4 7 9 Келесі мысалда READLN операторын қолданғанда, жолдың соңындағы мəндердің қабылданбайтындығын анық көруге бо-лады.
READLN(A,B,C); READLN(D); Нəтиже: A=10;B=20;C=30;D=60 жүктеу/скачать 4,42 Mb. Достарыңызбен бөлісу: |