Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Отчет
по лабораторной работе № 1
Выполнила:
Проверила:
Кишинев 2017
1
2
Цель работы: 1. Освоение и изучение использования структур данных
– двухмерных матриц и связных списков – для различных способов задания
графов : с помощью матрицы инцидентности, матрицы смежности и списков
смежности.
Граф
Список смежности:
1-2,3,5,0
2-2,4,5,0
3-2,3,0
4-3,5,0
5-2,3,0
6-0
Код программы:
#include <stdio.h>
#include<conio.h>
int main()
{
while(1)
{
system("cls");
printf("1.Vvod matritsi intidentnosti.\n2.Vivod matritsi intidentnosti.\n3.Vivod matritsi
smejnosti.\n4.Vivod spiska smejnosti.\n5.Vihod iz programmi.\n");
scanf("%d",&option);
if(option==1)
{
printf("\nVvedite kol-vo vershin: ");
scanf("%d",&Kol_ver);
printf("\nVvedite kol-vo sveazei: ");
scanf("%d",&Kol_sv);
printf("\nMatritsa intidentnosti:\n");
for(i=0;i<Kol_sv;i++)
{
for(j=0;j<Kol_ver;j++)
{
scanf("%d",&Mat_int[i][j]);
}
}
}
if(option==2)
{
printf("\nMatritsa intidentnosti:\n");
for(i=0;i<Kol_sv;i++)
{
printf("\n");
for(j=0;j<Kol_ver;j++)
{
printf(" %d",Mat_int[i][j]);
}
}
getch();
}
if(option==3)
{
printf("\nMatritsa smejnosti:\n");
for(i=0;i<Kol_sv;i++)
{
for(j=0;j<Kol_ver;j++)
{
if(Mat_int[i][j]==-1)
{
m=j;
}
if(Mat_int[i][j]==1)
{
n=j;
}
if(Mat_int[i][j]==2)
{
m=j;
n=j;
}
}
Mat_smej[m][n]=1;
}
for(m=0;m<Kol_ver;m++)
{
printf("\n");
for(n=0;n<Kol_ver;n++)
{
printf("%d ",Mat_smej[m][n]);
}
}
getch();
}
if(option==4)
{
printf("\nSpisok smejnosti:\n");
for(m=0;m<Kol_ver;m++)
{
printf("%d: ",m+1);
for(n=0;n<Kol_ver;n++)
{
if(Mat_smej[m][n]==1)
printf("%d",n+1);
}
printf("0\n");
}
getch();
}
if(option==5)
{
return(0);
}
}
}