Форум программистов, компьютерный форум CyberForum.ru

Теорие графов. Композиция двух неор. графов. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строка. Ошибка С2228. http://www.cyberforum.ru/cpp-beginners/thread570538.html
Выдает ошибку left of '.copy' must have class/struct/union type left of '.erase' must have class/struct/union type #include <iostream> #include <string> using namespace std; int main() {
C++ C++ работает с Word & Excel Дело в том что мне на завтра надо написать программку которая записывает 2-мерный массив чисел в Word и Excel. Количество элементов читаются с текст-боксов, а числа заполняются рандомом. При нажатии на 1 кнопку создается таблица n*m в Word, и заполняется значениями с массива, при нажатии на кнопку 2, тоже самое только в Excel. Нашел пример работы на С#. Как переделать под свою тему и под С++... http://www.cyberforum.ru/cpp-beginners/thread570535.html
C++ Заполнить массив
Помогите... Заполнить массив: а) десятью первыми членами арифметической прогрессии (первый член прогрессии — а, ее разность — р); б) двадцатью первыми членами геометрической прогрессии (первый член прогрессии — а, ее знаменатель — z); в) двенадцатью первыми членами последовательности Фибоначчи (последовательности, в которой первые два члена равны 1, а каждый следующий равен сумме двух...
C++ Дан массив A размера N и целое число
Дан массив A размера N и целое число K (1 ≤ K ≤ N). Вывести элементы массива с порядковыми номерами, кратными K:{A}_{K},{A}_{2*K},{A}_{3*K},... .
C++ Как поменять фон там цвет символов в проге?? На Bilder C++. http://www.cyberforum.ru/cpp-beginners/thread570521.html
#include<iostream.h> #include<stdio.h> #include<conio.h> #include<stdlib.h> int n,i,j; int k, j1; float S, b, x, A1,A; void vvod() {
C++ В чём С++ уступает билдеру? Я пока только начал учить С++ и обнаружил для себя билдер. Т.к. раньше работал на делфи то билдер то более привычный для меня. Забавы ради написал простенькую программу с выводом в мемо счётчика, посмотрел размер откомпилированного приложения- всего 48 кб (а у делфи 6 мб пустая форма) и задался вопросом: имеет ли смысл всё же кодить на билдере или стоит всё же забыть эту идею? Есть ли... подробнее

Показать сообщение отдельно
Nikolay_it
5 / 5 / 0
Регистрация: 08.05.2012
Сообщений: 15
10.05.2012, 19:13     Теорие графов. Композиция двух неор. графов.
Здравствуйте. Прошу помощи уже здесь :| (old topic)...
Прошу помочь с составлением алгоритма "Композиции двух неориентированных графов".
Ниже код программы, для работы с графом.
Используется структура данных "список смежности".
Считывание графа происходит из файла.
Файл выглядит следующим образом:
"
3//размер графа
1 2
2 1 3
3 2
"
Графическое изображение графа прикреплено к сообщению.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
//---------------------------------------------------------------------------
 
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <vector>
#include <algorithm>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
using namespace std;
 
struct adj_list {
      int size;
      int *list;
   } ;
 
struct graph {
      int size;
      adj_list *lists;
   } ;
 
void sample(char*, int);                                                        // ?
graph *loadGraph(char*);                                                        // +
void deleteGraph(graph*, int);                                                  // +
void printGraph(graph*, int);                                                   // +
 
int main(int argc, char* argv[])
{
    sample("graph1.txt", 1);
    sample("graph2.txt", 2);
    getch();
    return 0;
}
//---------------------------------------------------------------------------
 
void sample(char f_name[], int f_no)
{
   graph *g = loadGraph(f_name);
   if(g!=NULL)
   {
      cout << "Case " << f_no << ":\nGraph:\n" << endl;
      printGraph(g, g->size);
 
 
 
 
      deleteGraph(g, g->size);
   }
   else cout << "Case " << f_no << " error." << endl;
   return ;
}
 
graph *loadGraph(char f_name[])
{
  FILE *g_file;
  g_file = fopen(f_name, "rt");
     if(g_file == NULL) {
     cout << "Error" << endl;
     return NULL;
     }
     else
     {
        graph *s_graph = new graph;
        fscanf(g_file, "%d", &s_graph->size);
        s_graph->lists = new adj_list[s_graph->size];
        int i = 0, j;
        while(i<s_graph->size)
        {
          fscanf(g_file, "%d", &s_graph->lists[i].size);
          s_graph->lists[i].list = new int[s_graph->lists[i].size];
             for(j=0; j<s_graph->lists[i].size; j++)
                fscanf(g_file, "%d", &s_graph->lists[i].list[j]);
          i++;
        }
       return s_graph;
     }
}
 
void deleteGraph(graph *g, int size)
{
      int i;
      for(i=0; i<size; i++)
      delete []g->lists[i].list;
      delete []g->lists;
      delete g;
      return ;
}
 
void printGraph(graph *g, int co)
{
    if(g!=NULL)
       {
           //cout << "--------------------------------\nGraph:" << endl;
           int i, k;
           for(i=0; i<co; i++)
              {
                  cout << i+1 << ":";
                  for(k=0; k<g->lists[i].size; k++)
                     cout << " " << g->lists[i].list[k];
                  cout << endl;
              }
           cout << "--------------------------------" << endl;
       }
}
Если же вы не желаете помогать просто так, то возможно сможем договориться за отдельную плату...
Изображения
 
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru