Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра ПЗ
З В І Т
Лабораторна робота № 2
З курсу «Дискретної математики»
Тема:
«Операції над множинами»
Мета роботи:
Навчитися виконувати операції над множинами за допомогою функцій мови Pascal.
Завдання:
Описати 3 числові масиви A (5 елементів), B (3 елементи), C (7 елементів).
Ввести з клавіатури три масиви A, B, C .
Здійснити задані перетворення над масивами і видати результат.
Знайти суму всіх елементів масиву А;
Здійснити перетворення (A∩B)∩C;
Записати декартовий добуток AxC
Текст програми
program lab2; {robota z masuvamu}
uses crt;
var a :array[1..5]of integer;
b:array[1..3]of integer;
c:array[1..7]of integer;
d:array[1..3]of integer;
d1:array[1..3]of integer;
sum,i,j,k:integer;
begin
clrscr;
sum:=0;
k:=1;
writeln('Zaraz vvedem elementu trjoh masuviv');
writeln('Vvodum cili cusla');
for i:=1 to 5 do
begin
write('Vveditj ',i,'-uy element masuvy A : ');
readln(a[i]); {zchutyem elementu masuvy A}
sum:=sum+a[i]; {znahodum ix sumu}
end;
for i:=1 to 3 do
begin
write('Vveditj ',i,'-uy element masuvy B : ');
readln(b[i]); {zchutyem elementu masuvy B}
end;
for i:=1 to 7 do
begin
write('Vveditj ',i,'-uy element masuvy C : ');
readln(c[i]); {zchutyem elementu masuvy b}
end;
writeln;
writeln('Suma elementiv masuvu A = ',sum);
for i:=1 to 3 do
begin
d[i]:=0; {obnylyaem masuvu}
d1[i]:=0;
end;
for i:=1 to 5 do
for j:=1 to 3 do
begin
if a[i]=b[j] then {porivnuem elementu mas A i B}
begin
case k of
1: d[k]:=a[i];
2: if (a[i]<>d[k-1]) then d[k]:=a[i];
3: if (a[i]<>d[k-1])and(a[i]<>d[k-2]) then
begin {odnakovi z-nya ignoryem}
d[k]:=a[i];
k:=1;
end; end; {kinecj operatora vubory}
k:=k+1;
end; end;
k:=1;
for i:=1 to 7 do
for j:=1 to 3 do
begin {porivnuem elementu mas C i D}
if c[i]=d[j] then
begin {D - masuv chusel yaki spivpalu v A i B}
case k of
1: d1[k]:=d[j];
2: if (d[j]<>d1[k-1]) then d1[k]:=d[j];
3: if (d[j]<>d1[k-1])and(d[j]<>d1[k-2]) then
begin
d1[k]:=d[j];
k:=1;
end; end;
k:=k+1;
end; end;
j:=0; {indukator nyljovuh elem}
for i:=1 to 3 do
if d1[i]<>0 then {yakwo z-nya ne nulj to bylo spivpadannya}
writeln ('Pru (AкB)кC otrumaemo mn z takumu elementamu. Elem ',i, ' ',d1[i])
else j:=j+1;
if j=3 then {yakwo vsi elem D1 nyli}
writeln ('Pru (AкB)кC otrumaemo pysty mn');
writeln; {znahodzhennya dek dob A na C}
writeln('Pru decartowomy mnozhenni A na C otrumaemo : ');
for i:=1 to 5 do
for j:=1 to 7 do
write('(',a[i],',',c[j],')',' ');
readln; end.
Висновок:
На даній лабораторній роботі я навчився виконувати операції на множинами в мові Pascal за допомогою використання масивів та дій над ними.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!