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

Центр орграфа, классы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Очередь на основе статического массива http://www.cyberforum.ru/cpp-beginners/thread625814.html
в очередь с экрана вводятся строки,когда вводится строка end,элементы извлекаются из очереди и записываются в файл. xD.h #include <conio.h> #include <string.h> #include <iostream> class xD {public: int n;
C++ Вывод среднего арифметического в массиве Напишите программу, печатающую на экране среднее арифметическое элементов заданного массива вещественных чисел. На форуме вроде не нашел:) P.S. Если можно, попроще:) http://www.cyberforum.ru/cpp-beginners/thread625813.html
C++ Удалить одинаковые элементы массива
Создать массив из 20 элементов, из массива удалить одинаковые элементы массива и вывести на экран
C++ Блокирование файла
Приветствую, знатоки! У меня такой вопрос: есть два процесса (аналогичные) по записи в файл данных (типа int). Для того чтобы они не мешали друг другу я блокирую файл при работе одного из процессов. Однако, если файл уже существует, то все проходит нормально и сперва записывает один процесс, потом другой. Если файл не существует а при CreateProcess у меня стоит OPEN_ALWAYS, то блокировка не...
C++ Вывести на экран все символы строки кроме букв http://www.cyberforum.ru/cpp-beginners/thread625803.html
дана строка вывести на экран символы кроме букв
C++ Вывести значение выражения Напишите программу, выводящую на экран значение выражения y=\prod_{k=1}^{a}{k}^{b} Целые положительные числа a,b ввести с клавиатуры. подробнее

Показать сообщение отдельно
DREADREAD
0 / 0 / 0
Регистрация: 14.05.2012
Сообщений: 12

Центр орграфа, классы - C++

19.07.2012, 11:09. Просмотров 916. Ответов 7
Метки (Все метки)

помогите с конструктором и деструктором)
Дан файл, первой строкой в файле является размерность матрицы, остальное является самой матрицей.
Считать в буфер размерность и матрицу из файла, и найти центр орграфа(матрица смежностей задана весами дуг).
ну и если есть идеи, мож как по проще сделать)
================================================================================
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
#include <conio.h>
#include <iostream>
#include <fstream>
#include <locale.h>
using namespace std;
class Graph
{
      int n;
      public:
             void Read(void);
             Graph();
             ~Graph();
 
}g;
Graph::Graph()
{
int d[n];
}
 
Graph::~Graph()
{
int d;int i;        
for (i=0;i<n*n;i++)
delete d[i];
}
              
int Graph::Read() //fstream.h
{
     int max[255];
     int min=0;
     int k=0;
     int b=0;
     char r[255];
     FILE *graph;
     if(graph=fopen("Graph.txt","r"))
     else {cout<<"ГЋГёГЁГЎГЄГ* Г·ГІГҐГ*ГЁГї"<<endl;return 0;}
     fsscanf(graph,"%d",r[0]);
     if (r[0])n=r[0]-48;//Ñ÷èòûâГ*ГҐГ¬ êîëè÷åñòâî ñòðîê ГЁ ñòîëáöîâ
     else {cout<<"Г”Г*éë ïóñòîé"<<endl;return 0;}
     int **d = new int*[n];//ÄèГ*Г*ìè÷åñêè âûäåëÿåì ГЇГ*ìÿòü ГіГЄГ*Г§Г*òåëü->ГіГЄГ*Г§Г*òåëü(äëÿ Г¬Г*òðèöû)
     for(int i=0; i<n; i++)
     d[i] = new int[n];//Âûäåëèëè ÀÒËÈ××ÍÀ
     
     for(int i=0;i<n;i++)
     for(int j=0;j<n;j++)
     {
             fscanf(graph,"%d",&d[i][j];//Ñ÷èòûâГ*ГҐГ¬ Г¬Г*òðèöó Гў ГЎГіГґГҐГ°
     }
     graph.close("Graph.txt");
     for(i=0;i<n;i++)
     for(j=0;j<n;j++)
     for(l=0;l<n;l++)
     if ((d[i][l]>d[i][j]+d[j][l]||d[i][l]<0)&&d[i][j]>=0&&d[j][l]>=0)
     d[i][l]=d[i][j]+d[j][l];//Àëãîðèòì ôëîéäГ* äëÿ Г*Г*õîæäåГ*ГЁГї ГЄГ°Г*ГІГ·Г*éøèõ ГЇГіГІГҐГ© Гµ_Гµ
     for(j=0;j<n;j++)//ÏÎëó÷èëè âåðøèГ*Г» Г± Г¬Г*ГЄГ±ГЁГ¬Г*ëüГ*ûì ГЅ., Г*Г*õîäèì ìèГ*ГЁГ¬Г*ëüГ*ГіГѕ ГЁГ§ Г*ГЁГµ, Г®Г*Г* ГЁ áóäåò ÿâëÿòñÿ öåГ*òðîì îðãðГ*ГґГ*
     for(i=0;i<n;i++)
     {
      p++;
         if(d[i][j]>max[b])      max[b]=d[i][j];
         if(p==n)                {b++;p=0;}
     }
     for(int i=0;i<b;i++)
     if(max[b]<min)
     min=max[b];
     cout<<"Г–ГҐГ*ГІГ° îðãðГ*ГґГ* >"<<min<<endl;
}
     
 
//==========================================ГЊГҐГ*Гѕ=======================================//
int main(void)
{
    setlocale(LC_ALL,"rus");
    int key = 0;
    do {
        cout<<"1-Read\n esp for exit"<<endl;
        key = getch();
        switch (key)
        {     
               case 49: g.Read;break;
               
        }}
        while (key!=27);
        
        return 0;
}
//=====================================================================================//
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru