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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AVeeBeaT
1098 / 12 / 0
Регистрация: 24.12.2009
Сообщений: 18
#1

Сделать шаблон - C++

21.06.2010, 08:47. Просмотров 283. Ответов 1
Метки нет (Все метки)

Здравствуйте имееться вот такая задача:
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
142
143
144
145
146
147
148
149
#include <iostream>
#include <windows.h>
using namespace std;
class Node
{
public:
int number, number2;
Node* next;
};
 
void russia(const char*);
 
int main(void)
{
        Node* head = NULL;
        Node* lastPtr = NULL;
        short action = -1;
        while (1)
        {
                russia("1. Добавить элементы в списки\n");
                russia("2. Просмотр элементов списков\n");
                russia("3. Сравнить элементы списков\n");
                russia("4. Удалить элементы списков\n");
                russia("0. Выход\n\n");
                russia("Выберете один из пунктов: ");
                cin>>action;
                if (action == 0)
                {
                        system("CLS");
                        break;
                }
 
                if (action == 1)
                {
                        system("CLS");
                        Node* ptr = new Node;
                        int numb = -1;
                        russia("Введите List1: ");
                        cin>>numb;
                        ptr->number = numb;
                        int numb2 = -1;
                        russia("Введите List2: ");
                        cin>>numb2;
                        ptr->number2 = numb2;
                        ptr->next = NULL;
                        if (head == 0)
                        {
                                head = ptr;
                                lastPtr = ptr;
                                system("CLS");
                                continue;
                        }
                        lastPtr->next = ptr;
                        lastPtr = ptr;
                        system("CLS");
                        continue;
                }
 
                if (action == 2)
                {
                        Node* ptr = NULL;
                        system("CLS");
                        if (head == NULL)
                        {
                                russia("\tСПИСОК ПУСТ\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        russia("СПИСОК\n\n");
                        ptr = head;
                        while (1)
                        {
                                cout<<"List1: "<<ptr->number<<" ";
                                cout<<"\n";
                                cout<<"List2: "<<ptr->number2<<" ";
                                if (ptr->next == 0)
                                        break;
                                ptr = ptr->next;
                        }
                        cout<<"\n\n";
                        system("PAUSE");
                        system("CLS");
                        continue;
                }
                
                if (action == 3)
                {
                        Node* ptr = NULL;
                        system("CLS");
                        if (head == NULL)
                        {
                                russia("\СПИСОК ПУСТ\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        russia("СПИСОК\n\n");
                        ptr = head;
                        while (1)
                        {
                                cout<<"List1: "<<ptr->number<<" ";
                                cout<<"\n";
                                cout<<"List2: "<<ptr->number2<<" ";
                                if (ptr->number == ptr->number2)
                                {russia("\t\n\СПИСКИ РАВНЫ\n");}
                                if (ptr->number != ptr->number2)
                                {russia("\t\n\СПИСКИ НЕ РАВНЫ\n");}
                                if (ptr->next == 0)
                                break;
                                ptr = ptr->next;
                        }
                        cout<<"\n";
                        system("PAUSE");
                        system("CLS");
                        continue;
                }
 
                if (action == 4)
                {
                        system("CLS");
                        Node* ptrDelete = NULL;                 
                        if (head == NULL)
                        {
                                russia("\tСПИСОК ПУСТ\n\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        if (head->next == NULL)
                        {
                                head = NULL;
                                delete head;
                                continue;
                        }
                        ptrDelete = head;
                        head = ptrDelete->next;
                        delete ptrDelete;
                        continue;
                }               
        }       
}
 
void russia(const char* rus)
{
        char word[100];
        CharToOem(rus, word);
        cout<<word;
}
Помогите пожалуйста сделать шаблон к данной задачи!!! Заранее спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2010, 08:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сделать шаблон (C++):

Можно ли сделать шаблон? - C++
есть две функции A(){} и B(){}, использующие в себе третью C(){}. Эта третья содержит в себе if (a&lt;b) {...} вот в A нужно иметь a&lt;b, а...

Сделать свой шаблон вектора - C++
надо сделать шаблон вектора,посмотрите то что сделал это правильно? и еще вопрос,можете помочь сделать итератор,а то что то вообще не...

Как правильно сделать шаблон класса complex - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using std::cout; using std::cin; using std::endl; namespace Algebra ...

Как сделать один шаблон для разных типов - C++
Предположим я реализую некоторый шаблонный класс, в котором, ну ради примера к объектам шаблонного типа (тип, используемый в заголовке...

Как сделать шаблон на считывание неизвестного типа данных? - C++
Есть размерности двумерного массива. Нужно считать с клавиатуры числа. Они могут быть как int, так и float или double. Как это сделать? ...

Как сделать шаблон функции другом шаблона класса? - C++
С обычной функцией понятно: template&lt;class T&gt; class A { friend void f(); } А вот если функция f шаблонная, то указать ее...

1
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
21.06.2010, 10:47 #2
C++
1
2
3
4
5
6
7
template <typename T>
class Node
{
public:
T number, number2;
Node* next;
};
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
int main(void)
{
        Node<int>* head = NULL;
        Node<int>* lastPtr = NULL;
        short action = -1;
        while (1)
        {
                russia("1. Добавить элементы в списки\n");
                russia("2. Просмотр элементов списков\n");
                russia("3. Сравнить элементы списков\n");
                russia("4. Удалить элементы списков\n");
                russia("0. Выход\n\n");
                russia("Выберете один из пунктов: ");
                cin>>action;
                if (action == 0)
                {
                        system("CLS");
                        break;
                }
 
                if (action == 1)
                {
                        system("CLS");
                        Node<int>* ptr = new Node<int>;
                        int numb = -1;
                        russia("Введите List1: ");
                        cin>>numb;
                        ptr->number = numb;
                        int numb2 = -1;
                        russia("Введите List2: ");
                        cin>>numb2;
                        ptr->number2 = numb2;
                        ptr->next = NULL;
                        if (head == 0)
                        {
                                head = ptr;
                                lastPtr = ptr;
                                system("CLS");
                                continue;
                        }
                        lastPtr->next = ptr;
                        lastPtr = ptr;
                        system("CLS");
                        continue;
                }
 
                if (action == 2)
                {
                        Node<int>* ptr = NULL;
                        system("CLS");
                        if (head == NULL)
                        {
                                russia("\tСПИСОК ПУСТ\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        russia("СПИСОК\n\n");
                        ptr = head;
                        while (1)
                        {
                                cout<<"List1: "<<ptr->number<<" ";
                                cout<<"\n";
                                cout<<"List2: "<<ptr->number2<<" ";
                                if (ptr->next == 0)
                                        break;
                                ptr = ptr->next;
                        }
                        cout<<"\n\n";
                        system("PAUSE");
                        system("CLS");
                        continue;
                }
                
                if (action == 3)
                {
                        Node<int>* ptr = NULL;
                        system("CLS");
                        if (head == NULL)
                        {
                                russia("\СПИСОК ПУСТ\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        russia("СПИСОК\n\n");
                        ptr = head;
                        while (1)
                        {
                                cout<<"List1: "<<ptr->number<<" ";
                                cout<<"\n";
                                cout<<"List2: "<<ptr->number2<<" ";
                                if (ptr->number == ptr->number2)
                                {russia("\t\n\СПИСКИ РАВНЫ\n");}
                                if (ptr->number != ptr->number2)
                                {russia("\t\n\СПИСКИ НЕ РАВНЫ\n");}
                                if (ptr->next == 0)
                                break;
                                ptr = ptr->next;
                        }
                        cout<<"\n";
                        system("PAUSE");
                        system("CLS");
                        continue;
                }
 
                if (action == 4)
                {
                        system("CLS");
                        Node<int>* ptrDelete = NULL;
                        if (head == NULL)
                        {
                                russia("\tСПИСОК ПУСТ\n\n");
                                system("PAUSE");
                                system("CLS");
                                continue;
                        }
                        if (head->next == NULL)
                        {
                                head = NULL;
                                delete head;
                                continue;
                        }
                        ptrDelete = head;
                        head = ptrDelete->next;
                        delete ptrDelete;
                        continue;
                }               
        }       
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.06.2010, 10:47
Привет! Вот еще темы с ответами:

Как сделать шаблон, с параметром-классом - потомком определённого класса? - C++
Хочется сделать шаблон с параметром-классом, который обязан реализовывать определённый интерфейс. class IService { public: ...

Можно ли сделать шаблон функции только для определенных типов? - C++
Например template&lt;typename T&gt; void func(T x){} Где T может быть только int,double и float

Написать шаблон класса очередь, и сделать к типу char спецификацию - C++
по заданию, нужно написать шаблон класса очередь, и сделать к типу char спецификацию, вот тут сообственно и начинаются проблемы, сам шаблон...

Как сделать шаблон функции для определения максимального расстояния между элементами - C++
Написать программу которая использует шаблон функции для определения максимального расстояния между элементами в наборе в 5 элементов....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru