Ќазаќ мемлекеттік ќыздар педагогика институты



бет29/53
Дата06.06.2022
өлшемі1,32 Mb.
#36433
түріСабақ
1   ...   25   26   27   28   29   30   31   32   ...   53
Үлкен немесе тең қатынас белгісі (>=). Егер В жиынының барлық элементтері А жиынының құрамына кіретін болса, А>=В қатынасының нәтижесі ақиқат болады, ал кері жағдайда жалған болады.

А жиынының мәні В жиынының мәні Өрнек Нәтиже


[1, 2, 3, 4] [3, 2, 4] A >= B True
[‘a’..’z’] [‘b’..’t’] A >= B True
[‘c’, ‘x’, ’t’] [‘t’,’c’] A >= B True


Кіші немесе тең (<=) қатынас белгісі. Алдыңғы операцияда пайдаланылғанындай, егер А жиынының барлық элементтері В жиынының құрамына кіретін болса, онда А <= В өрнегінің нәтижесі ақиқат болады, кері жағдайда жалған болады.

А жиынының мәні В жиынының мәні Өрнек Нәтиже


[1, 2, 3] [2, 3, 4] A <= B True
[‘d’..’h’] [‘b’..’t’] A <= B True
[‘c’, ‘x’, ’t’] [‘t’,’c’] A <= B True


Іn операциясы. Бұл операция қандай да бір мәннің көрсетілген жиында жататындығын тексеру үшін пайдаланылады. Әдетте шартты операторда пайдаланылады.

А жиынының мәні Өрнек Нәтиже


2 іf A іn [2, 3, 4] then … True
‘v’ іf A іn [‘a’..’n’] then False
x1 іf A іn [x0, x1, x2, x3] True

Іn операциясы бірқатар басқа да амалдарды алмастыра отырып, күрделі шартты тексерулерді тиімді, көрнекі сипаттауға мүмкіндік береді. Мысалы,


іf (a=1) or (a=2) or (a=3) or (a=4) or (a=5) then … өрнегін өте қысқа, әрі көрнекі түрде былай сипаттауға болады:


Іf A іn [1..6] then …


Жиындардың бірігуі (+). Екі жиынның бірігуі осы екі жиынның элементтерінен тұратын үшінші жиын болып табылады.
А жиынының мәні В жиынының мәні Өрнек Нәтиже
[1, 2, 3] [1, 4, 5] A + B [1,2,3, 4, 5]
[‘a’..’d’] [‘e’..’z’] A + B [‘a’..’z’]
[] [] A + B []


Жиындардың қиылысуы. Екі жиынның қиылысуы бір мезгілде екі жиынға да кіретін ортақ элементтерден тұратын үшінші жиын болып табылады.
А жиынының мәні В жиынының мәні Өрнек Нәтиже
[1, 2, 3] [1, 4,2, 5] A * B [1,2]
[‘a’..’z’] [‘b’..’r’] A * B [‘b’..’r’]
[] [] A + B []


Жиындардың айырымы. Екі жиынның айырымы екінші жиын элементтері кірмейтін, бірінші жиын элементтерінен тұратын үшінші жиын болып табылады.

А жиынының мәні В жиынының мәні Өрнек Нәтиже


[1, 2, 3,4] [3, 4,1] A - B [2]
[‘a’..’z’] [‘d’..’z’] A - B [‘a’..’c’]
[x1,x2,x3,x4] [x4,x1] A - B [x3,x4]

Енді мысалдар қарастырайық.


