2 / 2 / 0
Регистрация: 17.12.2017
Сообщений: 116
1

Шаблонные функции

10.05.2019, 13:07. Показов 548. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Помогите сделать в данном коде 2 задания:
1)Сделать тип элемента заданной структуры данных произвольный. Использовать шаблонные функции.
2)Использовать для хранения данных класс Standard Template Library (STL) или list или vector.
Заранее спасибо!
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
#include <iostream.h>
#include <stdlib.h>
#include <time.h>                 
class Mnogochlen
{               
int a[100], n;
public: void vvod();                
void vichisl();             
void slozh(Mnogochlen mA, Mnogochlen mB);                
void vichit(Mnogochlen mA, Mnogochlen mB);                
void umnozh(Mnogochlen mA, Mnogochlen mB);                
void vivod();                
};                 
void Mnogochlen::vvod()                
{
cout<<endl;
cout<<"vvedite stepen' mnogochlena: "; cin>>n;
//cout<<endl;
cout<<"vvedite koefficienti\n";
for (int k=0;k<=99;k++) {a[k]=0;}
for (int i=0;i<=n;i++) {cout<<" a"<<i<<" = "; cin>>a[i];}
//cout<<endl;           
}         
void Mnogochlen::vivod()               
{                
int f;                
f=0;
//cout<<endl;
for (int i=n;i>=0;i--)                
if (a[i]!=0)
{ if(f==0){if(i!=0)cout<<a[i]<<"*x^"<<i; else cout<<a[i];                 
f++;}                 
else {if(i!=0)
if(a[i]>0) cout<<"+"<<a[i]<<"*x^"<<i;
else cout<<a[i]<<"*x^"<<i;                
else
if(a[i]>0) cout<<"+"<<a[i];
else cout<<a[i];
f++;} }
if (f==0) {cout<<0;}
cout<<endl;                 
}          
void Mnogochlen::vichisl()                 
{
cout<<endl;                 
int x,v,vx;                
v=0;
cout<<"vvedite X: "; cin>>x;                
vx=1;
for (int i=0;i<=n;i++) { v=v+a[i]*vx; vx=vx*x;}
cout<<"f("<<x<<") = "<<v;
cout<<endl;                 
}                 
void Mnogochlen::slozh(Mnogochlen mA, Mnogochlen mB)                 
{
for (int k=0;k<=99;k++) {a[k]=0;}
if (mA.n>mB.n) n=mA.n; else n=mB.n;
for (int i=0;i<=n;i++) {a[i]=mA.a[i]+mB.a[i]; }                
}                
void Mnogochlen::vichit(Mnogochlen mA, Mnogochlen mB)                
{
for (int k=0;k<=99;k++) {a[k]=0;}
if (mA.n>mB.n) n=mA.n; else n=mB.n;
for (int i=0;i<=n;i++) {a[i]=mA.a[i]-mB.a[i]; }                
}                
void Mnogochlen::umnozh(Mnogochlen mA, Mnogochlen mB)                 
{
for (int k=0;k<=99;k++) {a[k]=0;}                 
n=mA.n+mB.n;
for (int i=0;i<=mA.n;i++) for (int j=0;j<=mB.n;j++) {a[i+j]=a[i+j]+mA.a[i]*mB.a[j]; }                 
}
int main()                
{               
Mnogochlen a,b,c;                
a.vvod();               
//a.vivod();                
//a.vichisl();                 
//a.vvod();                 
b.vvod();                 
c.umnozh(a,b);
cout<<"C(x) = ";
c.vivod();}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2019, 13:07
Ответы с готовыми решениями:

Шаблонные функции
Помогите, пожалуйста, реализовать шаблонную функцию, которая переставляет элементы в массиве

Шаблонные функции
Помогите, пожалуйста, реализовать шаблонную функцию определения, есть ли число в массиве

шаблонные функции
доброго времени суток уважаемые форумчане, помогите пожалуйста разобраться с шаблонными функциями,...

Шаблонные функции
Чет не получается написать шаблонную функцию. func.h template &lt;class T&gt; T strnstr (T str, T...

6
610 / 415 / 151
Регистрация: 11.01.2019
Сообщений: 1,746
10.05.2019, 14:27 2
Цитата Сообщение от Rina16 Посмотреть сообщение
1)Сделать тип элемента заданной структуры данных произвольный. Использовать шаблонные функции.
2)Использовать для хранения данных класс Standard Template Library (STL) или list или vector.
Тому, кто формулировал такое задание, надо реально подтягивать русский язык. Про С++ молчу...
0
2 / 2 / 0
Регистрация: 17.12.2017
Сообщений: 116
10.05.2019, 19:01  [ТС] 3
Так написано в методичке
0
610 / 415 / 151
Регистрация: 11.01.2019
Сообщений: 1,746
10.05.2019, 19:03 4
Цитата Сообщение от Rina16 Посмотреть сообщение
Так написано в методичке
Сожалею, но задание сформулировано некорректно. Точнее... оно вообще не сформулировано никак! Что нужно сделать? Определить свой класс? Или просто использовать вектор или список STL?
0
2 / 2 / 0
Регистрация: 17.12.2017
Сообщений: 116
10.05.2019, 19:21  [ТС] 5
jugu, Нужно сделать два варианта кода. В первом использовать шаблонные функции, а во втором шаблонный класс list.
0
2 / 2 / 0
Регистрация: 17.12.2017
Сообщений: 116
12.05.2019, 14:04  [ТС] 6
Пожалуйста
0
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
12.05.2019, 15:11 7
Rina16,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <vector>
#include <list>
 
template<class T>
struct X
{
    T value;
};
 
int main()
{
    std::vector<X<int>> a{ {5} };
    std::list<X<double>> b{ {2.3} };
}
1
12.05.2019, 15:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.05.2019, 15:11
Помогаю со студенческими работами здесь

Шаблонные функции в C++
Каждый раз когда вижу код, который должен быть простым и понятным, я понимаю его немного хуже. Вот...

Шаблонные функции
Такой код работает. #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;cstring&gt; using namespace...

Шаблонные функции
С помощью http://ru.wikipedia.org/wiki/Шаблоны_C%2B%2B пытался написать программу с шаблонной...

Шаблонные функции
1) Написать шаблонную функцию для нахождения минимального из трех передаваемых чисел (для чисел...


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

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

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