Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
1 / 1 / 0
Регистрация: 14.11.2013
Сообщений: 77
1

Классы Граф и Узел состоят в отношениях Агрегации. Реализовать поиск узла

20.10.2014, 20:56. Показов 2030. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Классы Граф и Узел состоят в отношениях Агрегации. Нужно выполнить такие функции.
включение в графу элемента со своими связями;
вывода графу на экран;
поиск элемента графа; Не могу правильно написать вот эту функцию. По сути нужно перебрать элемент, то есть Узлы. У меня не выходит, помогите пожалуйста.

C++ (Qt)
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
 
class Vuzol{     
      char el_name;
      public:
             Vuzol();
             Vuzol(char el_n){ el_name=el_n; }
             char GetName();
};
 
Vuzol::Vuzol()
{  
   cout << "Enter  Vuzol: ";
   cin  >> el_name;
}
 
char Vuzol::GetName()
{
        return el_name;
} 
                      
class Graph
{
      string name;
      int count;
      Vuzol *e_name;
      public:
             Graph(Vuzol _name);
             Graph(string n){name=n;}
             string GetNameGr();
             string ShowVuzols();
             void addVuzol(Vuzol newVuzol);
             void lookGraph();
             int C_Count();
};
Graph::Graph(Vuzol _name)
{
   cout << "Enter name Graph: ";
   cin  >> name;
   count = 0;
   e_name=new Vuzol[count];
   e_name[0] = _name;
   count++;
}
 
string Graph::GetNameGr()
{
     return name;
}
 
void Graph::addVuzol(Vuzol newVuzol)
{
    e_name[count]=newVuzol;
    count++;
}
 
void Graph::lookGraph()
{
    int a;
    cout<<"\nWhat vuzol you look for?";
    cin>>a;
     for(int i=0;i<count;i++)
        if (i==a)
            cout<<"\nYou graph name is "<<e_name<<"it's on the "<<i<<"place";
}
 
 
string Graph::ShowVuzols()
{
    cout << endl;
    string temp="";
    for(int i=0;i<count;i++)
    {
        temp=temp+e_name[i].GetName();
        temp=temp+" ";
    }
    return temp;
    
}  
 
int Graph::C_Count()
{
    return count;
}
 
 
int main()
{
    Vuzol a;
    Vuzol b;
    Vuzol c('c');
    
    Graph F1(a);
    F1.addVuzol(b);
    F1.addVuzol(c);
    
    cout << F1.GetNameGr() << ": " << F1.ShowVuzols();
    cout <<"\nKilkist Vuzliv: "<< F1.C_Count();
    
    F1.lookGraph();
 
    getch();
}
Попыталась нужную функцию сделать так:
Не правильно работает.. выдает не то название узла. Точнее, оно как-то неправильно отображается.

C++ (Qt)
1
2
3
4
5
6
7
8
9
void Graph::lookGraph()
{
    int a;
    cout<<"\nWhat vuzol you look for?";
    cin>>a;
     for(int i=0;i<count;i++)
        if (i==a)
            cout<<"\nYou graph name is "<<e_name<<"it's on the "<<i<<"place";
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2014, 20:56
Ответы с готовыми решениями:

В каких отношениях состоят JavaEE и Spring?
Хочу наметить себе план по самообучению. Чутье (а большим я на данный момент не располагаю),...

XPath - выбор узла по условию что его входящий узел имеет вложенный узел с определенным значением
Всем привет. В XSLT/XPath-е ничего не соображаю, поэтому дабы не ломать голову себе и вам над...

При проверке узла не удалось обнаружить узел Х. Проверьте имя узла и повторите попытку
Периодически пропадает интернет с ошибкой: &quot;При проверке узла не удалось обнаружить узел...

Граф, поиск "критического" узла (java)
критический - если мы его уберем, то любые 2 или больше узлов бутут разорваны (тоесть узел через...

2
378 / 375 / 213
Регистрация: 29.03.2013
Сообщений: 867
21.10.2014, 10:58 2
Лучший ответ Сообщение было отмечено AlexHolmes как решение

Решение

AlexHolmes, если я правильно всё понял, то метод будет выглядеть так:
C++
1
2
3
4
5
6
7
8
9
void Graph::lookGraph()
{
    int a;
    cout<<"\nWhat vuzol you look for?";
    cin>>a;
     for(int i=0;i<count;i++)
        if (i==a)
            cout<<"\nYou vuzol's name is "<<e_name[i].GetName()<<" it's on the "<<i<<" place";
}
1
1 / 1 / 0
Регистрация: 14.11.2013
Сообщений: 77
21.10.2014, 18:15  [ТС] 3
Спасибо)
0
21.10.2014, 18:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2014, 18:15
Помогаю со студенческими работами здесь

Деревья. Найти длину пути из узла a в узел b
дано бинарное дерево. найти длину пути из узла a в узел b.(если такой узел не существует то...

TreeView: отметить родительский узел после отметки дочернего узла
Подписался на событие: private void tvTest_AfterCheck(object sender, TreeViewEventArgs e) Как...

Алгоритма Дейкстры: нахождения расстояния от узла 1 в каждый узел графа
помогите с реализацией алгоритма Дейкстры для нахождения расстояния от узла 1 в каждый узел....

Реализовать граф от 1 до 10: граф связный; -число от 1 до 10, могут повторяться
Реализовать граф от 1 до 10: граф связный; -число от 1 до 10, могут повторяться. Добавить рандом...

Как реализовать один и тот же метод в разных классах при агрегации?
Даны два класса, в обоих используется метод Repaint(). Как должен быть выглядеть этот метод в...

Как в TreeView выделить узел, чтобы подсвеченным был не только сам текст узла, а полностью вся строка с узлом ?
Как в TreeView выделить узел, чтобы подсвеченным был не только сам текст узла(рис 1), а полностью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru