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

Нужно объединить две програмы в одну - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Прочитать txt и записать в другой txt файл http://www.cyberforum.ru/cpp-beginners/thread715492.html
Вот у меня например текстовый файл(Это 1 задание, осилил как-то), туда записан список студентов., мне нужно его прочитать (уже 2 задание)и записать в другой текстовый файл тот же список но уже с условием, выводить только 2 курс, и подсчетом суммы стипендии этих. Помогите написать пожалуйста!!! просто понятия не имею как. #include <iostream> #include <windows.h> #include <time.h> #include...
C++ Количество знаков табуляции Здравствуйте. У меня такой вопрос. Можно ли как-то регулировать количество знаков табуляции \t в зависимости от счетчика? к примеру при i = 1 будет одна табуляция, а при i = 5 пять http://www.cyberforum.ru/cpp-beginners/thread715487.html
C++ используя операторы описания и присваивания присвоить переменным
используя операторы описания и присваивания присвоить переменным определенных типов значения! целым-1, 12.9, 3 действительным-1.12,2.34,4.565 вывести на экран в виде целые затем следуют значения действительные затем следуют значения!
Возникла ошибка при использовании Enum C++
Вечер добрый. Реализую класс с датой и временем. И возникла проблема с месяцами. Решил создать отдельный тип для месяца: enum Months{January,February,March,April,May,June,July,August,September,October,November,December}; В классе Date как надо объявил Months getMon(); Далее создал метод, где наш месяц будет генерироваться Months Date::getMon() { Months a; int b;
C++ Почему программа компилируется но не работает? http://www.cyberforum.ru/cpp-beginners/thread715425.html
Заявки (телевизоры) поступают на проверку к 3 пунктам контроля . Если все контроллеры заняты , заявки встают в очередь . Если заявка пребывает в очереди больше 35 минут , она не обслуживается. 8-1.h #include<cstdio> #include<cstdlib> #include<ctime> using namespace std; #include "List.h" //подключение файла с описанием шаблона списка int brak=0; //счетчик случаев...
C++ Работа с структурами #include <cstdlib> #include <iostream> using namespace std; struct struc{ char* a; int x; } подробнее

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

Нужно объединить две програмы в одну - C++

01.12.2012, 19:50. Просмотров 253. Ответов 0
Метки (Все метки)

ребят помогите объеденить эти две программы в одну...чтоб получилось толковая прогрмамма!
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#include <iostream>
#include <Windows.h>
#include <string>
 
class Translator
{
private:
    struct Node
    {
        Node(std::string const& rus, std::string const& eng) :
            pl(0), pr(0), rus_(rus), eng_(eng){}
        Node* Insert(std::string const& rus, std::string const& eng)
        {
            Node* pret = 0;
            if(rus < rus_)
            {
                if(!pl)
                {
                    pl = new Node(rus, eng);
                    pret = pl;
                }
                else
                {
                    pret = pl->Insert(rus, eng);
                }
            }
            else if(rus > rus_)
            {
                if(!pr)
                {
                    pr = new Node(rus, eng);
                    pret = pr;
                }
                else
                {
                    pret = pr->Insert(rus, eng);
                }
            }
            return pret;
        }
        std::string GetEng(std::string const& rus)
        {
            std::string sret;
            if(rus == rus_)
                sret = eng_;
            else if(rus < rus_)
            {
                if(pl)
                    sret = pl->GetEng(rus);
            }
            else
            {
                if(pr)
                    sret = pr->GetEng(rus);
            }
            return sret;
        }
        void Cleanup()
        {
            if(pl)
            {
                pl->Cleanup();
                pl = 0;
            }
            if(pr)
            {
                pr->Cleanup();
                pr = 0;
            }
            delete this;
        }
        std::string rus_, eng_;
        Node* pl, *pr;
    };
public:
    Translator() : p_(0){}
    Node* Insert(std::string const& s1, std::string const& s2)
    {
        Node* pret = 0;
        if((s1[0] > 0 && s2[0] < 0) || (s1[0] < 0 && s2[0] > 0))
        {
            std::string const& rus(s1[0] < 0 ? s1 : s2);
            std::string const& eng(s1[0] > 0 ? s1 : s2);
            if(!p_)
            {
                p_ = new Node(rus, eng);
                pret = p_;
            }
            else
            {
                pret = p_->Insert(rus, eng);
            }
        }
        return pret;
    }
    std::string GetEng(std::string const& rus) const
    {
        std::string sret;
        if(p_)
        {
            sret = p_->GetEng(rus);
        }
        return sret;
    }
    void Cleanup()
    {
        if(p_)
        {
            p_->Cleanup();
            p_ = 0;
        }
    }
private:
    Node* p_;
    Translator(Translator const&);
    Translator& operator=(Translator);
};
 
int main()
{
    SetConsoleOutputCP(1251);
    Translator d;
    d.Insert("красный", "red");
    d.Insert("black", "чёрный");
    d.Insert("зелёный", "green");
    d.Insert("white", "белый");
    std::cout << d.GetEng("красный") << std::endl;
    std::cout << d.GetEng("чёрный") << std::endl;
    std::cout << d.GetEng("серый") << std::endl;
    std::cout << d.GetEng("красный") << std::endl;
    std::cout << d.GetEng("зелёный") << std::endl;
    d.Cleanup();
    system("pause");
    return 0;
}
и вот вторая...
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#include <iostream>
using namespace std;
struct node
{
    int Key;
    int Count;
    node *Left;
    node *Right;
};
 
class TREE
{ 
private:
    node *Tree; //Указатель на корень дерева.
    void Search (int,node**);
public:
    TREE() 
    {
        Tree=NULL;
    }
    node** GetTree () 
    {
        return &Tree;
    } //Получение вершины дерева.
    void BuildTree ();
    void CleanTree (node **);
    void ObhodEnd (node **);
    void ObhodLeft (node **);
    void ObhodBack (node **);
    void Vyvod (node**,int);
    int Height (node**);
};
int main ()
{ 
    TREE A;
    A.BuildTree ();
    cout<<"\nVyvod Dereva:\n";
    A.Vyvod (A.GetTree(),0);
    cout<<"\nVysota dereva:"<<A.Height(A.GetTree())<<endl;
    cout<<"\nLevostoronnyi obhod dereva: ";
    A.ObhodLeft (A.GetTree());
    cout<<"\nKonsevoy obhod dereva: "; A.ObhodEnd (A.GetTree());
    cout<<"\nObratniy obhod dereva: "; A.ObhodBack (A.GetTree());
    A.CleanTree (A.GetTree());
    system("pause");
    return 0;
}
void TREE::BuildTree ()
{
    int el;
    cout<<"Vvedite slovo ...\n";
    cin>>el;
    while (el!=0)
    {
        Search (el,&Tree); cin>>el;
    }
}
void TREE::Search (int x,node **p)
{
    if (*p==NULL)
    {
        *p = new(node);
        (**p).Key = x; (**p).Count = 1;
        (**p).Left = NULL; (**p).Right = NULL; 
    }
    else
        if (x<(**p).Key) Search (x,&((**p).Left));
        else
            if (x>(**p).Key) Search (x,&((**p).Right));
            else (**p).Count = (**p).Count + 1;
}
void TREE::ObhodLeft (node **w)
{
    if (*w!=NULL)
    {
        cout<<(**w).Key<<" ";
        ObhodLeft (&((**w).Left));
        ObhodLeft (&((**w).Right));
    }
}
void TREE::ObhodEnd (node **w)
    //Концевой обход дерева.
    //*w - указатель на корень дерева.
{
    if (*w!=NULL)
    {
        ObhodEnd (&((**w).Left));
        ObhodEnd (&((**w).Right));
        cout<<(**w).Key<<" ";
    }
}
void TREE::ObhodBack (node **w)
    //Обратный обход дерева.
    //*w - указатель на корень дерева.
{ 
    if (*w!=NULL)
    { 
        ObhodBack (&((**w).Left));
        cout<<(**w).Key<<" ";
        ObhodBack (&((**w).Right));
    }
}
void TREE::CleanTree (node **w)
    //Очистка дерева.
    //*w - указатель на корень дерева.
{ 
    if (*w!=NULL)
    { 
        CleanTree (&((**w).Left));
        CleanTree (&((**w).Right));
        delete *w;
    }
}
void TREE::Vyvod (node **w,int l)
    //Изображение дерева *w на экране дисплея
    // (рекурсивный алгоритм).
    //*w - указатель на корень дерева.
{ 
    int i;
    if (*w!=NULL)
    { 
        Vyvod (&((**w).Right),l+1);
        for (i=1; i<=l; i++) cout<<" ";
        cout<<(**w).Key<<endl;
        Vyvod (&((**w).Left),l+1); 
    }
}
int TREE::Height (node **w)
    //Определение высоты бинарного дерева.
    //*w - указатель на корень дерева.
{ 
    int h1,h2;
    if (*w==NULL) return (-1);
    else
    {
        h1 = Height (&((**w).Left));
        h2 = Height (&((**w).Right));
        if (h1>h2) return (1 + h1);
        else return (1 + h2);
    }
}
Добавлено через 8 минут
и помогите пожалуйста!!где в программе будут входящие и исходящие данные???
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru