Дискретна математика.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Програмного забезпечення (ПЗ)

Інформація про роботу

Рік:
2007
Тип роботи:
Лабораторна робота
Предмет:
Дискретна математика
Група:
ПІ

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет «Львівська політехніка» Інститут комп’ютерних наук та інформаційних технологій Кафедра ПЗ ЗВІТ Лабораторна робота № 4 з курсу «Дискретна математика» Тема: "Відношення ” Виконав: ст. гр. ПІ Львів-2007 Завдання: Завдання. Ввести з клавіатури відношення на множині {1,2,3,4}. Зберегти відношення за допомогою array. Визначити чи дане відношення є рефлексивне іррефлексивне симетричне антисиметричне асиметричне 6. транзитивне Відлагодити, скомпілювати і зберегти програму. Оформити звіт про роботу. Текст програми program vidnoshennya; uses crt; const N = 4; var vidnosh: array[1..N,1..2]of integer; mas,mas3,mas4,mas5,mas6:array[1..4]of integer; max:integer; i,j,num,g:integer; reflex,irreflex,symetr,antysymetr,asymetr,tranzut,ekviv,chastk:boolean; begin clrscr; reflex:=false; irreflex:=true; symetr:=false; antysymetr:=false; asymetr:=false; tranzut:=false; ekviv:=false; chastk:=false; writeln('‚Введіть ',N,' пари відношень (числа менші 4)'); for i:=1 to N do begin writeln('Введіть ',i,'пару елементів'); for j:=1 to 2 do begin readln(num); while num>4 do begin writeln('Введено число більше 4, введіть інше число'); readln(num); end; vidnosh[i,j]:=num; end; end; max:=0; for i:=1 to N do for j:=1 to 2 do if vidnosh[i,j]>max then max:=vidnosh[i,j]; for i:=1 to 4 do mas[i]:=0; for i:=1 to N do if vidnosh[i,1]=vidnosh[i,2] then begin mas[vidnosh[i,1]]:=1; end; for i:=1 to 4 do if mas[i]=0 then begin if i-1=max then begin reflex:=true; break; end else break; end else if i=4 then reflex:=true; for i:=1 to N do if vidnosh[i,1]=vidnosh[i,2] then irreflex:=false; for i:=1 to N do mas3[i]:=0; for i:=1 to N do mas4[i]:=0; for i:=1 to N do mas5[i]:=0; for i:=1 to N do if vidnosh[i,1]=vidnosh[i,2] then begin mas3[i]:=1; mas4[i]:=1; end else begin for j:=i to N do if (vidnosh[j,1]=vidnosh[i,2])and(vidnosh[j,2]=vidnosh[i,1]) then begin antysymetr:=false; for g:=1 to N do mas4[g]:=0; mas3[i]:=1; mas3[j]:=1; end else begin if j=N then begin mas4[i]:=1; mas5[i]:=1; end; end; end; for i:=1 to N do if mas3[i]=0 then break else if i=N then symetr:=true; for i:=1 to N do if mas4[i]=0 then break else if i=N then antysymetr:=true; for i:=1 to N do if mas5[i]=0 then break else if i=N then asymetr:=true; for i:=1 to N do mas6[i]:=0; for i:=1 to N do for j:=1 to N do if vidnosh[i,2]=vidnosh[j,1] then begin for g:=1 to N do if vidnosh[g,1]=vidnosh[j,2] then begin mas6[i]:=1; end else mas6[i]:=0; end else mas6[i]:=1; for i:=1 to N do if mas6[i]=0 then break else if i=N then tranzut:=true; if reflex and symetr and tranzut then ekviv:=true; if reflex and antysymetr and tranzut then chastk:=true; writeln; if reflex then writeln('Відношення рефлексивне'); if irreflex then writeln('Відношення іррефлексивне '); if symetr then writeln('Відношення симетричне'); if antysymetr then writeln('Відношення антисиметричне '); if asymetr then writeln('Відношення асиметричне '); if tranzut then writeln('Відношення транзитивне'); if ekviv then writeln('Відношення еквівалентності'); if chastk then writeln('Відношення часткового порядку'); if (not reflex) and (not irreflex) and (not symetr) and (not antysymetr) and (not asymetr) and (not tranzut) then writeln('Відношення не належить до жодного типу'); readln; end. Висновок: На цій роботі я перевірив свої знання по темі відношення та навчився записувати відношення в на мові Turbo Pascal.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!