![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Квин |
![]()
Сообщение
#1
|
Гость ![]() |
Здравствуйте.
Прошу помочь с выполнением такой вот задачи на Си, комилятор visual C. Дан файл в котором указаны пары вершин графов, связанных между собой 1. заполнить из этого файла двумерный массив ширины n на n, где n - это количество вершин, заполнить так, что если между вершинами есть связь, то в массив на соответствующем пересечении ставим 1, если нет, то ноль. Вот эот массив вывести. 2. построить дерево, по полученному дереву указать все возможные пути в этом графе. По первому у меня что-то есть, а вот по второму вообще не знаю как и что делать. Очень прошу помочь. |
![]() ![]() |
Гость |
![]()
Сообщение
#2
|
Гость ![]() |
Код #include <stdio.h> #include <stdlib.h> #include <string.h> #include "filework.h" int *mkarray(int n) { int i,g; int *mas; mas=(int*)malloc(sizeof(int)*n*n); for(i=0;i<n;i++) { for(g=0;g<n;g++) { mas[i*n+g]=0; } } return mas; }; int* readfile(int *n) { int s1, s2; int *mas; FILE *stream; if( (stream = fopen( "c:/input.txt", "r" )) != NULL ) { fscanf(stream,"%d",n); mas=mkarray(*n); while(!feof(stream)) { fscanf(stream,"%d %d", &s1, &s2); mas[s1* *n+s2]=1; mas[s1+s2* *n]=1; } fclose(stream); } return mas; }; _____________________________________ #include <stdio.h> #include <ctype.h> #include <stdlib.h> #include "filework.h" int main() { int *p; int i,g,n; p=readfile(&n); for(i=0;i<n;i++) { for(g=0;g<n;g++) { printf("%d ",p[i*n+g]); } printf("\n"); } return 0; } вот что есть, и что мне позволили знания,а оставшуюсь вторую часть я совсем осилить не могу, а дело очень горит. помогите плиз... На счёт вывести дерево, то я не знаю - если это необходимо для решения то наверное, а если нет то на выход вообще то только все пути какие в этом дереве есть. Про граф ничего не сказано, даже мне кажется граф тут употреблено длясловца, т.е. просто задаётся папарное соединение вершин дерева, по этому построить само дерево, а потом вывести все пути возможные в этом дереве - никаких условий специфичных характерных для гарфов, ничего такого нет. |
![]() ![]() |
![]() |
Текстовая версия | 19.07.2025 1:42 |