Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
тапсырма паскаль вариантпен.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
595.97 Кб
Скачать

Программалау (і ) пәнінен Зертханалық жұмыс №9 Жолдарды сұрыптауда қолданылатын процедуралар мен функциялар

(3-семестр, 2 сағат)

Жұмыстың мақсатыжолдық шамалармен жұмыс істеу алгоритмдерін құрып үйрену, жолдық стандартты процедуралар мен функцияларды пайдалана білу іскерлігі мен дағдысын қалыптастыру; жолдық мәліметтерге әртүрлі операциялар қолдана білу

Тапсырма. Жолдық деректерді процедуралар/функциялар парамері ретінде беру. Кірістік жолдық параметрлерін, егер олар процедуралар/функциялардың ішінде өзгермесе, онда оларды параметрі константта арқылы сипаттағаны дұрыс

Тапсырмалар вариианттары:

1 S жолы паскаль тілінің рұқсат етілетін идентификаторы болатынын тексеретін IsIdent(S) бүтін сандық функциясын сипаттау.Егер дұрыс болса 0 қайтарылады. Егер S болса жол болса-1 қайтарылады,егер жол саннан басталса -2 қайтарылады. Егер S рұқсат берілмеген символдардан тұрса,бірінші рұқсат берілмеген символдың нөмері қайтарылады. Сол функция көмегімен 5 берілген санын тексеру.

2. S шаблон-жолының қайталанатын копияларымен толтырылған Len ұзындығы бар жолды қайтарылатын FiLLStr(S,Len) жолдық типті функциясын сипаттау. Сол функция көмегімен Len берілген санмен және 5 берілген шаблон-жолының 5 жаңа Len ұзындығы бар жолы құру.

3. S жолыныңбарлық бес әріптерін кіші әріптерге ауыстыратын (басқа символдар өзгермейді) LowCase процедурасын сипаттау. Сол процедурасы көмегімен берілген 5 жолын өзгерту.

4. S жолынан бірінші және соңғы пробелдерін алып Trim(S)3 тастайтын процедурасын сипаттау. Сол процедурасы көмегңмен берілген 5 жолын өзгеру.

5. S жолында subs (k>0) ішкі жолының соңғы кірісінен тұратын PosK(subs,S,k) позиция номірін қайтарып тұратын функциясын сипаттау. Егер S жолында subS ішкі жолы болмаса,ол функция 0 қайтарылады.Берілген subS және 5 мәндеріне бұл функциясының міндерін шығару,

6. S жолында (k>0) ішкі жолының к-кірісі кездескен позиция номірін қайтарып тұратын PosK (subs, S, k) бүтін типті функциясын сипаттау. Егер S жолындағы subsS ішкі жолыының кірістерінің саны к-дан аз болса, ол функция 0 қайтарылады. Берілген subS, k және S5 мәндеріне бұл функцияның мәндерін шығару.

7.S жолының к-сөзін қайталайтын (сөз дегеніміз пробелмен немесе жолдың басы/аяғымен шектелінген пробелсыз символдың жиыны болып табылады) WordN(S,k) жолдық типті функциясын сипаттау. Егер жолдағы сөздердің саны к-дан аз болса ол функция бос жолды қайтарылады. Сол функцияны пайдалана отырып берілген жолынан к1, к2, к3 нөмірлі сөздерді меншіктеу.

8. Берілген S жолмен Wсөздердің жиынын қалыптастыратын процедурасын сипаттау (W -шығыс жолдық массив; N-оның өлшемі,N<=10) Сөз дегеніміз пробелмен немесе жолдың басы/аяғымен шектелінген пробелсыз симврлдың жиыны болып табылады. Сол жолды қайтарады. Сол функцияның пайдалана отырып берілген S жолдағы сөздердің санын шығару (N) және сол сөздерді шығару.

9. Бүтін оң санның 16-қ санау жүйесіндегі жолдық ұсынысын қайтаратын DecToHex(N) функциясының сипаттау. Жаңа жол ‘0’-‘9’,’A’-‘F’ символдардан құралады. Сол функцияны пайдалана отырып берілген 5 санның 16-лық ауысуын алу.

10. Бүтін оң санды оның S жолдық ұсынылу бойынша екілік санау жүйесінде анықтайтын бүтін типтік BinDec(S) функциясын сипаттау. S параметірі типіне сәйкес, [‘0’-‘1’] символдардан тұрады және бастаушы нөльдерден тұрмайтын. Сол функцияны пайдалана отырып бүтін 5 санды шығару (олар екілік/16-лық санау жүйесінде берілген).

Бақылау мысалы

Программада 5 пен 7 екі бүтән сан берілген, ол сандар оларды еселейтін Inc2 процедурасына беріледі. Параметрлердің бреуі параметр-айнымалы ретінде, ал екінші – параметр-мәні ретінде берілені. Процедураның шығару алдындағы және солан кейінгі алынған еселену нәтижесі экранға шығарады

program primer7;

Var a,b:integer;

procedure inc2(var c:integer; b:real;);

begin

c:=c+c;

b:=b+b;

writeln (‘екі еселенген:’,c:5,b:5)

end;{inc2}

begin {min}

a:=5; b:=5;

writeln(‘бастапқы:’); inc2(a,b);

writeln (‘нәтиже:’,a:5,b:5);

end.{main}

Программа орындалғаннан шығартылатын: Бастапқы: 5 7

Екі еселенген:10 14

Нәтиже:10 7

Факториалді есептейтін сипаттау және есептеу үшін сол функцияны пайдалануы.

Program primer 8;

Var n ,m :integer ; f :real ;

Function fact (n :integer ) :integer ;

Var i,p:integer ;

Begin p:=1;

For i:=2 to n do p :=p*i

Fact :=p

End;

Begin

Read (m,n) ;

F:= fact (n) * fact (m)/ fact (n+m);

Writeln (f);

End.