Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
2 / 2 / 0
Регистрация: 17.12.2017
Сообщений: 116
1

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

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


Здравствуйте! Помогите сделать в данном коде 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...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
Записывайтесь на профессиональные курсы C++ разработчиков
6
576 / 387 / 145
Регистрация: 11.01.2019
Сообщений: 1,627
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
576 / 387 / 145
Регистрация: 11.01.2019
Сообщений: 1,627
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
3984 / 2251 / 936
Регистрация: 07.02.2019
Сообщений: 5,911
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
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® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.