Documente Academic
Documente Profesional
Documente Cultură
RAPORT
la lucrarea de laborator nr. 1
la MD
Chişinău 2023
Scopul lucrării
1. Studierea metodelor de definire a unui graf: matrice de incidenţă, matrice de adiacenţă, liste;
2. Sarcina:
1. Elaboraţi procedura introducerii unui graf în memoria calculatorului în formă de:
• introducerea grafului reprezentat sub oricare din cele trei forme cu posibilităţi de corecţie a datelor;
#include <stdlib.h>
typedef struct {
int x, y;
} Edge;
typedef struct {
Edge edges[MAX_EDGES];
} Graph;
if (G.edges[j].x == i) {
printf("\n");
void displayMatrix(Graph G) {
int adjMatrix[MAX_VERTICES][MAX_VERTICES];
// Inițializarea matricii cu 0
adjMatrix[i][j] = 0;
int x = G.edges[i].x;
int y = G.edges[i].y;
adjMatrix[x][y] = 1;
}
printf("\n");
void displayIncidenceMatrix(Graph G) {
int incMatrix[MAX_VERTICES][MAX_EDGES];
// Inițializarea matricii cu 0
incMatrix[i][j] = 0;
int x = G.edges[i].x;
int y = G.edges[i].y;
incMatrix[x][i] = 1;
incMatrix[y][i] = -1;
}
printf("Matricea de incidenta a grafului:\n");
printf("\n");
int main() {
Graph G;
// Introducerea datelor
inputGraph(&G);
// Afișarea datelor
int choice;
scanf("%d", &choice);
switch (choice) {
case 1:
displayList(G);
break;
case 2:
displayMatrix(G);
break;
case 3:
displayIncidenceMatrix(G);
break;
default:
return 0;