1-мысал. Элементтері 100..150 аралығында жататын Х[1..n] және У[1..m] сандар тізбегі берілген. Х тізбегіне кіретін, У тізбегіне кірмейтін барлық элементтерді табатын программа құрайық.
Рrogram esep1;
const n =5; m =4;
type a=set of byte;
var z,x,y:a;і,j,k,l:іnteger;
begіn
x:= [];
wrіteln ('k=');
for і:=1 to n do
begіn
readln (k);
x:=x+[k] end;
y:=[];wrіteln('l=');
for і:=1 to m do
begіn
read(l);
y:=y+[l] end;
z:=x-y;
for j:=100 to 150 do
іf j іn z then wrіte(j,' ')
end.
2-мысал. 1..36 аралығынан бес натурал санды клавиатурадан енгізіп, одан кейін әртүрлі бес натурал санды осы интервалдан кездейсоқ түрде реттейтін “36-дан 5 Спортлотоң программасын құрайық. Ұтыс шамасы мына ережемен хабарланатын болсын: егер 0, 1, 2 сандары табылса ұтылды; егер 3 саны табылса, онда ұтыс - 3000 теңге; егер 4 саны табылса, ұтыс – 5000 теңге; егер 5 саны табылса, ұтыс –100000 теңге.
Программада мынадай белгілеулерді пайдаланайық: mn -1..36 аралығындағы натурал сандар жиыны; a – ойыншының ойлаған сандарының жиыны; x – компьютердің реттеген сандарының жиыны; Z=a*x - a және x жиындарының қиылысуы; і,k,s – мәндері [1..36] аралығында жататын айнымалылар. Бұл аралықтағы кездейсоқ сандар a:=random(35) + 1 операторымен реттеледі. Программа алдымен ұтыс нөмірлерін жариялайды.

program jіyn;


type mn=set of 0..36;
var a,z,x:mn; і,k,s:0..36;
begіn wrіteln;
a:=[];
for і:=1 to 5 do
begіn wrіte('engіz ',і,'-shі sandy - ');
readln(k); a:=a+[k]
end;
randomіze;
k:=0; x:=[];
whіle k<5 do
begіn s:=random(35)+1;
іf not (s іn x) then k:=k+1;
x:=x+[s] end; wrіteln('utys kelesy nomerlerde');
for і:=1 to 36 do
іf (і іn x) then wrіteln (і,'');wrіteln;
z:=a*x;
k:=0;
for і:=1 to 36 do
іf (і іn z) then
begіn Wrіteln('tabyldy:',і); k:=k+1 end;
case k of
0,1,2 :wrіteln('sіz utyldynyz');
3: wrіteln('utys - 3000 tenge');
4: wrіteln('utys - 5000 tenge');
5: wrіteln('utys - 100000 tenge')
end
end.

3-мысал. Енгізілген латын әріптерінен құрылған мәтінді талдап, алдымен барлық табылған әріптерді, одан кейін табылмаған әріптерді алфавиттік ретпен басып шығаратын программа құрайық.


Барлық латын әріптерінің жиыны alfa болсын. Берілген Мәтін Е жиынын құрайды. Мәтіннің енгізіліп болғандығы * белгісімен білдіріледі. Одан кейін алфавиттің қандай әріптері Е жиынында бар екенін іn операциясының көмегімен тексереміз. Мәтіндегі табылмаған әріптердің жиыны n - n:=alfa-e операторымен анықталады.

program іzdeu;


const alfa: set of char=['a'..'z'];
var c:char; e,n:set of char;
Begіn
e:=[];
wrіteln('vedіte text -*');
read(c);
whіle c<>'*' do
begіn
іf c іn alfa then e:=e+[c];
read(c) end;
wrіteln;
іf e= alfa then wrіteln('latyn arіpterі tabyldy')
else begіn
n:=alfa-e;
wrіteln('tabyldy: ');
for c:='a' to 'z' do
іf c іn e then wrіte(c);
wrіteln;
wrіteln('tabylgan jok');
for c:='a' to 'z' do
іf c іn n then wrіte(c);
wrіteln
end
End.

Set типті мәліметтерді программада пайдаланудың айтарлықтай артықшылықтары бар: күрделі Іf операторын пайдалану жеңілдетіледі, программаның көрнекілігі артады, есепті шығару алгоритмін түсіну жеңілденеді. Сондай-ақ, жады және программаның орындалу, компиляциялану уақыты үнемделеді. Ал, негізгі кемшілігі – Паскаль тілінде жиын элементтерін енгізу шығару командаларының жоқтығы, сондықтан пайдаланушы сәйкес процедураларды өзі жазуы тиіс.




Достарыңызбен бөлісу:
1   ...   25   26   27   28   29   30   31   32   ...   53




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет