Визначення типів графів. Файли.

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА" Інститут КНІТ Кафедра ПЗ ЗВІТ До лабораторної роботи № 8 На тему: “ Визначення типів графів. Файли.” З дисципліни : " Дискретна математика" Лектор: Виконав: ст. гр. ПІ Львів – 2007 Завдання: Використовуючи даний спосіб представлення графа, зчитати з файлу граф, зберегти його даним способом у програмі. Визначити якого типу є граф. У звіті описати даний спосіб задання графів. Коротко описати функції для читання/запису файлів на мові Pascal. Сформулювати переваги та недоліки даного способу представлення графу з алгоритмічної точки зору. Звіт оформити за вимогами шаблону. Варіант 5. Матриця суміжності. Перевірка на мультиграф. Короткі теоретичні відомості У програмі ви використовуємо один із способів подання графів: Матриця суміжності. Перевага даного способу – швидкий доступ до інформації: за один крок можна одержати відповідь на питання чи існує ребро з Vi y Vj. Недолік полягає у тому що незалежно від кількості ребер обсяг пам’яті становить n2. Для читання та запису файлів були використані такі функції: assign - Зв’язування файлу із файловою змінною reset - Відкриття файлу для читання rewrite - Відкриття файлу для запису read, readln - Читання з файлу write, writeln - Запис у файл close - Закриття файлу Текст програми uses crt, graph; const m=25; var i,j,n: integer; a:array [1..m,1..m] of integer; f,g:text; gtype,otype: integer; begin assign(f,'read.txt'); assign(g,'wrie.txt'); clrscr; reset(f); rewrite(g); readln(f,n); for i:=1 to n do begin for j:=1 to n do read(f,a[i][j]); readln(f); end; for i:=1 to n do begin for j:=1 to n do write(g,a[i][j],' '); writeln(g); end; otype:=1; for i:=1 to n do for j:=1 to n do if a[i][j]<>a[j][i] then otype:=2; if otype=1 then begin gtype:=1; for i:=1 to n do for j:=1 to n do begin if (a[i][j]>1)and(gtype<>3) then gtype:=2; if a[i][i]=1 then gtype:=3; end; end else if otype=2 then begin gtype:=4; for i:=1 to n do for j:=1 to n do begin if (a[i][i]=1)and(gtype<>5) then gtype:=4; if a[i][j]>1 then gtype:=5; end; end; if gtype=1 then write(g,'prostyi graph'); if gtype=2 then write(g,'multigraph'); if gtype=3 then write(g,'psevdograph'); if gtype=4 then write(g,'orientovanyi graph'); if gtype=5 then write(g,'orientovanyi multigraph'); close(f); close(g); end. Висновок: На цій лабораторній роботі я краще ознайомився із способами подання графів та вдосконалив свої вміння по використанню файлів для читання та запису інформації.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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